uchar HYM8563_Write_OneByte1(uchar addr,uchar data)
{
IIC_Start(); //产生IIC起始信号
IIC_Send_Byte(0XA2); //发送写命令 // 0xA2 写地址 0xA3 读地址
if(IIC_Wait_Ack())return 1; //等待应答信号到来
IIC_Send_Byte(addr); //发送地址 //寻寄存器地址
if(IIC_Wait_Ack())return 1; //等待应答信号到来
IIC_Send_Byte(data); //发送字节 //配置寄存器
if(IIC_Wait_Ack())return 1; //等待应答信号到来
IIC_Stop(); //产生一个停止条件
return 0;
}
uchar HYM8563_Write_OneByte(uchar N, uchar addr,uchar data)
{
uchar res = 1;
CLI
while(res&&(--N))
{
res = HYM8563_Write_OneByte1(addr, data);
}
SEI
return (res);
}
这是配置成主控向被控器件写数据。 |