您好,例程中的CH455_DIG0定义方式是为了兼容标准的I2C通信,// CH455接口定义
#define CH455_I2C_ADDR 0x40 // CH455的地址
#define CH455_I2C_MASK 0x3E // CH455的高字节命令掩码
// 加载字数据命令
#define CH455_DIG0 0x1400 // 数码管位0显示,需另加8位数据
#define CH455_DIG1 0x1500 // 数码管位1显示,需另加8位数据
#define CH455_DIG2 0x1600 // 数码管位2显示,需另加8位数据
#define CH455_DIG3 0x1700 // 数码管位3显示,需另加8位数据
void CH455_Write( UINT16 cmd ) //写命令
{
CH455_I2c_Start(); //启动总线
CH455_I2c_WrByte(((UINT8)(cmd>>7)&CH455_I2C_MASK)|CH455_I2C_ADDR);
CH455_I2c_WrByte((UINT8)cmd); //发送数据
CH455_I2c_Stop(); //结束总线
}
如例程中所示,最终写入的地址依旧是手册中的68H、6AH、6CH、6EH。
|