OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 13364|回复: 7
打印 上一主题 下一主题

STM32RDT6上移植W5500+FreeRTOS成功

[复制链接]

47

主题

197

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1165
金钱
1165
注册时间
2016-3-25
在线时间
378 小时
跳转到指定楼层
楼主
发表于 2018-2-28 19:58:09 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 Mr.liu 于 2018-2-28 19:53 编辑


      最近对FreeRTOS及TCP/IP这块很感兴趣。让自己的开发板连接互联网是一种很有趣的事情,我想加上花生壳一起玩,是不是会更爽?

     今天把前面移植的FreeRTOS和W5500例程集成到一起。新建了一个任务:InterNetServer_task。这样,两个LED闪烁任务,加上InterNetServer_task任务一起跑。

     经过两个小时的时间,集成成功了。不过集成过程中还是遇到了问题,一个从来都没有遇到过的问题(不过自己也很少编程哈),这里把这个问题记录一下,往后自己又遇到或者有网友遇到了也可以提供参考。编译提示信息如下:

compiling queue.c...
compiling tasks.c...
compiling timers.c...
compiling heap_4.c...
compiling port.c...
compiling socket.c...
compiling spi.c...
compiling wizchip_conf.c...
..\HARDWARE\Ethernet\wizchip_conf.c(113): error:  #29: expected an expression
        .id                  = _WIZCHIP_ID_,
..\HARDWARE\Ethernet\wizchip_conf.c(114): error:  #29: expected an expression
        .if_mode             = _WIZCHIP_IO_MODE_,
..\HARDWARE\Ethernet\wizchip_conf.c(115): error:  #29: expected an expression
        .CRIS._enter         = wizchip_cris_enter,
..\HARDWARE\Ethernet\wizchip_conf.c(116): error:  #29: expected an expression
        .CRIS._exit          = wizchip_cris_exit,
..\HARDWARE\Ethernet\wizchip_conf.c(117): error:  #29: expected an expression
        .CS._select          = wizchip_cs_select,
..\HARDWARE\Ethernet\wizchip_conf.c(118): error:  #29: expected an expression
        .CS._deselect        = wizchip_cs_deselect,
..\HARDWARE\Ethernet\wizchip_conf.c(119): error:  #29: expected an expression
        .IF.BUS._read_byte   = wizchip_bus_readbyte,
..\HARDWARE\Ethernet\wizchip_conf.c(120): error:  #29: expected an expression
        .IF.BUS._write_byte  = wizchip_bus_writebyte
..\HARDWARE\Ethernet\wizchip_conf.c(123): warning:  #12-D: parsing restarts here after previous syntax error
        };
..\HARDWARE\Ethernet\wizchip_conf.c: 1 warning, 8 errors
compiling w5500.c...
compiling dhcp.c...
compiling dns.c...
"..\OBJ\LED.axf" - 14 Error(s), 2 Warning(s).
Target not created.
Build Time Elapsed:  00:00:25

     开始不知道哪里的问题,后来在网上查了一下,网上是这样解释的:主要原因是Keil MDK默认设置不支持按照结构体名称初始化结构体的原因导致。
     按照错误定位到 了wizchip_conf.c中。
     /**
* @\ref _WIZCHIP instance
*/
_WIZCHIP  WIZCHIP =
      {
      .id                  = _WIZCHIP_ID_,
      .if_mode             = _WIZCHIP_IO_MODE_,
      .CRIS._enter         = wizchip_cris_enter,
      .CRIS._exit          = wizchip_cris_exit,
      .CS._select          = wizchip_cs_select,
      .CS._deselect        = wizchip_cs_deselect,
      .IF.BUS._read_byte   = wizchip_bus_readbyte,
      .IF.BUS._write_byte  = wizchip_bus_writebyte
//    .IF.SPI._read_byte   = wizchip_spi_readbyte,
//    .IF.SPI._write_byte  = wizchip_spi_writebyte
      };

后来按照网友提示,进入工程属性中的“C/C++”选项卡中把“C99 Mode”勾选,再次编译,问题就不存在了。

   下面把测试的图片贴上,有图有真像。桌面很乱哈,^_^……
   硬件还是同前面几个贴子一样,同时用电脑PING开发板及用安信可的测试软件TCPUDPDbg.exe给开发板发0-----15(十六进制)数据。目前没有掉包,偶尔延时有1秒。可能还需要优化。后面再说。^_^……




04.png (475.15 KB, 下载次数: 239)

测试截图

测试截图

03.png (128.8 KB, 下载次数: 130)

工程截图

工程截图

02.jpg (142.44 KB, 下载次数: 120)

开发板

开发板

01.jpg (112.88 KB, 下载次数: 113)

开发板

开发板

Rental_house_control.rar

6.61 MB, 下载次数: 4572

源代码

代写STM32各类驱动,DEMO程序
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /1 下一条

正点原子公众号

如发现本坛存在违规或侵权内容, 请点击这里发送邮件举报 (或致电020-38271790)。请提供侵权说明和联系方式。我们将及时审核依法处理,感谢配合。

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2026-7-22 02:18

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表