基于51单片机的
人机接口的设计 一、功能描述
人机接口是人与机器之间传递、交换信息的媒介和对话接口,是单片机系统的重要组 成部分。是指人和单片机系统在信息交换和功能上接触或相互影响的领域。
人机接口的 应用无处不在,如在温度的测试及监控系统中,人通过键盘输入要设定的温度值,系统 通过数码管或液晶显示当前的温度。这样就通过
人机接口完成了人与单片机之间的信息 交流。正因为
人机接口运用如此广泛及它在实现人机交流的地位的不可或缺,故设计一 个高性能的
人机接口具有巨大的意义。此设计是基于51单片机的
人机接口,通过51单片 机和12864液晶来实现人机信息交流。利用51单片机的IO口实现键盘输入,通过串行通信 控制液晶显示。在没有按键按下时显示"16",在有键按下的时显示被按下的键值。系统 的设计结构框图如图一。 二、接口定义 基于51单片机的
人机接口的接口定义见表一。 "表一、基于51单片机的
人机接口接口定义表格 " " "对 象 "功能/定义 " " " " " "I/O口 " " " " "P1.0~P1.7"键盘行输出列输入 " " "P2.0 "12864的数据输入口 " " "P2.1 "12864的时钟输入口 " "定时器 "TO "初始值为50000,定时50ms " "中断 "T0中断 "计时到50ms产生中断,用于更新液晶显示 " 三、硬件结构图 图二、基于51单片机的
人机接口的硬件结构图 四、程序流程图 五、基于51单片机的
人机接口的程序设计清单 #include
#include #define KeyROCISegCodeO P1 /*定义键盘行输出列输入*/ #define NumRow 4 /*定义键盘行数为4*/ #define NumColumn 4 /*定义键盘列数为4*/ #define unit unsigned int #define uchar unsigned char sbit SID=P2^0; sbit SCLK=P2^1; void delay(uchar time) /*延时函数*/ { uchar i,j; for (i=0;i