|
发表于 2015-9-3 09:18:13
|
显示全部楼层
sbit _LCLK = LCLK;
sbit _SCLK = SCLK;
sbit _DATA = DATA;
/*******************************************************************************
函数功能:向一片595发送数据输入
参数:数据的地址输出参数:无
*******************************************************************************/
void Send595(UCHAR * pdat)
{
unsigned char i,j;
j=0x80;
for (i=0;i<8;i++)
{
if((*pdat)&j) _DATA = 1;
else _DATA = 0;
_SCLK = 0;
_SCLK = 1;
j>>=1;
}
}
/*******************************************************************************
函数功能:串行静态显示函数输入
参数:显存的地址输出参数:无
*******************************************************************************/
code UCHAR DisplayHex[]={0xC0,0xf9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,
0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10, };
void DisplayBy595(UCHAR * pdat)
{
UCHAR i;
for(i=0;i<4;i++)
{
Send595(&DisplayHex[*(pdat+i)]);
}
_LCLK=0;
_LCLK=1;
}
你的时序怎么和我的不一样,试试我的。 |
|