HXD019通用通讯协议:三个GPIO口通讯或者I2C通讯-c语言
0,设置三个GPIO和初始化:
将MCU与遥控IC_HXD019相连的所有IO内部下拉需要关闭,Set_SDA_IO()到 GetBUSYStatus()的所有主控芯片和hxd019连接的pin脚设置函数设置好,分别是硬件上的SDA,SCL,BUSy上电或待机时均为高电平,然后 加入编译;
1,发码库数据:
1.1.从码库得到的数据(Size不定长,最多120个字节,学习数据是232个字节)
1.2.然后调写函数: void writeI2C(char* data, UINT8 count);
2,学习和发学习数据文件:
2.1 进入学习:主控如果从上层得到的数据:头两个字节为0x30,0x20,则调一次所给函数 Learn_start2();
(此时外部操作:用被学的遥控器对着红外二极管发码,超过20秒左右不学习,HXD019超时);
2.2 等学习完成: 当IO口:busy口由低变高,立即调用函数 调用函数readI2C2(),主控自己写,范例:
Learn_start2(); //此时busy变低
readI2C2(char* readtempbuf)