基于单片机的大棚温湿度设计(编辑修改稿)内容摘要:

是整个系统的控制中枢,它指挥外围器件协调工作,从而完成特定的功能。 硬件实现上采用模块化设计,每一模块只 实现一个特定功能,最后再将各个模块搭接在一起。 这种设计方法可以降低系统设计的复杂性。 系统电路原理图如图 2所示。 本系统主要硬件设计包括电源电路、晶振电路、复位电路、 LCD 显示电路以及温湿度传感器电路。 控制电路的核心器件是由美国 Atmel公司生产的 AT89S52单片机,属于 MCS51系列。 AT89S52 是一种低功耗、高性能的 CMOS8 位微控制器,具有 8K 在系统可编程 Flash 存储器,采用的工艺是 Atmel 公司的高密度非易失存储器技术;片上 Flash 允许程序存储器在系统可编程,亦适于常规编程器;在单芯片上, 拥有灵巧的 8位 CPU 和在系统可编程Flash,使得 AT89S52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案;价格低廉、性能可靠、抗干扰能力强。 因此广泛应用于工业控制和嵌入式系统中。 AT89S52 外围电路 简述 单片机 AT89S52 作为主控芯片,控制整个电路的运行。 单片机外围需要一个复位电路,复位电路的功能是:系统上电时提供复位信号,直至系统电源稳定后,撤消复位信号。 为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分 合过程中引起的抖动而影响复位。 该设计在电源 电压瞬间下降时可以使电容迅速放电,可令系统可靠复位。 图 31 复位电路图 图 32 时钟电路 AT89S52中有一个用于构成内部振荡器的高增益反相放大器,引脚 XTAL1和 XTAL2分别为该反向放大器的输入端和输出端。 这个反向放大器与作为反馈元件的片外石英晶10UFC310KR1S1VCCRST复位电路112MC130pC230pXTAL2 XTAL1振荡电路电子 104 班 苏宇宁 大棚温湿度设计 5 体或陶瓷谐振器一起构成自激振荡器。 外接石英晶体 (或陶瓷谐振器 )及电容 C C2 接在放大器的反馈回路中构成并联振荡电路。 对外接电容 C C2 虽然没有十分严格的要求 ,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度及温度稳定性。 如果使用石英晶体 ,电容应该使用 30pF。 还可以使用外部时钟。 这种情况下 ,外部时钟脉冲接 XTAL1 端 ,即内部时钟发生器的输入端 , XTAL2 应悬空。 由于外部时钟信号是通过一个 2分频触发器后作为内部时钟信号的 ,所以外部时钟信号的占空比没有特殊要求 ,但最小高电平持续时间和最大低电平持续时间应符合产品技术条件的要求。 液晶显示模块电路设计 这部分设计液晶屏显示,包括 显示温度、显示湿度以及设置温湿度上下限值。 LCD12864 内部提供 128 2字节的字符显示 RAM 缓冲区( DDRAM)。 字符显示是通过将字符显示编码写入该字符显示 RAM实现的。 根据写入内容的不同,可分别在液晶屏上显示 CGROM(中文字库)、 HCGROM( ASCII 码字库)及 CGRAM(自定义字形)的内容。 三种不同字符 /字型的选择编码范围为: 0000~ 0006H(其代码分别是 0000、 000 0000006 共 4 个)显示自定义字型, 02H~ 7FH 显示半宽 ASCII 码字符, A1A0H~ F7FFH 显示8192 种 GB2312 中文字库字形。 字符显示 RAM 在液晶模块中的地址 80H~ 9FH。 字符显示的 RAM 的地址与 32 个字符显示区域有着一一对应的关系,其对应关系如下表 3所示。 表 3: 80H 81H 82H 83H 84H 85H 86H 87H 90H 91H 92H 93H 94H 95H 96H 97H 88H 89H 8AH 8BH 8CH 8DH 8EH 8FH 98H 99H 9AH 9BH 9CH 9DH 9EH 9FH LCD 通过 RS、 R/W、 E构成的时序图实现数据的读与写,时序图如图 5图 55所示。 电子 104 班 苏宇宁 大棚温湿度设计 6 图 33 MPU 写资料到 ST7920( 8 位数据线模式) 图 34 MPU 从 ST7920 读资料( 8 位数据线模式) 模块控制芯片提供两套控制命令,基本指令和扩充指令如下表 表 5: 指令表 4:( RE=0:基本指令) 指 指 令 码 功 能 令 RS R/W D7 D6 D5 D4 D3 D2 D1 D0 清除 显示 0 0 0 0 0 0 0 0 0 1 将 DDRAM填满 20H,并且设定 DDRAM的地址计数器 (AC)到 00H 地址 归位 0 0 0 0 0 0 0 0 1 X 设定 DDRAM 的地址计数器 (AC)到00H,并且将游标移到开头原点位置。 这个指令不改变 DDRAM 的内容 显示状态开 /关 0 0 0 0 0 0 1 D C B D=1: 整体显示 ON C=1: 游标 ON B=1:游标位置反白允许 进入点 设定 0 0 0 0 0 0 0 1 I/D S 指定在数据的读取与写入时 ,设定游标的移动方向及指定显示的移位 游标或显示移位控制 0 0 0 0 0 1 S/C R/L X X 设定游标的移动与显示的移位控制位。 这个指令不改变 DDRAM 的内容 功能 设定 0 0 0 0 1 DL X RE X X DL=0/1: 4/8位数据 RE=1: 扩充指令操作 RE=0: 基本指令操作 设定CGRAM 地址 0 0 0 1 AC5 AC4 AC3 AC2 AC1 AC0 设定 CGRAM 地址 电子 104 班 苏宇宁 大棚温湿度设计 7 设定DDRAM 地址 0 0 1 0 AC5 AC4 AC3 AC2 AC1 AC0 设定 DDRAM 地址(显示位址) 第一行: 80H- 87H 第二行: 90H- 97H 读取忙标志和地址 0 1 BF AC6 AC5 AC4 AC3 AC2 AC1 AC0 读取忙标志 (BF)可以确认内部动作是否完成 ,同时可以读出地址计数器 (AC)的值 写数据到 RAM 1 0 数据 将数据 D7—— D0 写入到内部的RAM (DDRAM/CGRAM/IRAM/GRAM) 读出RAM 的值 1 1 数据 从内部 RAM读取数据 D7—— D0 (DDRAM/CGRAM/IRAM/GRAM) 指令表 5:( RE=1:扩充指令) 指 指 令 码 功 能 令 RS R/W D7 D6 D5 D4 D3 D2 D1 D0 待命 模式 0 0 0 0 0 0 0 0 0 1 进入待命模式 ,执行其他指令都棵终止 待命模式 卷动地址开关开启 0 0 0 0 0 0 0 0 1 SR SR=1:允许输入垂直卷动地址 SR=0:允许输入 IRAM 和CGRAM地址 反白 选择 0 0 0 0 0 0 0 1 R1 R0 选择 2 行中的任一行作反白 显示,并可决定反白与否。 初始值 R1R0= 00,第一次设定为反白显示,再次设定变回正常 睡眠 模式。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。