标题: 单片机独立按键控制LED流水灯的花样,速度 [打印本页]

作者: 不好不坏    时间: 2019-4-12 10:48
标题: 单片机独立按键控制LED流水灯的花样,速度
用两个按键控制LED流水灯,一个控制花样,每按一下切换一种花样。一个按键控制快慢,每按一下,速度变化,不改变当前的花样。现在的速度不起作用。

q3.png (114.5 KB, 下载次数: 63)

q3.png

q2.png (30.31 KB, 下载次数: 58)

q2.png

q1.png (33.36 KB, 下载次数: 65)

q1.png

作者: yzwzfyz    时间: 2019-4-12 15:30
无所谓的花样、速度!
只有显示那几个?各自间隔的时间是多少?这掌好这个要点就行了。
作者: tzs233    时间: 2019-4-12 16:35
你的delay_ms函数总是在死等,每次调用也没及时 tt 初始化(只是在t1 interrupt 3 中要溢出了才初始化清0,这怎么行),影响实时性 也容易出问题。  建议把花样和速度的定时变量建议分开  比如timeo_fSpeed,limitimeSpeed;  timeof_mod,limitime_mod

if(timeo_fSpeed<limitimeSpeed)
{
      timeo_fSpeed = 0;


}
作者: tzs233    时间: 2019-4-12 17:02
感觉 你的程序中 花样和速度 都共用的delay_ms函数 每次调用也没及时 把tt 初始化,只靠在定时器 计数溢出才退出,然后 处理花样和速度函数中还有一些  while 之类操作 这种死等的查询方式怎么看都有问题

作者: chtyise    时间: 2019-4-12 17:51
这个延时函数不起作用:!优先级比>=高。
作者: hantu    时间: 2019-4-12 19:34
你的程序框架应该有问题。建议流水灯直接用数组查表法做,这样每种花样都是一个简单的循环就可以搞定,而不是单独为它们各写一个子函数。本程序也不复杂,仅仅用延迟函数就足够了,没有必要用定时器,反正你并没有将它用好,增加出错的可能。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1