4400|4

72

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

我的这个系统如何实现低功耗? [复制链接]

我的这个系统包括:LCD12864显示,4*4键盘,双串口数据通讯
其中LCD12864要随时更新显示串口0传来(软件滤波后)的数据;
键盘要随时响应用户的按键操作;
串口1随时响应上位机;

我现在的做法是:
键盘 :采用轮寻;
LCD12864:数据采集并软件滤波后直接送LCD显示;
双串口 :中断接收,主动发送;

我想修改程序结构为:
键盘 :改为I/O口中断
LCD12864:在串口0中断接收数据完毕后进行滤波,在串口0中断中刷新LCD;
串口1 :才串口1中断接收完毕后,在串口1中断程序中进行相应操作;

我这样修改能行吗,我主要是担心 I/0口中断的可靠性,还有就是在中断程序里有太多的操作,我系统内部还有定时器,我对中断的优先级没有研究过;

是否可行,请高手指教!

最新回复

还有就是你担心键盘IO口中断的问题!因为键盘中断时要执行去抖操作!一般80MS吧,这个时间如果在中断中做的确可能会影响别的中断的进行,我是这么做的!在键盘中断程序中先把键盘数据读近来保存到一个变量里,再开定时器中断,定时80MS,定时到时再接收键盘数据,与原来保存的变量比较一下,得出键值。但会耗费一个定时器。  详情 回复 发表于 2005-9-7 19:26
 
点赞 关注

回复
举报

83

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
应该可以,只要保证定时器中断时间不会太短。
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
我要求定时器1秒中断,按我的想象 时间上应该是够了,但是实际效果是,我在定时器中断程序中如果要刷LCD显示,LCD会显示不正常(在中断中不能对LCD进行清屏操作已经确定);

还有如果程序正执行到定时器中断内部,又来了串口中断或者I/0口中断(键盘),这样会不会出乱子?

MSP430内部资源的中断优先级是怎么安排的?
没有经验,谢谢回复.
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

4
 
引用:

我要求定时器1秒中断,按我的想象 时间上应该是够了,但是实际效果是,我在定时器中断程序中如果要刷LCD显示,LCD会显示不正常(在中断中不能对LCD进行清屏操作已经确定);

还有如果程序正执行到定时器中断内部,又来了串口中断或者I/0口中断(键盘),这样会不会出乱子?

MSP430内部资源的中断优先级是怎么安排的?
没有经验,谢谢回复.
在中断中处理LCD是有点不现实了!因为LCD的确很耗时间,建议键盘采用中断,这样主程序没事时就可以低功耗了,串口来中断时,把数据接受到后就给一个全局变量置一标志,然后唤醒底工耗,在主程序中判断这个标志来刷新LCD,430的个中断优先级固定,同时出现中断优先级别高的先执行,在中断程序中默认是关中断的。
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

5
 
还有就是你担心键盘IO口中断的问题!因为键盘中断时要执行去抖操作!一般80MS吧,这个时间如果在中断中做的确可能会影响别的中断的进行,我是这么做的!在键盘中断程序中先把键盘数据读近来保存到一个变量里,再开定时器中断,定时80MS,定时到时再接收键盘数据,与原来保存的变量比较一下,得出键值。但会耗费一个定时器。
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表