//跳線設(shè)置:默認跳線位
#include <AT89X52.H>
#define uchar unsigned char
sbit simuseri_CLK=P2^4; //用P2^4模擬串口時鐘
sbit simuseri_DATA=P2^5; //用P2^5模擬串口數(shù)據(jù)
sbit a7=ACC^7;
#define uint unsigned int
//-------------------------------------------------------------------------------------------------------
// 函數(shù)名稱:out_simuseri
// 輸入?yún)?shù):data_buf
// 輸出參數(shù):無
// 功能說明:8位同步移位寄存器,將data_buf的數(shù)據(jù)逐位輸出到simuseri_DATA
//--------------------------------------------------------------------------------------------------------
void out_simuseri(uchar data_buf)
{
uchar i;
i=8;
ACC=data_buf;
do
{
simuseri_CLK=0;
simuseri_DATA=a7;
simuseri_CLK=1;
ACC=ACC<<1;
}
while(--i!=0);
}
void delay() //延時函數(shù)
{
uint i;
i = 0x1ff;
while(i--);
}
void main(void)
{
P0= 0x00; //P0口送全0
out_simuseri(0xFF); //74hc164 輸出全1
//這樣點陣一端高電平,一端低電平就亮了,如果是共陰點陣就要反過來
while(1) //死循環(huán)
{;
}
}
歡迎光臨 (http://m.zg4o1577.cn/bbs/) | Powered by Discuz! X3.1 |