出现问题的时候波形的周期发生变化

[复制链接]
1112|19
 楼主| langgq 发表于 2021-4-12 18:35 | 显示全部楼层 |阅读模式

问题描述:定时器0,中断里面写的是波形;定时器1中,是按键扫描。
问题现象:当旋转编码开关,出现问题的时候,波形的周期发生变化。
怎么解决??
wangzsa 发表于 2021-4-12 18:37 | 显示全部楼层
定时器写的什么波形?
zhuww 发表于 2021-4-12 18:38 | 显示全部楼层

旋转编码开关出现什么问题?
lium 发表于 2021-4-12 18:40 | 显示全部楼层
波形周期怎么变化?
hanwe 发表于 2021-4-12 18:44 | 显示全部楼层

编码开关和 按键 是什么关系?

是不是有延时消抖?
yufe 发表于 2021-4-12 18:46 | 显示全部楼层
明显是用按键扫描方式扫描编码开关. 处理太废时间, 占据了发波形的中断.
llia 发表于 2021-4-12 18:48 | 显示全部楼层
按键扫描其实不是个时间关键任务, 中断设个标志, 交给主循环去处理就行了
wangzsa 发表于 2021-4-12 18:50 | 显示全部楼层

定时器0的优先级设置的高点。
 楼主| langgq 发表于 2021-4-12 18:52 | 显示全部楼层
就是方波 脉宽1000ms ;旋转编码开关,在转动的时候,会卡在中间,导致检测电位的引脚,一直是地电位;波形周期变长了
 楼主| langgq 发表于 2021-4-12 18:58 | 显示全部楼层
编码开关就是按键  延时消抖是有的
supernan 发表于 2021-4-12 19:00 | 显示全部楼层
说的很对! 但是当我把扫描放入到<main.c>中 while(1)里面时,会响应不及时,现象就是:旋转编码器,转了好几圈,屏幕上才会跳到下一个界面。时快时慢的。客户体验感较差。
 楼主| langgq 发表于 2021-4-12 19:03 | 显示全部楼层

PT0=1;??是这样设置的吗? 我试过了
stly 发表于 2021-4-12 19:04 | 显示全部楼层
在定时器中断中延时消抖,这是很影响系统实时性的,应该严格禁止
zhuww 发表于 2021-4-12 19:07 | 显示全部楼层
T0设置高优先级中断
 楼主| langgq 发表于 2021-4-12 19:08 | 显示全部楼层
没有在中断里面做这些
 楼主| langgq 发表于 2021-4-12 19:10 | 显示全部楼层
设置了 无论,我把哪个定时器中断设置成优先级高的,另一个都会有问题。
heweibig 发表于 2021-4-12 19:12 | 显示全部楼层
中断里不要等待
wangzsa 发表于 2021-4-12 19:15 | 显示全部楼层
中断里的程序越少越好,最好用标志 位
zhenykun 发表于 2021-4-12 19:17 | 显示全部楼层
Timer1中的处理流程占用时间太长
 楼主| langgq 发表于 2021-4-12 19:18 | 显示全部楼层
嗯,好的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

932

主题

8762

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部