本帖最后由 Sin90Cos90 于 2011-3-24 21:01 编辑
/***************************
【功能】:HC595驱动与硬件相关
【输入】: ;
【返回】: ;
***************************/
void DataOut(unsigned char nValue)
{
unsigned char i;
for(i = 0;i < 8;i++)
{
if ((nValue & 0x80) == 0x80)
{
H595_CP_H;//H PCLK输出高电平
}
else
{
H595_CP_L;//L PCLK输出低电平
}
H595_H166_PCLK_H;//H PCLK//时钟高电平,上升沿有效
H595_H166_PCLK_L;//L PCLK时钟低电平
nValue <<= 1;
}
H595_G_L;//L PCLK时钟低电平开595显示
}
/***************************
【功能】:显示
【输入】:Short_DATA_H
Short_DATA_L
【返回】: ;
***************************/
void Show_Led_Bit(unsigned char Short_DATA_H,unsigned char Short_DATA_L)
{
H595_LATCH_L;//L清除锁存信号
DataOut(Short_DATA_H);
DataOut(Short_DATA_L);
H595_LATCH_H;//H//给锁存信号,共送了16位数据
}
|