欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

51 单片机 跑马灯2

发布时间:2025/3/20 编程问答 28 豆豆
生活随笔 收集整理的这篇文章主要介绍了 51 单片机 跑马灯2 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
/*-----------------------------------------------名称:流水灯日期:2016.7.28修改:无内容:循环点亮P1口对应的8个LED灯,造成循环流水点亮的效果 ------------------------------------------------*/ #include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义 /*------------------------------------------------延时子程序 ------------------------------------------------*/ void delay(unsigned int cnt) {while(--cnt); } /*------------------------------------------------主函数 ------------------------------------------------*/main() {char flag = 0; //设置一个位变量 P1=0x7f; //给初始化值 换算成二进制是0111 1111while(1) //当为1时 则无限循环 当为0时 则一次都不执行 { if (flag == 0) //判断是否为0 {delay(30000); //延时程序P1 = P1 >> 1; //右移一位 该语句等效于 P1=P1>>1P1 |= 0x80; // 1000 0000if(P1==0xfe) //检测是否移到最左端?"=="表示检测符号2端的值是否相等 { flag = 1; }}else if (flag == 1){delay(30000); //延时程序P1 = P1 << 2; //左移两位 该语句等效于 P1=P1<<2P1 |= 0x03; // 0000 0011if(P1==0xbf) //检测是否移到最左端?"=="表示检测符号2端的值是否相等 { flag = 2;}}else{P1 = 0x00; // 灯将会全亮delay(30000); //延时程序 P1 = 0x7f; // 0111 1111flag = 0;}} }

 

转载于:https://www.cnblogs.com/zengsf/p/5713757.html

总结

以上是生活随笔为你收集整理的51 单片机 跑马灯2的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。