;*標(biāo)題: 串口驅(qū)動(dòng)74LS164-發(fā)送八位串行數(shù)據(jù)至并口C程序
//------------------------------------------------------
# include <reg52.h>
sbit CLR=P3^0; //用P3^0控制CLR
//----------------------------------------------------------------------
// 函數(shù)名稱(chēng):UART_init()
// 功能說(shuō)明:串口初始化,設(shè)定串口工作在方式0
//----------------------------------------------------------------------
void UART_init(void)
{
SCON =0x00; //沒(méi)串行口方式0,允許發(fā)送,啟動(dòng)發(fā)送過(guò)程
ES=0; // 禁止串口中斷
}
//---------------------------------------------------------------------
// 函數(shù)名稱(chēng):out()
// 輸入?yún)?shù):data,需要從74LS164并行口輸出的數(shù)據(jù)
// 輸出參數(shù):無(wú)
// 功能說(shuō)明:發(fā)送八位串行數(shù)據(jù)至并口
//---------------------------------------------------------------------
void out(unsigned char)
{CLR =0; //并口輸出清零
CLR =1; //開(kāi)始串行移位
UART_init(); //74LS164工作在時(shí)鐘控制下的串行移位狀態(tài)
While(TI==0); //循環(huán)等待
TI=0;
SBUF=data;
}