W5200-W5500程序移植教程

Home / 博客 / W5200-W5500程序移植教程

说明,移植例程为我按照这个教程移植的例程,测试通过。工程模板为我经常使用的一个w5500模板,可以在里面直接添加文件编程。

  1. 将driver文件夹中W5500文件夹和所有.c文件复制到工程/source文件夹下,并覆盖原来的文件,删除W5200文件夹

程序移植1

2. 将driver/include文件夹中W5500文件夹和所有.h头文件复制到工程/include文件夹下,并覆盖原来的文件,删除W5200文件夹

程序移植2

3. 打开原来工程文件,删除工程目录/W5200下md5,socket,SPI2,w5200四个文件,在此目录下添加刚拷贝的source/W5500中对应的四个文件。

删除工程目录下util文件,在此目录下添加source中的at24c16.c, device.c, mcu_init.c, socketutil.c, util.c文件,其他的dhcp和dns文件如有需要自行添加。

程序移植3

4. 在IAR环境下打开main.c文件,使用工作栏(IAR上方)中Edit->Find and Replace->Replace进行字符更换,先将w5200替换为w5500,点击replace all即可,再将W5200替换为W5500。如果其他文件中有引用原来w5200.h,请自行查找替换,这里只是举例。

程序移植4

5. 打开main.c文件,如果在原来文件中有定义mac、gateway、ip、subnet的地址,可以删去,在新的驱动的device.c中的Set_default函数中集中做了定义,以前的可以删去。

6. 打开main.c文件,删去原来定义的GPIO、NVIC、RCC配置函数,在新的驱动的mcu_init.c中已经集中做了定义,可直接引用。

7. 在main()函数中,添加Systick_Iinit(72);函数,新驱动中延时使用systick计时,这里要做初始化配置,否则delay的相关函数不能使用。

程序移植5

8. 在main.c中,在函数WIZ_Config()中调用Set_default();函数,对W5500的ip等信息进行定义。

程序移植6

9. 在原来w5200的驱动中send()函数比现在的驱动多一个形参,所以在程序调用send函数的地方,去掉最后一个形参。

10. 至此驱动移植完成,请rebuild工程,如果有错误,不会是底层的问题了,请根据程序做相应声明修改就可以了。

By  Allen

程序参考: