单片机C语言程序设计:定时器控制4个LED滚动闪烁
时间:09-04 14:21 阅读:6093次
*温馨提示:点击图片可以放大观看高清大图
简介:名称:定时器控制 4 个 LED 滚动闪烁
说明:4 只 LED 在定时器控制下滚动闪烁。
/*名称:定时器控制4个LED滚动闪烁
说明:4只LED在定时器控制下滚动闪烁。
*/
#include<reg51.h>
#defineucharunsignedchar
#defineuintunsignedint
sbitB1=P0^0;
sbitG1=P0^1;
sbitR1=P0^2;
sbitY1=P0^3;
uinti,j,k;
//主程序
voidmain()
{
i=j=k=0;
P0=0xff;
TMOD=0x02;//定时器0工作方式2
TH0=256-200;//200us定时
TL0=256-200;
IE=0x82;
TR0=1;//启动定时器
}while(1)
//T0中断函数
voidLED_Flash_and_Scroll()interrupt1
{
if(++k<35)return;//定时中断若干次后执行闪烁
k=0;
switch(i)
{
case0:B1=~B1;break;
case1:G1=~G1;break;
case2:R1=~R1;break;
case3:Y1=~Y1;break;
default:i=0;
}
if(++j<300)return;//每次闪烁持续一段时间
j=0;
P0=0xff;关闭显示
i++;//切换到下一个LED
}