完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本小白最近被导师批得太惨决定加紧做项目,结果被几个需要一直刷的子函数难住了。
我需要个6位数码管,一个18B20,一个PWM波以及一个4相步进电机,但是现在问题是数码管和PWM波都需要靠中断或者delay来控制或生成,如果两个都用中断的话经常是数码管显示不正确,会断一会,都用delay的话数码管一直在闪烁,而且我上网查用delay是很不好的,浪费系统资源,所以想来请教论坛大神们这种话情况应该怎么办??? |
|
相关推荐
4个回答
|
|
以T0为例。
BYTE Flags; main() { //初始化 while(1) { //高优先级任务 //…………… //低优先级任务 if(Flags & TASK_FLAG1) { Flags &= ~TASK_FALG1; DS18B20ReadTemperature(); // 处理数据 } if(Flags &TASK_FLAG2) { Flags &= ~TASK_FLAG2; //其他操作 } } } void OnT0Interrupt (void) interrupt 1 { static BYTE Period = 200; if( --Period == 0) { Period = 200; Flags |= TASK_FLAG1; } //下面是PWM操作 } 差不多就是使用类似操作系统的调度机制,要合理选择T0中断周期。 |
|
|
|
什么是刷子函数???
|
|
|
|
|
|
|
|
delay可以用定时器来实现
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
串口发送中断中对发送I/O口定义为GPIO输出,出现发送数据不完整,缺少2个字节,求解答
540 浏览 1 评论
662 浏览 0 评论
【xG24 Matter开发套件试用体验】10-Bluetooth示例1
755 浏览 0 评论
824 浏览 0 评论
【xG24 Matter开发套件试用体验】power specification电源规格参数配置
650 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
10839 浏览 31 评论
浏览过的版块 |
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-24 14:18 , Processed in 0.729668 second(s), Total 82, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号