一、设计功能
- 系统设计
三、器件选择3.1温度信号采集模块
传统的温度检测大多以热敏电阻为传感器,采用热敏电阻,可满足 40℃度 至 90℃测量范围,但热敏电阻可靠性差,测量温度准确率低,对于1℃的信号是不适用的,还得经过专门的接口电路转换成数字信号才能由微处理器进行处理。
目前常用的微机与外设之间进行的数据通信的串行总线主要有
总线, SPI 总线等。其中
总线以同步串行 2 线方式进行通信(一条时钟线,一条数据线)。SPI 总线则以同步串行 3 线方式进行通信(一条时钟线,一条数据输入线,一条数据输出线)。这些总线至少需要两条或两条以上的信号线。而单总线( 1-wire bus ),采用单根信号线,既可传输数据,而且数据传输是双向的, CPU 只需一根端口线就能与诸多单总线器件通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。
单总线具有广阔的应用前景,是值得关注的一个发展领域。单总线即只有一根数据线,系统中的数据交换,控制都由这根线完成。主机或从机通过一个漏极开路或三态端口连接到数据线,以允许设备在不发送数据时能够释放总线,而让其它设备使用总线。单总线通常要求外接一个约为 4.7K 的上拉电阻,这样,当总线闲置时其状态为高电平。
3.1.1 DS18B20 数字式温度传感器
DS18B20 数字式温度传感器使用集成芯片,采用单总线技术,其能够有效的减小外界的干扰,提高测量的精度,同时,它可以直接将被测温度转化成串行数字信号供微机处理,接口简单,使数据传输和处理简单化。部分功能电路的集成,使总体硬件设计更简洁,能有效地降低成本,搭建电路和焊接电路时更快,调试也更方便简单化,大大缩短了开发的周期 。
3.1.2 DS18B20特性
采用单总线的接口方式,与微处理器连接时仅需要一条口线即可实现微处理器与 DS18B20 的双向通讯。 单总线具有经济性好,抗干扰能力强,适合于恶劣环境的现场温度测量,使用方便等优点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。
- 适应电压范围更宽,电压范围:3.0~5.5V,在寄生电源方式下可由数据线供电。
- 独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。
- DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。
- DS18B20在使用中不需要任何外围元件,全部 传感元件及转换电路集成在形如一只三极管的集成电路内。
- 温范围-55℃~+125℃。
- 可编程 的分辨率为9~12位,对应的分辨力分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温。
- 在9位分辨率时最多在 93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快。
- 测量结果直接输出数字温度信号,以" 1-wire bus "串行传送给CPU,可选择同时传送CRC校验码,具有极强的抗干扰纠错能力。
- 负压特性:电源极性接反时,芯片不会因发热而烧毁, 但不能正常工作。
3.1.3 DS18B20结构
3.1.4 DS18B20测温原理
3.1.5 DS18B20的读写功能
TM
|
R1
|
R0
|
1
|
1
|
1
|
1
|
1
|
R1
|
R0
|
分辨率
|
温度最大转换时间
|
0
|
0
|
9位
|
93.75ms
|
0
|
1
|
10位
|
187.5ms
|
1
|
0
|
11位
|
375ms
|
1
|
1
|
12位
|
750ms
|
寄存器内容
|
字节地址
|
温度值低位(LS Byte)
|
0
|
温度值高位(MS Byte)
|
1
|
高温限值(TH)
|
2
|
低温限值(TL)
|
3
|
配置寄存器
|
4
|
保留
|
5
|
保留
|
6
|
保留
|
7
|
CRC校验值
|
8
|
指
令
|
约定代码
|
功
能
|
读
ROM
|
33H
|
读DS1820温度传感器ROM中的编码(即64位地址)
|
符合
ROM
|
55H
|
发出此命令之后,接着发出 64 位 ROM 编码,访问单总线上与该编码相对应的DS1820 使之作出响应,为下一步对该 DS1820 的读写作准备。
|
搜索
ROM
|
0FOH
|
用于确定挂接在同一总线上 DS1820 的个数和识别 64 位 ROM 地址。为操作各器件作好准备。
|
跳过
ROM
|
0CCH
|
忽略 64 位 ROM 地址,直接向 DS1820 发温度变换命令。适用于单片工作。
|
告警搜索命令
|
0ECH
|
执行后只有温度超过设定值上限或下限的片子才做出响应。
|
温度变换
|
44H
|
启动DS1820进行温度转换,12位转换时最长为750ms(9位为93.75ms)。结果存入内部9字节RAM中。
|
读暂存器
|
0BEH
|
读内部RAM中9字节的内容
|
写暂存器
|
4EH
|
发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。
|
复制暂存器
|
48H
|
将RAM中第3 、4字节的内容复制到EEPROM中。
|
重调
EEPROM
|
0B8H
|
将EEPROM中内容恢复到RAM中的第3 、4字节。
|
读供电方式
|
0B4H
|
读DS1820的供电模式。寄生供电时DS1820发送“ 0 ”,外接电源供电 DS1820发送“ 1 ”。
|
3.2液晶显示器1602LCD
3.2.1引脚功能说明
编号
|
符号
|
引脚说明
|
编号
|
符号
|
引脚说明
|
1
|
VSS
|
电源地
|
9
|
D2
|
数据
|
2
|
VDD
|
电源正极
|
10
|
D3
|
数据
|
3
|
VL
|
液晶显示偏压
|
11
|
D4
|
数据
|
4
|
RS
|
数据/命令选择
|
12
|
D5
|
数据
|
5
|
R/W
|
读/写选择
|
13
|
D6
|
数据
|
6
|
E
|
使能信号
|
14
|
D7
|
数据
|
7
|
D0
|
数据
|
15
|
BLA
|
背光源正极
|
8
|
D1
|
数据
|
16
|
BLK
|
背光源负极
|
3.2.2 1602LCD的指令说明及时序
序号
|
指令
|
RS
|
R/W
|
D7
|
D6
|
D5
|
D4
|
D3
|
D2
|
D1
|
D0
|
1
|
清显示
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
2
|
光标返回
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
*
|
3
|
置输入模式
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
I/D
|
S
|
4
|
显示开/关控制
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
D
|
C
|
B
|
5
|
光标或字符移位
|
0
|
0
|
0
|
0
|
0
|
1
|
S/C
|
R/L
|
*
|
*
|
6
|
置功能
|
0
|
0
|
0
|
0
|
1
|
DL
|
N
|
F
|
*
|
*
|
7
|
置字符发生存贮器地址
|
0
|
0
|
0
|
1
|
字符发生存贮器地址
| |||||
8
|
置数据存贮器地址
|
0
|
0
|
1
|
显示数据存贮器地址
| ||||||
9
|
读忙标志或地址
|
0
|
1
|
BF
|
计数器地址
| ||||||
10
|
写数到CGRAM或DDRAM)
|
1
|
0
|
要写的数据内容
| |||||||
11
|
从CGRAM或DDRAM读数
|
1
|
1
|
读出的数据内容
|
3.2.3 1602LCD的一般初始化过程
NRF24L01无线模块
3.2.2 引脚功能及描述
3.2.3 工作模式
模式
|
PWR_UP
|
PRIM_RX
|
CE
|
FIFO寄存器状态
|
接收模式
|
1
|
1
|
1
|
-
|
发射模式
|
1
|
0
|
1
|
数据在TX FIFO 寄存器中
|
发射模式
|
1
|
0
|
1→0
|
停留在发送模式,直至数据发送完
|
待机模式2
|
1
|
0
|
1
|
TX_FIFO为空
|
待机模式1
|
1
|
-
|
0
|
无数据传输
|
掉电
|
0
|
-
|
-
|
-
|
3.2.4工作原理
地址(H)
|
寄存器名称
|
功能
| ||
00
|
CONFIG
|
设置24L01工作模式
| ||
01
|
EN_AA
|
设置接收通道及自动应答
| ||
02
|
EN_RXADDR
|
使能接收通道地址
| ||
03
|
SETUP_AW
|
设置地址宽度
| ||
04
|
SETUP_RETR
|
设置自动重发数据时间和次数
| ||
07
|
STATUS
|
状态寄存器,用来判定工作状态
| ||
0A~0F
|
RX_ADDR_P0~P5
|
设置接收通道地址
| ||
10
|
TX_ADDR
|
设置接收接点地址
| ||
11~16
|
RX_PW_P0~P5
|
设置接收通道的有效数据宽度
|
3.2.5 配置字
4、软件设计4.1.1 温度检测
温度检测模块软件设计DS18B20的测温原理遵循严格的单总线协议,以确保通信数据的准确性,单片机通过时序来写入和读出DS18B20中的数据,包括初始化、读l、读0,写1、写0等操作。传感器复位后,接收应答信号,跳过读ROM中序列号后,启动温度转换,等待温度转换完毕后,保存数据。如此反复,完成所有操作,其流程图如图所示。
4.1.2无线发射模块软件设计
4.1.3无线接收模块软件设计
4.2软件的总体设计4.2.1 发送部分
4.2.2接收部分
五、设计总结
七、硬件原理图及调试7.1系统硬件原理图
接收机