发布网友 发布时间:2022-04-20 05:30
共1个回答
热心网友 时间:2023-08-11 03:57
红外模块在发送端首先会涉及到红外线编码的问题。
红外线编码是数据传输和家用电器遥控常用的一种通讯方法,其实质是一种脉宽调制的串行通讯。家电遥控中常用的红外线编码电路有μPD6121G型HT622型和7461型等。红外线通讯的发送部分主要是把待发送的数据转换成一定格式的脉冲,然后驱动红外发光管向外发送数据。接收部分则是完成红外线的接收、放大、解调,还原成同步发射格式相同(但高、低电位刚好相反的脉冲信号)。这些工作通常由一体化的接收头来完成,主要输出TTL兼容电平。最后通过解码把脉冲信号转换成数据,从而实现数据的传输。
举个例子:1) μPD6121G遥控器的二进制“0”由0.56ms的间隔加0.565ms的脉冲表示;二进制“1”由0.56ms的间隔加1.685ms的脉冲表示。2) 每次发送的32位二进制码可分成两部分,其中前16位是遥控器辨识码,主要用于区别不同遥控器,后16位是操作码。这两个部分的后8位都是前8位的反码,用作数据校验。3) 每帧数据以9ms的间隔加4.5ms的脉冲作为数据头。
当然,如果收发模块都是自己设计的,你完全可以自己来设计一个通信协议。^_^
希望对你有所帮助。