家用空调温度控制器的控制程序设计 下载本文

《微机原理及接口技术》课程设计

8:键盘接口的工作原理分独立式按键接口和行列式键盘接口

一.独立式键盘接口(适于键数较少、操作快、同时多键动作场合)

各键相互独立,每个按键各接一根输入线,通过检测输入线的电平状态可很容易判断那个键被按下。

二、行列式(矩阵式)键盘及其接口

(适于按键数目较多的场合;可节省较多的I/O口线端;同时只会有一个键闭合的场合。)

行列式键盘按键的识别方法 a. 扫描法

(1)判断有无键闭合:

8页 第

《微机原理及接口技术》课程设计

首先使列线D4~D7都输出0,检测行线D0~D3。如果无键闭合,D0~D3输入全为1;如果有键闭合,就会有某一根行线输入为0。

(2)查找闭合键号:逐行逐列扫描,闭合键号=列号+行首键号 b.线反转法

采用线反转法的键盘行线、列线端口各自应当可以在输入与输出方式间切换! 如图:高四位与低四位均可独立改变其输入或输出方式

第1步:列线输出为全‘0’ ,随后输入行线电平如有‘0’,则‘0’所在的行就是闭合的按键所在行;无‘0’则无键闭合。

第2步:行线输出为全‘0’ ,随后输入列线电平如有‘0’,则‘0’所在的列就是闭合的按键所在列;无‘0’则无键闭合。 结合上述两步,可确定按键所在行和列。 综上所述,选择行列式键盘按键的线反转法

9:按键状态的输入与消抖动 机械触点的弹性作用,触点在闭合和断开瞬间的电接触情况不稳定,造成了电压信号的抖动现象,时间一般为5~10ms。这种现象会引起CPU对于一次键操作进行多次处理,因此必须设法消抖动。

10:压缩机三分钟自动保护定时方法: ①定时中断,0.01S次数; ②计主流程次数我采取计主流程次数180*100次,总时间180*100*0.01S=3分钟。

9页 第

《微机原理及接口技术》课程设计

3章 总体软件设计说明及总流程图

3.1总体软件设计说明

总初始化,对数码显示器、指示灯、蜂鸣器的自检以及各使用单元的初值设定和各个芯片的初始化设置等。

本设计程序为12个主流程2个中断服务子程序,单片机就是在这些子模块下循环执行,这些子模块依次包含有:

;主工作流程

LOOP: LCALL JYIN ;按键音子程序 LCALL TPB ;单按键子程序

LCALL XDPB ;调用消抖单按键输入

LCALL CZ ;调用显示内容送显缓子程序(拆字将时分秒送右6位显示缓冲单元) LCALL KT ;行列式键盘子程序 LCALL WDXS ;温度显示子程序 LCALL DISP ;调用显示更新子程序 (动态驱动8位数码显示器一遍,约8mS) LCALL ADSUB ;调用A/D子程序(采集AN1输入电压的A/D数据送左2位显示) LCALL KEY ;调用键盘扫描子程序 (扫描到按键压下时在左第3位显示键号) LCALL CLOCK ;整点报时子程序 LCALL JCPD ;进程判断以及进程显示子程序 LCALL YSBH ;三分钟压缩机保护 LCALL FXBD ;风向摆动 LCALL DSGJ ;定时开/关机 SJMP LOOP ;反复循环主流程

此外,还有一些没被主流程调用,但被其它模块调用的模块,比如驱动控制模块,时钟调校模块等。

第 10 页

《微机原理及接口技术》课程设计

3.2总流程图 开始 延时等待各芯片退出复位 延时40mS 基本初始化 I/O接口芯片(8255)及I/O初值初态 设备自检 数码管、指示灯、讯响器,可自检接口芯片等 工作初始化 各模块所用资源初值初态(中断、定时、存储单元等) 显示内容送显缓 判当前进程或模式界面,取相应内容按格式送显缓 显示更新驱动 键盘扫描 独立按键PB0~7的检测 第 11 页