51单片机先让前4个灯亮,亮7秒,让后再让后4个灯亮11秒,然后循环

2025-04-08 09:58:21
推荐回答(4个)
回答1:

电路原理图咱不说,如果单片机IO口拉低灯亮、拉高灯灭,则设置一个定时模块,一个计数模块
while(1)
{
for(i=0;i<=18;i++)// for计数模块.7+11=18秒
{
定时模块函数()//每次1秒
P0=0xF0; //4个灯亮
if(i=7)

{P0=0x=0x0F;} //后4个灯开始亮
}

if(i=18)
{i=0;}
}

定时模块函数()//最好用中断,比较精确,当然也可以增加定时微调函数,更加精确
{……}

回答2:

给你个思路吧,用调制的方法,灯在高速闪烁人眼是看不出来的,你每个循环给闪烁的熄灭时间加1,灯就会慢慢变暗,在设置熄灭时间加到一定程度就开始减一,就会渐渐变亮了,如此循环就可以了

回答3:

有个晶振频率,才好定时。

回答4:

用定时器定时