新闻中心

EEPW首页>嵌入式系统>设计应用> SPCE061A在语音环境湿度测量仪的应用

SPCE061A在语音环境湿度测量仪的应用

作者: 时间:2013-05-29 来源:网络 收藏
2.3.3 按键电路

本系统直接使用精简开发板上的按键,61板上按键电路如图 2.7。


图 2.7 61板按键电路3 系统软件设计

本方案的软件系统包括下面模块:

按键扫描:扫描按键,判断是否有键按下,在Key.c文件中实现;
湿度测量:端口初始化,测量湿度并返回湿度值,在Hum_Measure.c文件中实现;
语音播放任意数字:播放任意的整数,本系统中用来播放湿度值,在PlayVoice.c文件中实现;
中断服务:语音播放中断服务程序和IRQ2中断读计数值程序,在isr.asm文件中定义。

3.1 各模块程序说明

3.1.1 主程序

主程序流程如图 3.1:调用按键扫描程序读取键值,如果是KEY1键按下则启动测量,调用湿度测量函数测量湿度,并根据测量结果进行相应播放;如果不是KEY1键按下,返回继续扫描按键。

注意:在每次测量前都会关断快速中断FIQ,这是因为在测量过程中用到了定时/计数器TimerA,而在语音播放时打开了FIQ中断,所以在测量前需先关闭,以免在测量过程中CPU一直相应FIQ中断,造成不必要的麻烦。


图 3.1 主程序流程图3.1.2 按键扫描模块

本系统中只用到了一个按键--61板上的KEY1键,这个键和IOA0连接。按键扫描程序流程如图 3.2所示。利用延时去抖的方法,先取一次端口数据,延时一段时间,一般延时几十ms即可,再取一次端口数据,如果二者相同,说明取到了正确的键值。


图 3.2 按键扫描程序流程图



评论


相关推荐

技术专区

关闭