红外协议
由于目前能够使用的STC单片机库的红外传输一次只能传输10 bits,因此一种比较合理的并且安全稳定的设计方法是按位进行编码。编码设计如上
各个位功能说明
- 选择位
- 选择位可以进行类别的选择选择某一类指令或者是一个数据
- 选择位最高位是0,标识为数据,此时使用偶校验
- 选择位最高位是1,标识为指令,此时使用奇校验
- 选择位可以进行类别的选择选择某一类指令或者是一个数据
- 指令位
- 指令位共有6位,可以进行自主设计
- 如果选择位最高位是0,标识是数据,则选择位的低两位作为数据为和指令位6位连接成一个字节
- 如果最高位是1,则是指令,在这个基础上选择位还有四位所以一共可以分成四大类的指令,如果还要细分,可以在指令位中进行进一步划分
- 奇偶校验位
- 奇偶校验位是根据选择位的最高位来决定的
- 同时奇偶校验位对自己以外的前9位进行计算
- 因此选择位最高位会对奇偶校验位的方式进行选择,奇偶校验位又会对包括选择位最高位在内的所有位进行校验,这种方式能够稳定传输
具体位功能设计这里不强制说明,由使用者编写。