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

第四期:聊聊你使用过的通讯端口、协议等

[复制链接]
dsjsjf 提问时间:2018-11-6 08:49 /
现在的MCU有很丰富的通讯端口,像STM32就有UART、SPI、I2C、CAN、SDIO、USB、Ethernet等等。来聊聊你在学习或工作中用过的通讯端口(不限于以上端口),用的标准协议还是自定义协议,是否有移植协议栈等等,以及它的特点。

收藏 评论40 发布时间:2018-11-6 08:49

举报

40个回答
weiwei4 回答时间:2018-11-6 10:18:11
DMX , ArtNet-DMX , DALI 这几个都是灯光行业常用协议
DMX是能过串口发送DMX信号对DMX灯具进行控制,如舞台灯光之类的灯具一般都是DMX信号的,可做到灯光快速变化
ArtNet-DMX 就好像是网络版DMX灯光控制协议,通过网络传输ArtNet协议,终端控制设备再将ArtNet信号转换成DMX信号,进行灯具控制
DALI 协议也是一种国际常用的灯光控制协议,主要用用家居照明,商业场所照明,可对照明设备进行控制,监测,在一些高级酒店等商业场所终端照明设备会用到此类协议的照明设备,但跟主控制室的通信不一定是DALI协议的,可能有KNX之类的其它协议转换,因为没用过KNX协议,就不作介绍了

点评

了解了,感谢!  发表于 2018-11-6 10:21
xiaoshen-372360 回答时间:2018-11-6 08:54:31
Modbus-RTU - Can-open

点评

给大家讲讲具体一点呢,具体移植的哪个协议栈,移植过程等  发表于 2018-11-6 09:00
freeelectron 回答时间:2018-11-6 09:02:11
一般情况下,还是建议使用标准协议,稳定,可扩展,除非有特别需求

点评

你是否用过哪些?  发表于 2018-11-6 09:06
weiwei4 回答时间:2018-11-6 09:06:14
modbus , DMX , ArtNet-DMX , DALI等

点评

你说的这些我只用过Modbus,能否介绍一下另外几个,有什么特点,应用场合等等。  发表于 2018-11-6 09:07
xiaoshen-372360 回答时间:2018-11-6 09:06:47

Modbus-RTU 是按照国标自己写的,国标上都有指导说明,写起来很简单,CAN-OPEN是直接在网上找的资料移植的,调试的过程还是比较艰辛,

点评

Modbus相对比较简单,移植FreeModbus也很方便。CAN-OPEN相对麻烦,我移植的是canfestival,有空可以交流。  发表于 2018-11-6 10:08
一代睡神的崛起 回答时间:2018-11-6 09:22:29
USART,can,lin

点评

可以介绍具体一点哦  发表于 2018-11-6 10:10
Angel_YY 回答时间:2018-11-6 09:31:04
UART ,SPI,IIC,CAN比较常用,USB和以太网接口偶尔会用。
此外基于UART的RS232,RS485也是常用的。

点评

是的,常用的还是这几种,USB和以太网要用就必须上协议栈了  发表于 2018-11-6 10:19
stm1024 回答时间:2018-11-6 09:42:57
本帖最后由 stm1024 于 2018-11-6 11:43 编辑

USART、IIC、SPI(SSP)、USB这些都是常见的协议,有个和SPI很像的SSI协议。还有以太网、Modbus、profibus等在工业上应用较广泛,LIN、FlexRay、CAN在汽车上应用也很广泛。目前我用的最多的还是CAN,在此基础上形成的应用层协议是有J1939、CANOpen和DeviceNet,其实只要把11898标准搞清楚,至于在这个基础之上的应用层就很不复杂了。以太网还在研究中,在此基础之上的协议族太多了,在感慨协议设计人员的nb的同时,也真心觉得这玩意儿体系太庞大了。
关于CANOpen,见http://www.can-cia.org/canopen/,下面有SDO、PDO等几个协议。

点评

CANOPEN是用的哪家的协议栈?  发表于 2018-11-6 10:23
不同的协议应用场合不同,我们需要根据自己的应用需求,确定使用哪种协议。  发表于 2018-11-6 10:11
tgw860910 回答时间:2018-11-6 09:56:10
UART:跟上位机通讯,跟一些有通讯协议的外设通讯(iPod、碟盒之类)
IIC:传感器、驱动模块等等
SPI:eeprom、TF卡、SD卡
CAN:车载产品、OBD
FSMC:与FPGA的通讯
USB:虚拟串口

协议的话就很多了,大部分是因应不同外设所定制的专用协议,但是硬件层都是不会改变的,改变的都是软件层的协议,不过IIC还是用软件模拟的更多

点评

F2\F4的硬件IIC我一直在用,读写EEPROM,目前没出现问题,但F1的一起没用。  发表于 2018-11-6 10:20
你肯定是用硬件IIC不太顺利,哈哈,我也是  发表于 2018-11-6 10:09
springvirus 回答时间:2018-11-6 10:14:29
UART,用的最多了,比如2个板子用自有协议通信,比如驱动UART接口的蓝牙模块和语音模块。

模拟SPI,还是用的很爽的,驱动过申请的铁电RAM片子和存字库用的Flash AT45DB321

感觉I2C比较难,用现成的模拟I2C程序驱动过MPU6050,获取到3轴的相关信息

公司产品有用到CAN和USB,都是使用片内的控制器完成底层

点评

硬件SPI还是很好用的,可以试试  发表于 2018-11-6 10:25
12下一页
关于 意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
13245底部标题123相同标题
12底部标题123相同标题
33333底部标题123相同序号
3435底部标题-无链接
关注我们
st-img 微信公众号
st-img 手机版