打印

怎么才能做到实时?

[复制链接]
1292|32
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
guoyt|  楼主 | 2018-6-14 11:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

单片机程序既要不停的查询按键,又要动态刷新显示。
怎么才能做到实时?
沙发
hanwe| | 2018-6-14 11:25 | 只看该作者

然后呢?你是怎么应对这个的呢

使用特权

评论回复
板凳
guoyt|  楼主 | 2018-6-14 11:35 | 只看该作者
补充一点,我的单片机用于数据采集监控

使用特权

评论回复
地板
llia| | 2018-6-14 11:38 | 只看该作者
处理器要并行处理必然要分时咯

使用特权

评论回复
5
guoyt|  楼主 | 2018-6-14 14:38 | 只看该作者

怎么进行分时?
是不是查询按键在一定时间(可设定)内没有按键强行退出去刷新数据?

使用特权

评论回复
6
wangpe| | 2018-6-14 14:40 | 只看该作者
查询按键时别停留 将结果用累计变量保存好  查完就走…………   显示就利用人眼的错觉 每隔那么10~20ms去刷一次就ok啦

使用特权

评论回复
7
langgq| | 2018-6-14 14:43 | 只看该作者

一般情况下是这样。

使用特权

评论回复
8
wangzsa| | 2018-6-14 14:46 | 只看该作者
用实时系统啊

使用特权

评论回复
9
zhuww| | 2018-6-14 14:49 | 只看该作者
就是把你整个系统的任务时间分配好,在固定时间只做固定的事情,但是每件事情都分得很精细。前后台思想,如果有条件可以参考时间触发嵌入式设计这本书的内容。

使用特权

评论回复
10
zhanglli| | 2018-6-14 14:52 | 只看该作者
其实你可以定时中断来刷新显示缓冲区,主程序里面来采集按键值和更新需要显示的数据.

使用特权

评论回复
11
lium| | 2018-6-14 14:54 | 只看该作者

这个实时是相对来说的。。。真想实时的话就一个MCU处理按键,一个MCU刷屏。。。哇嘎嘎
开个玩笑,当然是要按键能用中断解决就用中断,不能用中断就每隔100ms或再低一些的时间查询咯,显示的刷屏就没什么太高要求了,该怎么处理就怎么处理好了

使用特权

评论回复
12
guoyt|  楼主 | 2018-6-14 14:57 | 只看该作者

显示缓冲区是AD采样的数据,AD用的是中断。这个数据在中断中刷新是没有问题的.
关键是我对系统进行参数设置的时候不需要动态刷新显示。
在参数设置完毕后,希望没有按键的时候动态刷新显示

使用特权

评论回复
13
llia| | 2018-6-14 15:01 | 只看该作者

显示缓冲区是AD采样的数据,AD用的是中断。这个数据在中断中刷新是没有问题的.
关键是我对系统进行参数设置的时候不需要动态刷新显示。
在参数设置完毕后,希望没有按键的时候动态刷新显示

使用特权

评论回复
14
yufe| | 2018-6-14 15:05 | 只看该作者
既然是实时数据采集,那键盘和显示就不用扫描了,硬件完成就成了!

使用特权

评论回复
15
wangpe| | 2018-6-14 15:10 | 只看该作者
由于数码管的特殊性,刷新时间间隔要短一点,键盘间隔可以长一点,总之就是,这些东西你没必要一直去处理,定时做就可以了,所以实现这一点,你可以用定时器,如果系统很大的话,建议引入操作系统

使用特权

评论回复
16
wangzsa| | 2018-6-14 15:13 | 只看该作者

划分时间片,比如用定时器产生1ms定时。分时多任务。

使用特权

评论回复
17
llia| | 2018-6-14 15:15 | 只看该作者
如果MCU做的事比较多的话,可以用专门的按键显示芯片,MCU只管读写就行。。。

使用特权

评论回复
18
zhanglli| | 2018-6-14 15:19 | 只看该作者

如果干一件事件只要100US 1MS可以干10件事情,而人的眼睛看都看不到 别人已经干了10件事情。

使用特权

评论回复
19
lium| | 2018-6-14 15:22 | 只看该作者

总体系统来看,把问题分析好,思路上,理论上,都说得过去。
按键扫描,可以每10ms扫一次,扫到一个键和处理一个键,所用的时间一般不超过几百us。
动态显示,也可以每10ms刷新一次。
至于什么时候不想动态显示,完全可以用一个变量或标记位来控制。。。

使用特权

评论回复
20
hanwe| | 2018-6-14 15:24 | 只看该作者
从分析来看,AD采样占用一个定时器,产生10ms可以占用一个定时器,理论上没难度。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1018

主题

9067

帖子

3

粉丝