#define ADD_SIGN2 0x0e //标志2
#define S13_ON (SIGN1|=0x80) //标志S13,加热的中心标志
#define S13_OFF (SIGN1&=0x7f)
#define S10_ON (SIGN1|=0x40) //标志S10
#define S10_OFF (SIGN1&=0xbf)
#define S5_ON (SIGN1|=0x20) //标志S5
#define S5_OFF (SIGN1&=0xdf)
#define S11_ON (SIGN1|=0x10) //标志S11
#define S11_OFF (SIGN1&=0xef)
#define S9_ON (SIGN1|=0x08) //标志S9
#define S9_OFF (SIGN1&=0xf7)
#define S8_ON (SIGN1|=0x04) //标志S8
#define S8_OFF (SIGN1&=0xfb)
#define S7_ON (SIGN1|=0x02) //标志S7
#define S7_OFF (SIGN1&=0xfd)
#define S6_ON (SIGN1|=0x01) //标志S6,S5-S11风扇旋转标志
#define S6_OFF (SIGN1&=0xfe)
/***************************************************************/
#define S20_ON (SIGN2|=0x80) //标志S20,"LOCk"标志
#define S20_OFF (SIGN2&=0x7f)
#define S12_ON (SIGN2|=0x40) //标志S12,摄氏度标志
#define S12_OFF (SIGN2&=0xbf)
#define S4_ON (SIGN2|=0x20) //标志S4,"Warm"标志
#define S4_OFF (SIGN2&=0xdf)
#define S3_ON (SIGN2|=0x10) //标志S3,"Time"标志
#define S3_OFF (SIGN2&=0xef)
#define S19_ON (SIGN2|=0x08) //标志S19
#define S19_OFF (SIGN2&=0xf7)
#define S18_ON (SIGN2|=0x04) //标志S18
#define S18_OFF (SIGN2&=0xfb)
#define S17_ON (SIGN2|=0x02) //标志S17
#define S17_OFF (SIGN2&=0xfd)
#define S16_ON (SIGN2|=0x01) //标志S16,S16-s19,加热标志
#define S16_OFF (SIGN2&=0xfe)
/**-------------------------------------------------------------------------
Name: SendBit_1621(送数据程序)
---------------------------------------------------------------------------*/
void SendBit_1621(uchar sdata,uchar cnt) //data 的高cnt 位写入HT1621,高位在前
{
uchar i;
for(i=0;i {
WR0;
if(sdata&0x80) DATA1;
else DATA0;
WR1;
sdata<<=1;
}
}
/**-------------------------------------------------------------------------
Name: SendCmd(送命令)
---------------------------------------------------------------------------*/
void SendCmd_1621(uchar command)
{
CS0;
SendBit_1621(0x80,4); //写入标志码“100”和9 位command 命令,由于
SendBit_1621(command,8); //没有使有到更改时钟输出等命令,为了编程方便
CS1; //直接将command 的最高位写“0”
}
/**-------------------------------------------------------------------------
Name: Write_1621(送数据和命令程序)
---------------------------------------------------------------------------*/
void Write_1621(uchar addr,uchar sdata)
{
addr<<=2;
CS0;
SendBit_1621(0xa0,3); //写入标志码“101”
SendBit_1621(addr,6); //写入addr 的高6位
SendBit_1621(sdata,8); //写入data 的8位
CS1;
}
/**-------------------------------------------------------------------------
Name: all_off(清除1621显示)
上一页 [1] [2] [3] [4] [5] 下一页
本文关键字:程序 AVR单片机,单片机-工控设备 - AVR单片机