STC89C51是一种高性能、低功耗的CMOS八位微控制器,具有8K在系统在线可编程Flash存储器,使用ATMEL公司高密度非易失性存储器技术制造,与工业80C51产品引脚和指令完全兼容。片上Flash允许ROM在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使其为众多嵌入式控制应用系统提供灵活的解决方案。 4.1.1主要特性
(1) 低功耗空闲和掉电模式; (2) 全静态操作:0Hz~33Hz; (3) 八个中断源;
(4) 8K字节在系统可编程Flash存储器; (5) 掉电标识符; (6) 三级加密程序存储器; (7) 与MCS-51单片机产品兼容; (8) 全双工UART串行通道; (9) 三个16位定时器/计数器; (10) 看门狗定时器; (11) 双数据指针; (12) 1000次擦写周期; (13)32个可编程I/O口线。 4.1.2 引脚功能说明
VCC:电源 GND:地
P0口:8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问数据存储器和外部程序时,P0口也被作为低8位数据/地址复用。在这种模式下,P0具有内部上拉电阻。在Flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。
P1口:具有内部上拉电阻的8位双向I/O口,P1输出缓冲器可以驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1^0和P1^2分别作定时器/计数器的外部计数输入(P1^0/T2)和定时器/计数
9
器的触发输入(P1^1/T2EX),具体如下表所示。在Flash编程和校验时,P1口接收低8位地址字节。P1引脚口功能见表1
表1 P1引脚口功能
引脚号 P1.0 P1.1 P1.5 P1.6 P1.7
第二功能
T2(定时器/计数器T2的外部计数输入),时钟输出 T2EX(定时器/计数器T2的重载/捕捉触发信号和方向控制)
MOSI(在系统编程用) MISO(在系统编程用) SCK(在系统编程用)
P2口:具有内部上拉电阻的8位双向I/O口,P2输出缓冲器驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在方位外部程序存储器或用16位地址读取外部数据存储器时,P2口送出高八位地址。在Flash编程和校验时,P2口也接收一些控制信号和高8位地址字节。
P3口:具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动四个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。 作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
P3口亦作为STC89C51特殊功能(第二功能)使用,见表2。 端口引脚 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 表2 P3引脚的第二功能 第二功能 RXD(串行输入口) TXD(串行输出口) INTO(外中断0) INT1(外中断1) TO(定时/计数器0) T1(定时/计数器1) WR(外部数据存储器写选通) RD(外部数据存储器读选通) RST:复位输入。晶振工作时,单片机复位需要RST脚持续2个机器周期高电平将。看门狗计时完成后,RST脚输出96个晶振周期的高电平。AXUR(地址8EH)特殊寄存器上的Disrto位可以使此功能无效。Disrto默认状态下,复位高电平有效。
10
ALE/:控制信号(ALE)访问外部程序存储器时,锁存低8位地址的输出
)也用作编程输入脉冲。
脉冲。在Flash编程时,此引脚(
在一般情况下,ALE以晶振1/6的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,ALE脉冲将会跳过,当每次访问外部数据存储器时。如果需要,通过将SFR(其地址为8EH)的第0位置“1”,ALE操作将无效。这一位置“1”,ALE仅在执行MOVC或MOVX指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(SFR地址为8EH的的第0位)的设置对微控制器处于外部执行模式下无效。
:外部程序存储器选通信号。当S51从外部程序存储器执行外部代码时,在每个机器周期被激活两次,而在访问外部数据存储器时,
将不被激活。
/VPP:访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程
序存储器读取指令,
必须接地。为执行内部程序指令,
也接收12V电压。
应该接VCC。
在Flash编程期间,
XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。 4.2 温湿度传感器DHT11简介和电路图
数字温湿度传感器DHT11是一款含有已校准熟悉信号输出温湿度复合传感器,它应用专用的温湿度传感技术和数字模块采集技术,确保产品具有卓越的长期稳定性和极高的可靠性。传感器包括一个NTC测温元件和一个电阻式感湿元件,并与一个性能高的8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在即为精确的湿度校验室中进行校准。校准系数以程序的形式存在OTP内存中,传感器内部在检测型号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为给类应用甚至最为苛刻的应用场合的最佳选择。产品为4针单排引脚封装,连接方便。
典型的应用电路见图2:
11
图2应用电路 表3 DHT11引脚说明
pin 1 2 3 4 名称 VDD DATA NC GND 注释 供电3-5.5V 串行数据,单总线 空脚,悬空 接地,电源负极 总线空闲状态为高电平的时候主机把总线拉低等待DHT11响应, DHT11能检测到起始信号,主机必须把总线拉低,至少大于18ms。DHT11一旦接收到主机的开始信号,接着就等待开始信号的结束,然后发送80us的低电平响应信号,要读取DHT11的响应信号,必须等待开始信号的结束,并延时等待20-40us后才能够接受,主机发送开始信号后,这时候就可输出高电平或切换到输入模式,接着总线由上拉电阻拉高。DHT11发送响应信号的时候总线为低电平,DHT11把总线拉高80us之前,必须等到响应信号 发送,准备发送数据时,每一bit数据都以50us低电平时隙开始,数据位是0或1,是由高电平的长或短来决定。假如响应信号的读取为高电平,但是DHT11无响应响应,这
参数 条件 分辨率 精度 重复性 温度 温度 量程范围 长期稳0℃ 50℃ 25℃ 典型值 25℃ 0-50℃ 表4 DHT11性能说明 Min 1 Typ 8 1 ±4 ±1 Max ± 1 ±5 单位 Bit %RH %RH %RH %RH 30 20 20 ±1 90 80 90 %RH %RH %RH %RH/yr 12
定性 迟滞 互换性 分辨率 重复性 8 1 6 0 ±1 ±1 可完全互换 8 1 ±1 8 1 30 50 ±2 ℃ Bit ℃ ℃ S ℃ ℃ 响应时1/e(63%) 间 量程范 围 精度 时候说明路线可能连接不正常,当最后一bit数据传送结束后,DHT11把总线拉低50us,接着总线由上拉电阻拉高进入空闲状态。 4.3 显示器LCD1602简介和电路图
1602液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔每行之间也有间隔起到了字符间距和行间距的作用,正因为如此所以它不能显示图形。
1602LCD是指显示的内容为16X2即可以显示两行,每行16个字符液晶模块(显示字符和数字)。
具有80个字节的RAM,标准的接口特性,适配M6800系列MPU的操作时序。模块 结构紧凑、轻巧、装配容易,像素尺寸小,分辨率高。颜色分单色(黑白)、彩色两 种。
使用时,可将P0与LCD的数据线相连,P2口与LCD的控制线相连,其中,TC1602第4脚RS为寄存器选择,第5脚RW为读写信号线,第6脚E为使能端。第7~14脚:D0~D7为8位双向数据线。
相反,因此在编写软件时需要做处理,使读取正确。LCD显示电路见图3所示。
13