200-CH32V307(RISC-V)学习开发-以太网例程-网络指示灯GPIO选择, 检测网线连接状态,NetLib库移植说明
<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/LearnCH32V307VCT6" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>
说明
这节测试一下芯片自带的10M PHY 以太网,网络指示灯的GPIO选择和检测网线连接状态
然后再说明一下以太网的基本配置.
测试
1,把这节的工程下载到控制板
2,拔插网线
3,可以看下串口日志
程序说明
1,网络指示灯GPIO设置, 以太网网络信息设置
2,初始化以太网, 和轮训以太网函数
3,芯片最大支持31路socket, 可以根据自己的项目修改udp,tcp客户端, tcp服务器个数.
芯片以太网的库函数是单独的,自己移植库函数注意事项
1,把NetLib文件夹放到自己的工程
2,添加头文件路径
3,因为里面有.a文件,所以还需要设置一下库文件包含
4,下面这个地方写1就把 WCHNET_TimeIsr(WCHNETTIMERPERIOD); 放到1ms定时器
5,如果编译出现内存报错,这是ram不够导致的
gcc/bin/../lib/gcc/riscv-none-embed/8.2.0/../../../../riscv-none-embed/bin/ld.exe: section .stack VMA [0000000020007800,0000000020007fff]
overlaps section .bss VMA [0000000020000088,000000002000c16b]e:/mounriver/mounriver_studio/toolchain/risc-v embedded gcc/bin/../lib/gcc/riscv-none-embed/8.2.0/../../../../riscv-none-embed/bin/ld.exe: region `RAM' overflowed by 0
可以更改下分配
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具