考试考完了,闲得无聊,正好手头有一块51学习板,捣鼓一下。控制任务如下:
P1.0 控制一个LED灯,亮0.5s,灭0.5s。
设计思路:这里我们只用定时器,不用软延时。51的定时器最多定时60ms,所以我们设置定时器每50ms中断一次,通过在中断程序设置一个变量来统计中断次数,从而实现较长时间的定时。这里我们是每500ms执行一次灯亮灯灭的动作,所以每10个中断等于500ms(50ms x 10)。第6行,全局变量timer50msCount 就是中断次数。第19-23行,当timer50msCount 为10时,代表500ms时间到,把P1.0 取反,动作一次。
这里有个繁琐的地方,定时器的初值需要手工计算。不过前人开发了一下小程序,直接拿过来用就可以了。
见下图。把自动生成代码中的第一行删掉就可以了。
下面是程序。
文章来源于:电子工程世界 原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关文章
51单片机流水灯电路图大全(2023-10-10)
51单片机流水灯电路图大全; 51单片机流水灯电路图(一)
本原理图采用STC89S52单片机控制8个LED灯,其中8个LED灯的负极接单片机的P1端口,正极通过1KΩ排阻连接到电源上。原理......
单片机控制花样流水灯原理图及程序(2023-06-06)
单片机控制花样流水灯原理图及程序; AT89C51单片机流水灯c语言程序
1、首先先在proteus画出仿真图,方便仿真程序
2、下面来编写程序,先来写入头函数
3、根据......
用51单片机控制的LED流水灯设计(2022-12-26)
用51单片机控制的LED流水灯设计; 1.引言
当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制......
用单片机控制的LED流水灯设计(2022-12-21)
用单片机控制的LED流水灯设计;1.引言
当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制......
基于Keil、STM32,用C++编写流水灯程序(2023-04-06)
基于Keil、STM32,用C++编写流水灯程序;通常来说,在单片机上编程,要么汇编,要么C语言,而用C++进行开发的很少,那么究竟能不能用C++开发单片机呢?答案是肯定可以的,下面讲讲基于Keil......
如何基于Keil、STM32用C++编写流水灯程序?(2023-10-20)
如何基于Keil、STM32用C++编写流水灯程序?;通常来说,在单片机上编程,要么汇编,要么C语言,而用C++进行开发的很少,那么究竟能不能用C++开发单片机呢?
答案肯定是可以的,下面......
用c语言编写单片机流水灯程序详解(2023-08-30)
用c语言编写单片机流水灯程序详解;用C语言编写的单片机流水灯程序的软件和硬件,可以让八个LED轮流点亮,每个灯点亮和熄灭时间均为1秒。是利用单片机I/O口控制外部设备的简单例子。当然,在你掌握了本程序......
嵌入式开发 | 单片机能用C++开发吗?(2023-04-06)
(); Delay(50); }}
编译出来的代码量相对更大:
然后,如果有开发板,直接下载即可运行LED闪烁的现象。
说明:
使用C++写单片机流水灯程序,实现的方法有很多,比如还有一些更高级的继承、多态......
如何用用C语言编写的单片机来控制流水灯(2023-06-07)
如何用用C语言编写的单片机来控制流水灯;用C语言编写的单片机流水灯程序的软件和硬件,可以让八个LED轮流点亮,每个灯点亮和熄灭时间均为1秒。是利用单片机I/O口控制外部设备的简单例子。当然,在你掌握了本程序......
基于51单片机的路灯自动开关控制仿真设计(2024-03-18)
管低电平导通,PWM经过PNP三极管反向后LED灯的亮度越暗。
高于阈值,单片机控制输出的PWM占空比最大达100%,PNP三极管低电平导通,PWM经过PNP三极管反向后LED灯完全熄灭。
以上......