输入 输出
A Y
H H
L L
第四章 系统软件设计
4.1 程序设计思想
此程序是用延时的方法来读取采样值的,将采样值除以二的商值转换成十进制数送LED数码管显示,温度变化范围为0℃~127℃。当ADC0804完成模拟量到数字量的转换后,从P1口读数、将采样值除以二的商值转换成十进制数、送显缓区、再根据键盘扫描的结果对温度值进行比较判断,当按下加热功能键时,系统要控制加热器开始加热,当温度到达125度时停止加热;当按下保温键时,温度低于50度时,加热器开始加热,温度高于70度,停止加热;当按下停止键时,系统停止工作。为实现显示温度与按键的对应,可以在主程序里面设立相应的标志,以达到题目的要求。
4.1.1 主程序设计
在主程序(MAIN1和MAIN2)中,主要完成初始化(包括7279复位初始化(CS)、内存单元初始化、堆栈初始化以及标志位初始化)、7279键盘扫描(KEY)以及键值处理等内容。
标志位分配
01H 加热标志 02H 保温标志 03H 停止标志
4.1.2 消毒与保温子程序设计
子程序(CMP)中,主要完成消毒柜控制系统的加热、保温及停止控制。
当通过判断按键为按下消毒键(00H)时,P1.4口输出低电平,通过控制电路,系统开始加热,此时红色发光二极管点亮,P1.5口输出高电平(黄色发光二极管不点亮)。当温度超过125度时,P1.4口输出高电平,红色发光二极管熄灭,加热停止,P1.5口输出高电平。如此循环控制,达到高温消毒功能。
当按下保温键(01H)时,比较此时系统的温度是否低于50度,如果低于,P1.4输出低电平,通过控制电路,开始加热,同时P1.5口输出低电平,两个发光二极管均点亮;如果温度介于50度到70度之间或者大于70度时,P1.4口输出高电平,加热停止,同时P1.5口输出低电平,保温灯(即黄色发光二极管)仍然点亮;如此循环控制,达到在50-70度之间的保温功能;
当按下停止键(02H)时,系统停止工作。
4.1.3显示子程序设计
该实验设计示模块主要是由7279键盘显示芯片来完成。而对与7279芯片来说,在开始显示前,首先要进行初始化,而且7279显示子程序的设计还得严格地按照7279串型接口时序图来设计。否则,7279不能正确地显示结果,或者根本没有任何的显示。
7279接口的时序图如下图4.1所示
其中T1=50us,T2=8us,T3=8us。
图4.1 7279时序图
所以设计显示子程序时,必须计算上图中的T1,T2,T3,T4,T5 ,T6,T7等,严格控制好延时时间。
4.2 程序流程框图
主程序流程框图如图4.2所示。
图4.2主程序流程框图
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>