DMX是能过串口发送DMX信号对DMX灯具进行控制,如舞台灯光之类的灯具一般都是DMX信号的,可做到灯光快速变化
ArtNet-DMX 就好像是网络版DMX灯光控制协议,通过网络传输ArtNet协议,终端控制设备再将ArtNet信号转换成DMX信号,进行灯具控制
DALI 协议也是一种国际常用的灯光控制协议,主要用用家居照明,商业场所照明,可对照明设备进行控制,监测,在一些高级酒店等商业场所终端照明设备会用到此类协议的照明设备,但跟主控制室的通信不一定是DALI协议的,可能有KNX之类的其它协议转换,因为没用过KNX协议,就不作介绍了 常用的还是 IIC SPIUSART 。 其他的全是USART 樓主所講都是燈控 protcol , 都是一些特定領域使用 , 要廣泛的應用 , 就必須搭其他的 protcol , 才能做成真正的 system;P 串口通信:UART 是使用最多的,
使用的协议有,RS485,CAN,LIN,SPI,I2C
RS485协议,在STM32上移植FREEMODUBUS协议从机,实现MOEBUS通信,接到上位机实现双工通信,这个协议栈主要移植的部分是串口中断,串口配置和定时器。通常是自己定义协议通过RS485来通信。
SPI和I2C根据硬件来匹配,和芯片有关。
CAN和LIN使用中也是根据自定义的协议来做,使用开源的协议栈不多。 项目中用过的:主要是CAN与串口
协议是自己根据业务需求制定的
从大类来分:下发、上报、心跳(判在线与状态)
CAN协议因为数据位只有8个字节,信息比较多的时候只能分段发
从信息的完整闭环来看,控制下发的必须要有回复,超时算无回复错误,还要监控回复数据与预期是否一致,如不一致需要判为反馈出错。
出错后的处理:最有效的就是重启下面的执行节点,节点设置独立看门狗,所以重启实际上是触发禁止喂狗,就是重启了。重启后等一个时间间隔(预期重启时间)重发一次指令,如果再出错就报严重错误。
大概觉得有用的经验就这些。
Modbus-RTU(485),IIC(硬的和软的),硬的SPI,RS485,OneWire. 本帖最后由 电子星辰 于 2018-11-6 14:48 编辑
STM32的GPIO是变量,对I2C的模拟有什么帮助,可以模拟的更好吗?
当需要多个模拟I2C的时候,每次都要搞一套I2C的命名,然后各自宏定义。但是,GPIO是变量就可以把GPIO的脚位赋值给变量,那么只需要编写一套I2C函数,然后实现哪个I2C的时候就切换哪个GPIO变量;或者只需要赋值不同的GPIO就可以了。
大概是这个意思。
用的最多的,必须是UART。
最早在用GSM/GPRS、GPS模块的时候,就用的串口AT指令集;
后来在串口屏、BLE等模块也是用的类似AT指令集,只是叫的名字不一样。Lora、NB-IoT、ESP8266等模块也有用类似工作方式。
视频控制器板卡、工业控制、PLC等产品上,到处都有UART的身影。
自己在做一些产品的时候,当然也使用了类似AT指令方式,ASCII字符明码,协议解析、故障分析非常方便。指令末尾可以加一个或多个字节的检验字,最简单的就是一字节或二字节的校验和;要求安全可靠,整复杂一点,CRC16、CRC32也可以加。 UART 是最基本的。UART 我有一个高级应用 CSMA/CD-on-RS485 可以实现对等网络。SPI、I2C 基本都是连外设用,不太会用做单片机互联。CAN 没怎么用过。以太网和 SDIO 基本轮不到单片机用,都是搭配 Linux 的。 串口 usb iic spi 并口 can
页:
1
[2]