件地址及寻址字节是1011A2A1A0R/。选512字节的AT24C04,它的器件地址及寻址字节是1010A2A1POR/。选点阵式LCD驱动器PCF8578,它的器件地址及寻址字节是011110A0R/电路连线图如图6所示。为了增强系统的抗干扰能力,防止程序“跑飞”,加进了看门狗电路,采用的是X5045。它是一种新型的芯片,具有三种功能:(1)电压监控,当电压失常时,可为89C52提供上电复位;(2)看门狗定时,当程序紊乱“跑飞”时,启动内部的看门狗电路来强制单片机复位;(3)内部包含512字节的E2PROM,可用于缓解系统资源紧张的状况,和其它外存储器一样,保存一些重要的数据。AD5242支持I2C串行双向总线的定向规约:实际应用时AD5242为从器件,由主机启动数据的传输,并为发送和接收操作提供时钟。数据线SDA和时钟线SCL的信号间关系(起始条件、终止条件及应答条件)。它的器件地址及寻址字节是:0101A3A2A1A0。
图6 单片机与其外部电路连线图
2.6.2显示电路设计:
液晶显示器作为一种低功耗显示器件,广泛应用于计算器、数字式仪表等低功耗系统中。但一般使用的液晶显示器均为七段笔划式,只能显示数字和少量字符,对于较复杂的字符或图形则无能为力。而点阵式液晶显示模块可以显示各种各样的字符(包括简单的汉字),而且点阵显示模块具有可编程能力,与
单片机接口方便。因此,从电子表到计算器,从袖珍式仪表到便携式微型计算机以及一些文字处理机都广泛应用了液晶显示器,本设计中选用点阵式液晶显示器LCD12864。
有关LCD12846介绍:
LCD12846分为带字库何不带字库两种类型,在这里就不进行赘述。仅介绍一下有关不带字库类型的使用.
引脚功能介绍:
几个重要指令:
接线图如下:
2.6.3键盘电路设计
键盘在单片机应用系统中是一个很关键的部件,它能向计算机输入数据、传送命令等功能,是人工干预计算机的主要手段。键盘实质上是一组按键开关的集合。通常,按键所用开关为机械弹性开关,均利用了机械触点的合、断作用。一个电压信号通过机械触点的断开、闭合过程。由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定的接通,在断开时也不会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的抖动,抖动时间的长短由按键的机械特性决定,一般为5ms~10ms,这是一个很重要的时间参数,在很多场合都要用到。
矩阵键盘和单片机连接的情况当一个单片机系统只需要少量的键盘的时候用简单的独立键盘:
比如说按一个键亮一个灯就可当系统需要比较多的键盘时采用矩阵键盘就比较方便见下图:
4x4 矩阵键盘检测按键的方法是
先拉低第一行的电平,检测1~4 列有无键按下如有返回键值如无看下行 再拉低第二行的电平,检测1~4 列有无键按下如有返回键值如无看下行 先拉低第三行的电平,检测1~4 列有无键按下如有返回键值如无看下行 再拉低第四行的电平,检测1~4 列有无键按下如有返回键值如无则返回无键按下 unsigned char Key_Scan(void)//键盘扫描函数如果有键按下返回键ASC 值若无返回 0 {
P1=0XF0;
if(P1!=0XF0)//先确定是否有键按下 {
//--------------1------------------------------------ P1=0XFE;//第一次把P1^7 拉低
switch (P1)//测P1^0~~~P1^3 有没有低的 {
case 0xee: return '0';//P1^3 低返回‘0’ case 0xde: return '1';//P1^2 低返回‘1’ case 0xbe: return '2';//P1^1 低返回‘2’ case 0x7e: return '3';//P1^0 低返回‘3’
default: break;//没有本行的键按下继续下面扫描 }
//---------------------------------------------------- //-------------2-------------------------------------- P1=0XFD;//第二次把P1^6 拉低
switch (P1)//测P1^0~~~P1^3 有没有低的 {
case 0xed: return '4';//P1^3 低返回‘4’ case 0xdd: return '5';//P1^2 低返回‘5’ case 0xbd: return '6';//P1^1 低返回‘6’ case 0x7d: return '7';//P1^0 低返回‘7’