今天给开始大家介绍《W5200E01-M3 远程固件更新教程》的相关内容,教您一步一步实现便捷更新。
首先,先让大家了解一下W5200E01-M3. W5200E01-M3 是WIZnet公司出产的一款开发板, 用于W5200芯片的测试和原型开发,可实现各种以太网应用程序。W5200E01-M3内嵌W5200芯片--高速SPI以太网控制芯片,具有全硬件TCP/IP协议栈。并采用STM32 MCU。操作便捷。功耗低。应用广泛。
对于拥有全硬件TCP/IP协议栈的WIZnet芯片。远程的固件更新 更带来了便捷。
1.1 在线编程技术简介
那么以往在烧写芯片时,往往需要将芯片从系统中取出,离开电路后,才能用编程器烧写程序。也就是说芯片不能脱离系统而进行写入。
现在介绍两种在线编程技术——ISP和IAP,支持在线烧写。芯片不需要从电路板上取下,不离开系统,甚至不离开应用,就可以完成固件程序的写入。这两种技术有效避免了调试时由于频繁的插入取出芯片对芯片和电路板带来的不便和损伤,同时也节省了大量时间和金钱上的开销。因此,ISP和IAP技术将是未来嵌入式编程的主要发展方向。
- ISP(In-System Programming)
“在系统可编程”,即逻辑器件不用脱离系统,就可以进行程序写入。
ISP实现起来相对容易,通常的做法是利用上位机软件通过串口来改写单片机的内部存储器。条件是单片机需要具备非易失性存储器,用来存储由上位机传来的程序和数据。实现ISP的硬件接口支持JTAG、串口、无线等等。该接口通常固化在单片机所在的电路板上,芯片烧写时无需返厂或技术人员亲临现场,用户只需要通过计算机上的RS232接口或者USB接口就可以自行改写程序。
- IAP(In-Application Programming)
“在应用可编程”,即逻辑器件不用脱离应用,就可以进行程序写入。
IAP实现起来相对要复杂一些,单片机内部需要有两个存储区,一块被称为BOOT区,一块被称为APP区。单片机上电后,首先运行在BOOT区,如果满足改写程序的条件时,则对APP区的程序进行改写操作,程序改写完成后,单片机重新启动;如果不满足改写程序的条件时,程序指针直接跳转到APP区,开始执行存放在APP区的程序。实现IAP的硬件接口支持串口、无线、网口等等。由于网口的原因,一方面工作人员可以不用亲临现场即可实现固件的远程更新,另一方面,可以通过以太网的广播、组播数据包实现多个用户的同时全部更新,节省人力物力资源。
1.2 系统说明
在W5200E01-M3中,通过ISP的方式来烧写BOOT程序。之后由BOOT程序远程更新APP程序时,采用的是IAP方式。
在W5300E01-M3中,单片机使用的是STM32F103CB。该单片机有128KB的FLASH存储空间,可以将固件程序存储在该存储器中。在我们的程序中,实际上是将FLASH存储器映射为两个存储区,其中BOOT区映射地址是从0x0800 0000到0x0800 4FFF,合计20KB;APP区映射地址是从0x0800 5000到0x0801 FFFF,合计108KB。详细内容请参考第二章boot.bin程序说明和第三章app.bin程序说明中的具体介绍。
上位机程序Nuri.exe的主要作用是为用户提供图形界面,使得用户可以通过远程的方式利用以太网UDP广播更新固件程序。上位机程序的工作原理请参考第四章上位机程序说明。上位机程序的具体使用方法请参考第五章操作方法。
下次给大家讲解 boot.bin程序说明 的内容。期待您继续关注!
更多信息请关注:
WIZnet中文官方网站:http://www.iwiznet.cn/
WIZnet企业官方微博:http://e.weibo.com/wiznet2012/