购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2 跑步机启停/速度控制模块设计思路

2.2.1 跑步机启停/速度控制模块的工作流程

跑步机启停/速度控制模块的工作流程如图 2.1 所示。需要注意的是,这个模块仅对用户的输入做出反馈,并不涉及对电动机的控制。

图 2.1 跑步机启停/速度控制模块的工作流程

2.2.2 系统的需求分析与设计

设计跑步机启停/速度控制模块,需要考虑以下几个方面的内容。

(1)需要一个提供用户输入的通道,以供选择当前的跑步机状态。

(2)需要一个数字显示通道,用于显示当前跑步机的速度及工作状态。

(3)需要一个良好的算法来区分长时间按键和短时间按键。

(4)需要设计合适的单片机软件。

2.2.3 “长按键”和“短按键”检测原理

在ATmega128 单片机应用系统中,常常需要区别一个按键是长时间被按下还是短时间被按下,有以下两种检测原理:

(1)使用一个硬件定时器,在第一次检测到按键被按下时启动这个定时器,当定时器计数溢出之后去检查按键的状态,如果此时按键还处于被按下的状态,则表明按键被长时间按下。需要注意的是,在启动定时器之前,首先要判断按键是否已经松开,这种检测原理的关键是选择一个合适的定时器溢出时间间隔,缺点是要占用一个硬件定时器资源,优点是可以在进行按键定时时进行其他操作。

(2)使用一个软件定时器,在第一次检测到按键被按下时将这个软件定时器的计数值增加,在多次检查到这个计数值的状态之后判断按键是否仍然被按下,如果仍被按下,则判断按键被长时间按下,否则被短时间按下。该检测原理的关键同样是选择一个合适的定时器延时时长,缺点是在进行按键定时时不能进行其他操作,优点是不占用硬件定时器。 +mRAmhGMbz0DzuNS0bOhm7FaMz8cmEMHoCKK+prOkk2RoZB7Xs1q3p42s5Kvvtbc

点击中间区域
呼出菜单
上一章
目录
下一章
×