图2-1 系统框图
本设计选用STC89C51单片机作为主控芯片,并在外围添加了传感器采集电路、LCD显示电路、串口通信电路和报警电路。温湿度传感器采用SHT11来测量温湿度的值,显示电路采用LCD12864显示温湿度数值,串口采用CH340G来进行串口传输,以上电路构成了一个完整的单片机温湿度检测系统。
3系统硬件设计
3。1单片机最小系统
3。1。1单片机的选择
本课题选用的主控芯片为STC89C51,该芯片是采用8051内核的ISP(InSystemProgramming)在系统可编程芯片,工作时钟频率最高可达80MHz,片内含4KBytes的可反复擦写1000次的Flash只读程序存储器,而且器件兼容标准MCS-51指令系统及80C51引脚结构,在芯片内集成了通用8位中央处理器和ISPFlash存储单元[5]。芯片引脚如图3-1所示
STC89C51单片机特点:
图3-1 STC89C51引脚图
(1)增强型1T精简指令集结构8051CPU;
(2)工作频率相当于普通8051的0~420MHz,实际工作频率可达48MHz;
(3)用户应用程序空间12K/10K/8K/6K/4K/2K字节;
(4)片上集成512字节RAM;
(5)通用I/O口(27/23个),复位后:准双向口/弱上拉,I/O口可设置成四种模式:准双向口/弱上拉、推挽/强上拉、仅为输入/高阻;
(6)ISP(在系统可编程)/IAP(在应用可编程),不需要专用编程器,可通过串口(P3。0/P3。1)直接下载程序,数秒即可完成下载;
(7)EEPROM功能;
(8)看门狗;
(9)内部集成MAX810专用复位电路(当外部晶体20M以下时,可省外部复位电路)
(10)2个16位定时器/计数器;来自优I尔Y论S文C网WWw.YoueRw.com 加QQ7520~18766
(11)2路外部中断,可选择为下降沿中断或低电平触发中断;
(12)通用异步串行口(UART);
(13)SPI同步通信口,主模式/从模式;
STC89C51内部结构框图如图3-2所示
图3-2 STC89C51内部结构框图
STC89C51单片机内部器件介绍:
1。运算器运算器的功能:主要用来完成算数运算和逻辑运算。运算器的组成:
(1)算术逻辑运算单元(ALU):用于完成各种运算,其中包括加、减、乘、除、移位运算以及与、或、非逻辑运算,
ALU同时还具有传输、程序转移等功能。
(2)累加器(ACC):
累加器是一个8位的寄存器,它在CPU中的使用是最频繁的,ALU中所要进行各种运算的操作数大部分也来自于累加器,ALU运算完毕以后的结果通常也会送到ACC中保存。
(3)暂存寄存器(TMP1、TMP2):它主要是用来存放参与运算的另一个操作数,用户是无法访问的。
(4)状态寄存器(PSW):
PSW是一个8位的寄存器,它主要功能是用来保存结果的特征信息,从而对程序可以进行查询、判断和识别。
2。控制器控制器的功能:是以一定的时序来辅助单片机内部工作的控制核心。控制器的组成:
(1)程序计数器(PC):
PC是一个16位专用的寄存器,其主要用来存储程序下一条要执行指令的地址,所有程序的指令都是存储在ROM区的某一个单元,一个单元对应一个地址,当CPU在执行某一条指令的时候,就会把该地址送到地址总线,然后地址进行加1运算,从而指向下一条指令的地址,依次反复的执行,直至程序结束[4]。
(2)指令寄存器(IR):
IR主要是用来读取指令操作码,该操作码是CPU根据PC地址从ROM中读取出来的。