方式1的波特率= (5)
定时器T1的溢出率关系式为:
定时器T1的溢出率= (6)
3.5 液晶显示的设计
本文选用串行接口的液晶显示器,AT89S52通过液晶芯片的串行接口SIO向液晶芯片寄存器写命令,实现对液晶显示模块的控制。其与AT89S52的连接图如图6。表1对液晶显示模块的引脚功能进行了解释说明。
图6 显示电路
表1 液晶显示模块引脚说明
引脚 名称 方向 说明 引脚 名称 方向 说明
1 VSS - GND(0V) 5 SDI I Data
2 VDD - VCC(3/5V) 6 CS I Enable Signal
3 PSB - 0:串行;1:并行 7 BLK - 负极(0V)
4 SCLK I 串行时钟 8 BLA - 正极(+5V)
3.6 键盘的设计
键盘模块通过四个按键和四个10K下拉电阻构成,四个按键分别与AT89S52的P2.4、P2.5、P2.6、P2.7端口连接,当按键被按下后对应端口被拉低为低电平,进而实现对AT89S52的用户端控制。按键S1控制显示本月总电量,按键S2控制显示电压值,按键S3控制显示电流值,按键S4控制显示功率。连接图如图7。
图7键盘硬件电路设计
3.7 存储模块的设计
本文采用存储芯片X5045和微处理器AT89S51及其外围电路共同构建存储模块。随着智能电网的发展对智能电表的要求越来越高,要求具有分时记忆功能,能够存储显示至少12天的电量及功能参数,其数据存储量大、存储周期长,故选用此方案,X5045正好能满足需要且具有内部看门狗定时器,并且可以对电源进行监控。X5045的复位引脚RESET接到AT89S52的复位引脚,为微处理器模块提供复位信号,从而起看门狗电路的作用[10]。在写操作过程中, 必须保持低电平外, 必须保持高电平。连接电路如图8。
图8 存储模块电路
3.8 时钟模块电路的设计
本文设计的时钟模块电路,以AT89S52和DS1302为基础构建。DS1302是带RAM存储功能的时钟芯片,SCLK、 I/O、 分别与AT89C51的T0、P27、P26连接,DS1302由VCC2\VCC1两者中的较大者供电。当VCC2大于VCC1+0.2V时,VCC2给DS1302供电;当VCC1大于VCC2+0.2V时,VCC1给DS13O2供电[11]。连接电路如图9。
图9 时钟模块电路
4. 系统软件设计
在基于单片机的系统设计中,软件程序的编写与硬件设计缺一不可。硬件是躯体,软件是灵魂,系统的硬件电路设计完成之后,系统的功能完成需要调用软件程序来实现,而且软件程序的设计在很大程度上决定着系统的性能。
本文的软件设计是在Keil uvision3的环境下选用C语言编程和调试的,Keil uvision3软件具有良好的调试窗口,编译方便快捷,内部嵌有丰富的单片机资料,应用十分广泛,而C语言功能丰富,表达能力强,目标程序效率高,可移植性好,即具有高级语言的优点,又具有低级语言的许多特点,两者的完美结合,很好的实现了软件功能。 AT89S52单片机单相智能电表设计+流程图+仿真图(4):http://www.751com.cn/zidonghua/lunwen_1721.html