第12章:PS端裸机与FreeRTOS案例开发之lwIP_Demo案例

2021-10-25 14:34:28 浏览数 (1)

前 言:

PS端裸机与FreeRTOS案例开发手册主要介绍PS端(ARM CPU0)的裸机与FreeRTOS案例的使用说明,适用开发环境:Windows 7/10 64bit、Xilinx Vivado 2017.4、Xilinx SDK 2017.4。本说明手册共分为11个小章节,本文为裸机案例的第一小节,如需工程编译、程序加载与固化方法,请自行返回查看,后续还将分享key-led-demo案例、uart-echo案例与qspi-flash案例等,如需更详细资料说明,可评论区留言,感谢关注!

本次案例用到的是创龙科技的TLZ7x-EasyEVM-S开发板,它是一款基于Xilinx Zynq-7000系列XC7Z010/XC7Z020高性能低功耗处理器设计的异构多核SoC评估板,处理器集成PS端双核ARM Cortex-A9 PL端Artix-7架构28nm可编程逻辑资源,评估板由核心板和评估底板组成。核心板经过专业的PCB Layout和高低温测试验证,稳定可靠,可满足各种工业应用环境。

TLZ7x-EasyEVM-S评估板

TLZ7x-EasyEVM-S评估板评估板接口资源丰富,引出千兆网口、双路CAMERA、USB、Micro SD、CAN、UART等接口,支持LCD显示拓展及Qt图形界面开发,方便快速进行产品方案评估与技术预研。

lwIP_Demo案例

案例功能

案例功能:实现轻量级IP栈(lwIP)网络收发功能。评估板千兆网口MIO RGMII0 ETH从上位机接收到字符后,再将接收到的字符通过网口发送至上位机。

操作说明

请使用网线将评估板网口连接到路由器,绿灯常亮、黄灯闪烁表示连接正常。

程序运行后,评估板将自动获取IP地址(亦可设置为静态IP),并创建echo server服务(telnet协议),端口号为7。此处识别到的评估板的IP地址为192.168.1.112。

图 93

在系统调试工具SecureCRT中点击

(Quick Connect)按钮,在弹出的界面中选择Telnet协议、填写评估板IP地址、端口号,再点击Connect进行连接。

图 94

连接成功后,请在串口调试终端输入字符,并按下Enter键进行发送。评估板网口接收到字符后,会将接收到的字符通过网口回显至串口调试终端。

图 95

关键代码

  1. 创建任务main_thread。

图 96

  1. 在任务函数main_thread()中初始化lwIP,再创建任务network_thread。

图 97

  1. 在任务network_thread中调用xemac_add(),添加网络接口信息。

图 98

  1. 在xemac_add()中设置MAC地址,由于ZYNQ处理器无固定的MAC地址,因此需进行设置。调用xemacpsif_init()根据处理器类型进行配置,xemac_type_emacps表示处理器类型为ZYNQ。

图 99

  1. 在xemacpsif_init()中调用low_level_init()进行硬件配置,如PHY的配置。

图 100

  1. read()获取向服务器发送的数据,write()进行数据回显。

图 101

配置静态IP地址

如需将评估板设置为静态IP地址,请参考如下方法。

在lwIP_Demo.c文件修改LWIP_DHCP宏定义为0,如设置为1表示自动获取IP。

图 102

在如下位置设置IP地址、网关、掩码等信息。

图 103

由于案例幅度篇章过长,后续还有相关章节,以下为本文完整版目录↓↓↓可以关注或点击账户查看!

前 言

1 工程编译、程序加载与固化方法

1.1 工程编译

1.2 基于下载器加载程序

1.3 基于下载器固化程序

2 裸机案例

2.1 led-flash案例

2.2 key-led-demo案例

2.3 uart-echo案例

2.4 qspi-flash案例

3 FreeRTOS案例

3.1 led-flash案例

3.2 key-led-demo案例

3.3 uart-echo案例

3.4 lwIP_Demo案例

3.4.4 配置静态IP地址

想要获取本案例的详细内容或更多案例,欢迎私聊或评论区留言,感谢关注!

0 人点赞