这个是我在学习嵌入式软件应用时做的课程大作业,基于Micrium公司的uCOS-II v2.83和LPC2148 ARM7-TDMI-S开发板做的水温监测模拟程序,买不起传感器,故只能模拟了~使用IAR开发
注意:主程序目录比较深,为\uCOS-II v2.83\EvalBoards\NXP\LPC2148-KickStartCard\IAR\OS-View-LCD\app.c
货比三家,有种就看看我这个值不值10分。
以下是程序的主要功能:
1、通过LPC2148 ARM开发板上的ADC模数转换旋钮来模拟水温的变化,将采集的模数转换数据作为模拟的水温数据,默认频率为 1次/秒;
2、水温数据采集到后,在2*16字符的LCD屏幕的第一行实时显示温度,同时将该水温数据以水平标尺的形式在LCD上动态的显示出来,默认频率为 1次/秒;
3、使用LPC2148 ARM开发板上的8个LED来反应系统的运行情况,在系统每处理一次水温数据后LED会闪烁一次,以表示系统运行正常;
4、设置水温警报值。默认水温警报下界为10℃,默认水温警报上界为90℃,当水温超出 10℃--90℃ 时,会将该(温度,时间)记录到系统的历史警报记录区中(该历史警报记录区为环形记录,不对警报记录排序,最新记录会覆盖最旧记录),历史警报记录区默认大小为30;
5、在发生警报后,LED灯闪烁亮度会加强,作为警报反应,该警报反应不会自行停止;
6、使用LPC2148 ARM开发板上的S2和S3按钮来查询历史警报信息,S2作为上翻按钮,S3作为下翻按钮;查询结果会显示在2*16字符LCD的第二行,以(警报温度值,警报时间)对的形式显示;
7、S4按钮为LCD复位按钮,用来在LCD出现异常时重启LCD屏幕,该操作不对除LCD以外的其他功能有影响;
8、S5按钮用来关闭警报反应,按下S5后可以关闭LED的高亮度闪烁。
1