关于 lwip 应用在 stm32f407ig 与上位机 的通信 简要 说明
来源:互联网 发布:vb.net中declare 编辑:程序博客网 时间:2024/06/11 14:36
由于 本人是菜鸟中的菜鸟 所以 光看 lwip 就看了 好久 此时 对于 f407 知道的 只是 以太网控制器 什么 dma 什么中断 什么 systick 尼玛 压根啥都不懂, 所以后来 一边学 vb.net 一边学 lwip 一边学 硬件 f407 后来 去图书馆 发现 vb.net 的 关于 网络通信的太少 但是 发现 c#。net 的特别多 此时 vb 貌似 看了 半年 几乎 就是 看了 菜鸟级别的 东西 因为 以前没学过 vb .net 好在 c c++ 学过 一点 C51 也学过一点 反正 现在结结巴巴 能 上下位机通信 注意 (一开始 用的周立功的 tcp 啥的 速度 最快就300 多 kb 怎么调 都调不通 ) 然后 我 就 看 c#。net 这边 找找 那边 找找 一开始 当然 是上位机和上位机 的 client 与 server 先试试看能不能 通 反正试了 能够 通 此时 只知道 是 通了 但是 啥 异步 同步 线程 等等 啥都不懂 接着 就饿补 。。。。。。。 n 天之后 终于 懂点 皮毛 反正 上位机 就那样 不能喝专业 的 编程 人员 相比 ,,,,,,,, 此处省 去 1 万字
好了 好了 反正 我 这一年 就是看程序 看 vb 。net 看 c#.net 看 lwip 看 stm32 头晕了 尤其 lwip 我 真他妈啥 我 一开始 是 lwip 语句 是一句一句 的看 他奶奶 的 浪费了 不知道 多少 功夫 关键 现在 也是 一知半解。。。。。。 所以 所以 不管了 能怎样就怎样谁让 哥们 脑袋笨 呢 对吧 ,, ,,
下面讲讲 要点了 lwip stm32 看了 移植 半解后 我就 在 echo server 上 修改 了 其实菜鸟都会 我就说个思路 接受 改成 以太网中断 的方式 发送 就在循环里面
tcp_write() tcp_output() 我里面 是1024 字节 一次 写 入 ,,,,,, 然后 lwip 里面 我没改什么 就是 这 看看 那看看 我现在的 配置是 mss 1500 send_buf 6*mss twnd 4096
上位机 用的阻塞的形式 因为下位机 貌似也堵塞 吧 (不太懂其实) 在加入一些 线程 之类的东西 不然 窗口 就被 一个 操作给 堵死
刚刚试了 下 10 s 大概 接受 了11,159KB 11M 吧 等于 1M/S ,,,,,,,
希望 有 高手指点 一二 上下位机 lwip tcp _write() tcp_output() 我 放一起 行吗???????????????
写这篇文章 已有时日 ,今天再次翻开以前写的博客,想想当时啥都不懂, 到现在 还是处于皮毛之间,嘿嘿感慨颇多,好在网络上下位机最后高出来,也算交差了,
主要 注意点,(1)硬件上用的dp83848和stmf439 ,现在用的是这个版本,其中dp83848 电路设计这块要注意 滤波电容 rj45 要与dp靠近一些,这里不多说了,(2)就是下位机软件lwip 这里 ,我用的是裸机所以没有现成的接口函数要自己慢慢的调试,注意 里面有个opt.h这个需要自己配置,像 mem-size 啥的 还有发送的接受可以用中断的方式,period 周期执行函数可以用定时器来执行,这样比较有效率 不要一直放在主函数的while里面具体的 tcp udp ip arp mac phy application 自己有时间深入研究把。(3) 上位机现在网络上最多的就是c#的socket编的在我的下载资源里面就有,我用的 异步,还有接受处理的函数和下位机的函数要联合调试,在调试过程中我用到了wireshark 他可以抓包,来帮助你解决遇到的问题,这个软件在我的下在里面应该也有。
最后祝大家都能够成功,还有arm cortex m4 也要仔细学学
- 关于 lwip 应用在 stm32f407ig 与上位机 的通信 简要 说明
- 关于C#上位机的usb_hid通信相关问题说明
- Arduino 与上位机的通信
- FlashMagic在上位机上的应用
- 基于单片机蓝牙通信的安卓上位机应用
- 关于vb串行通信上位机的相关问题
- socket通信中的select应用简要说明
- 如何建立cc2430串口与上位机通信的任务
- 关于单片机与上位机系统(VB或C++)在自动化控制领域的整合!
- 关于博客的简要说明
- 单片机与上位机通信元件
- LabVIEW上位机与串口通信
- 上位机与打印设备通信模型
- LabVIEW上位机与串口通信
- LabVIEW上位机与串口通信
- LabVIEW上位机与串口通信
- LabVIEW上位机与串口通信
- LabVIEW上位机与串口通信
- STL中使用模板在gcc中无法通过编译
- 如何注册STK功能模块?
- 异构编程趣解
- C# sealed/static/volatile/extern
- Ubuntu无线网卡firmware missing解决办法
- 关于 lwip 应用在 stm32f407ig 与上位机 的通信 简要 说明
- Ueditor配置(Net版)
- How To Change, Customize & Create Android Boot Animation [Guide]
- Android 启动模拟器是出现“Failed to allocate memory: 8”错误提示的原因及解决办法
- 移除vm fusion虚拟机在 launch pad里windows应用程序图标的方法
- 如何使Creo绘图和模型在Windchill中的名称保持一致
- 《Android和PHP开发最佳实践》迷你书
- 一个简单的android三维三角体
- C# String.Format格式说明