首页 > 电脑 > 51单片机定时器控制LED灯亮灭各两秒.求程序代码

51单片机定时器控制LED灯亮灭各两秒.求程序代码

电脑 2022-10-06

用定时器实现51单片机上LED灯每隔两秒亮暗闪烁

你用的是几个灯啊?比如说8个灯吧,用p0口, 就是直接讲p0口与led直接相连就行了啊,注意led的另一端要接在一起,共地或者高电平都可以,但是为了保护led,最好在每个小灯上串上一个电阻(若单片机采用的是5v电压,电阻可选用500欧左右的就可以了),以减小通过led的电流。剩余的就是单片机的最小系统了,没什么好说的吧,就是晶振,复位而已。 程序嘛,也很简单啊,你说用定时器,每个两秒如果单纯用一个定时器的话肯定不够用的,要结合循环判断语句,比如你采用12m的晶振,并且将定时中断时间定为50ms,那么设置一个变量,每20次就是一秒了,所以40次就是两秒。这样的话,每个40次就让led的状态(用0

51单片机定时器定时 2秒灯亮 3秒灯灭,如此循环

如果想实现无限循环那就采用死循环方式,可以无限的循环如while(1){};然后设定定时器定时时间为1s(此值需要根据单片机确定是否可以设定这么大),其次,设定一个变量对时间进行计数,根据计数情况做出相应的改变,程序可以这样设定: unsigned char gucledstatus = 0x00; //全局变量,表示灯当前的状态 0为灭,1为亮 volatile unsigned int gustimecnt; //全局变量对时间计数 int main() { //增加定时器初始化并开放中断 while(1) { if(gucledstatus == 0x01) //当前为亮状态 { if(

51单片机控制led灯亮两秒灭一秒 用单片机编程,不用c语言。用中断和循环两种,谢谢

您好,这样: P0=0x00; if(a==20) { a=0; P0=0x01; } 如果你是要实现一秒钟亮,一秒钟灭,你可以这样 D=0x00; while(1) { if(a==20) { a=0; D=~D; } }其中D是led对应的一个io口(一定要先定义D)

用单片机定时器控制一个LED亮灭,时间间隔两秒的程序。高手来。谢谢。

你有什么教材吗?我用的郭天祥的教材的第74页就有一个控制一秒闪烁的。你这个问题是超简单的问题。 你要程序的话我可以给你

51单片机led灯亮一秒停五秒程式怎么写

void delay_s(unsigned char t); void main() { while(1) { led = 1;//led 亮 delay_s(1);//延时1s led = 0;//led 暗 delay_s(5);//延时5s } } 这是主循环,你要把delay_s()这个延时函数补充进去,另外,led亮和暗的电平你得根据你得具体电路看是1亮还是0亮。

标签:单片机 信息技术 led灯 编程语言 51单片机

大明白知识网 Copyright © 2020-2022 www.wangpan131.com. Some Rights Reserved. 京ICP备11019930号-18