一、设计功能
- 系统设计
三、器件选择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系统硬件原理图
接收机