问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

请教c51单片机,c语言编程,关于控制LED灯闪烁频率?

发布网友 发布时间:2023-06-10 14:04

我来回答

1个回答

热心网友 时间:2024-03-07 18:49

## 代码
```

#include <reg51.h>
sbit LED = P2^0;
sbit K1 = P3^0;
sbit K2 = P3^1;
unsigned int freq = 50; // 初始频率为50Hz
void Timer0_ISR() interrupt 1
{
static unsigned int cnt = 0;
cnt++;
if(cnt == 1000/freq)
{
LED = ~LED; //每达到一定时间就更改LED灯状态
cnt = 0;
}
TF0 = 0;
}
void main()
{
unsigned int temp;
TMOD = 0x01; //设置T0为模式1
TH0 = 0xF8; //设置计时初值,到达此计时器将复位
TL0 = 0xCC; //使用最高电平9004H
ET0 = 1; //使能定时器中断
EA = 1; //开放全局中断
TR0 = 1; //启动定时器0
LED = 0; //关闭LED灯
while(1)
{
if(K1 == 0) // K1按下,增加频率
{
while(K1 == 0); // 等待按键释放
freq += 20;
if(freq > 100) freq = 100; // 频率上限100Hz
}
else if(K2 == 0) // K2按下,降低频率
{
while(K2 == 0);
freq -= 20;
if(freq < 10) freq = 10; // 频率下限10Hz
}
temp = 1000/freq/2; // 延时一半周期,确保闪烁频率正确
while(temp--);
}
}
```
> 其中,通过TMOD、TH0和TL0寄存器设置定时器T0为13位模式,并且设置了计时初值,以启动定时器0。同时开放了定时器中断,并将定时器中断优先级设置为1(即高优先级)。在无限循环中,不断检测K1和K2按键状态,以改变全局变量“freq”并控制LED灯的闪烁频率;然后使用一个计时器中断服务程序来控制LED灯的闪烁,具体实现方式请参考代码注释。最后,为了保证每个周期的闪烁持续时间与频率相符,应该在循环内部加入一个延时操作,等待一定时间再进入下一次循环。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
福建南安都有哪些市场 端午节去南安旅行的线路有哪些值得分享? 南安有哪些特色商业街 把一个棱长是10厘米的正方体铁块熔铸成一个底面积是20厘米的圆锥形铁块... 把一块棱长10厘米的正方体铁块熔铸成一个底面直径是20厘米的圆柱形零件... 0x0438ef0指令引用的0x0438ef0内存.该内存不能为“read”的错误提示... SONY 索尼 DSC-RX100M5A 1英寸数码相机 黑色(8.8-25.7mm、F1.8) Vl... SONY 索尼 DSC-RX100M5A 1英寸数码相机 黑色(24-70mm、F1.8-F2.8)-购... 索尼RX100 M5A数码相机 索尼RX100 M5A数码相机:小巧便携,成像卓越 可以通行的英文 冠词填空 he is 什么 NBA star he/sheisrrom中文是什么? heisr什么busytoday使句子完整 领克怎么消除胎压报警? 领克01胎压监测怎么调出来 领克01胎压监测复位 领克01胎压灯怎么复位 上海公积金贷款30万,20年和10年分别如何计算? 上海招行贷款30万需要什么? 上海房贷30万多吗? 2022年浙江选调生进面分数线 浙江师范大学选调生报考人数 2022全国定向选调报录比 嘉兴选调生录取率 陈泰和邓艾是什么 陈泰和邓安是忘年交吗? 为什么陈泰和邓艾属于忘年之交 铝合金橱柜优点铝合金橱柜效果图 德福诺橱柜德福诺橱柜效果图欣赏 纸风车多肉好养吗? 牛蒡适合什么地方种植 参数配置有画圈的不是黑点是什么意思? 许巍:没有什么能够阻挡,你对自由的向往 许巍的音乐有什么特点? 圣布雷手表怎么调日期 辣木茶的功效与禁忌 辣木茶的功效和副作用 辣木茶的功效及作用 ...LE 白细胞酯酶测定 阳性 具体能说一下是什么意思吗? NACLO是不是钠盐? 卦文的意思卦文的意思是什么 【卦文】的意思是什么?【卦文】是什么意思? 请大师给解一下卦文哈,什么意思呢?非诚勿扰哈~ 童年趣事的作文:肚子里长“西瓜” 和牛自助一顿吃多少牛肉 童年趣事作文500字 肚子里长西瓜 童年趣事作文400字 西瓜要篇作文 要写西瓜种吃进去怕在肚子长出西瓜的... 气概的词语气概的词语是什么 纤维膨胀剂的介绍