/* 名称:串行数据转换为并行数据
说明:串行数据由RXD发送给串
并转换芯片74164,TXD则用于输出移位时钟脉冲,74164将串行输入的1字节转换为并行数据,并将转换的数据通过8只LED显示出来。本例串口工作模式0,即移位寄存器I/O模式。
*/
#includereg51.h>
#includeintrins.h>
#defineucharunsignedchar #defineuintunsignedint sbitSPK=P3^7; ucharFRQ=0x00; //延时 voidDelayMS(uintms) { uchari; while(ms--)for(i=0;i120;i++); } //主程序 voidmain() { ucharc=0x80; SCON=0x00; //串口模式0,即移位寄存器输入/输出方式 TI=1; while(1) { c=_crol_(c,1); SBUF=c; while(TI==0);//等待发送结束 TI=0; //TI软件置位 DelayMS(400); } } 拓展阅读:报警与旋转灯程序