你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

解析嵌入式网络开发模块

[复制链接]
gaosmile 发布时间:2020-3-24 11:41

1、协议,根据OSI7层由上到下分别是:应用层、表示层、会话层,传输层、网络层,数据链路层、物理层。TCP是传输层协议,IP是网络层协议。TCP/IP不是ISO制定的,是由IETF(国际互联网工程任务组)推出的标准化的一种协议,大学、研究所等研究机构和计算机行业是推动标准化的核心力量,现它已成为业界标准协议。

        2、有线mac和phy,有线mac属于属于数据链路层,现在一般的SOC、CPU、高端MCU都包含有。有线MAC通过RGMII或GMII接口与phy物理层芯片连接。有人问为什么不把phy集成到MCU里,因为phy跑的都是模拟信号,且功耗大,MCU带不动。这种类型最难开发,因为协议栈都要自己实现。

       

        3、有线网络透传模块,这类模块有经典的W5500,MCU这端完全不用涉及应用层以外的东西,模块内部已经实现了TCP/IP协议栈、PHY等等。MCU这边看过来就是个SPI外设而已,只是包上表面是网络代码的东西。

        4、USBSDIO WIFI模块,这类模块有些是内置的TCP/IP协议栈的也集成了无线传输标准协议,比如瑞昱的RTL8189。可是为什么很多人看到它们还要移植lwip协议栈?LWIP从逻辑上看分为4层:链路层、网络层、传输层、应用层。

        LWIP中几个组件在协议栈中的位置:网络层:ARP协议、ICMP协议、IGMP协议;传输层:TCP协议、UDP协议;应用层:DHCP客户端、NetBIOS计算机名服务、DNS客户端、HTTP服务器。lwip应用层也可以拿来移植的嘛。

        这种SDIO/USB WIFI模块应该是转换器+MAC+PHY+无线调制解调器组合。硬件不是问题,问题是软件,这类模块一般都需要预先烧录一个firmware,驱动将固件烧录在模块里。很多模块带了SDK里面里面就是lwip,那么开发者也只能用lwip了。至于那些什么都不带的可能比较少。

        其实这里也是比较碎片化的,最复杂的也是在这些模块里。那些单独的phy模块或者透传模块,要么很自由你自己来厂商不提供SDK什么的,要么很不自由就是透传模块你完全不需要什么SDK仅仅需要一份AT指令表。所以开发者头痛的就是这些模块。但是其实归根到底都是实现网络协议那几层而已,至于在哪里实现,它们的API如何交互才是最重要的。

        5、AT+串口wifi模块,最近几年这类透传模块大行其道,wifi、蓝牙LoRa、NBIOTZigbee等等,实际上根本不需要怎么了解这些协议栈,串口、I2C、SPI一上即可。可是这种开发模式好意思说自己会移植协议栈吗?不过这样也可以大大加快研发速度,毕竟有几个人会移植蓝牙协议栈,又有几家IC厂开放了权限给你移植?


收藏 评论0 发布时间:2020-3-24 11:41

举报

0个回答

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版