使用74HC164的并行输出引脚接8支发光二极管,利用它的串入并出功能,把发光二极管从左到右轮流点亮,并反复循环
登录后复制
#include <REG52.H> /* special function register declarations */#include <intrins.h>sbit CTRL_OUT = P3^4; /* =0,清0;=1,并行输出 */void time(unsigned int ucMs);//延时单位:ms/******** main 函数 *********/void main (void) { uchar i; SCON=0x00; /*串行口方式0工作*/ ES=0; /*禁止串行中断*/ for (;;) { for (i=0; i<8; i++) { CTRL_OUT=1; /*=1,允许并行输出*/ SBUF=_cror_(0x80,i); /*循环右移i位,串行输出*/ while(!TI){} /*状态查询*/ TI=0; /*清发送中断标志*/ time(588); /*状态维持*/ } }}/*********** 延时单位:ms *******************/void time(unsigned int ucMs)//延时单位:ms{ unsigned char j; while(ucMs>0){ for(j=0;j<10;j++) delay_100us(); ucMs--; }}1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删