51单片机用定时器,怎么编程流水灯一秒闪烁一次,

如题所述

先写一个延时子函数delay,延时时间1秒。然后写LED=0;delay(1);LED=1;这样就可以做到一亮一灭,再把这段程序加入到循环中就可以,循环函数很简单不用再说了吧,如果还不懂回复我给你程序追问

是用定时器控制,不是用延时程序

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-06-27
#include<reg52.h> #define uchar unsigned char uchar m=0,i=0; void main() { TMOD|=0x01; //定时器0工作方式为1 TH0=(65536-50000)/256; //装初值 TL0=(65536-50000)%6; EA=1; //开总中断 ET0=1; //开定时器中断 TR0=1; //开启定时器 while(1); //等待中断 } void timer0() interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%6; m++ ; if(m==5) //12M晶振 定时5*50MS=250MS { m=0; P1=~(0X01<<i); //P1接8个LED if(++i==8) i=0; } }本回答被提问者采纳
第2个回答  2018-06-27
独不见(沈佺期)
相似回答