引言
着现代信息技术飞速发展传统工业改造逐步实现.够独立工作温度检测显示系统应诸领域传统温度检测热敏电阻温度敏感元件热敏电阻成低需续信号处理电路性相较差测温准确度低检测系统定误差传统温度计相里设计数字温度计具读数方便测温范围广测温精确数字显示适范围宽等特点选AT89C51型单片机作控制器件DSl8B20作测温传感器通4位阳极LED数码串口传送数实现温度显示通DSl8B20直接读取测温度值进行数转换该器件物理化学性稳定线性度较0℃~100℃线性偏差01℃该器件直接单片机传输数字信号便单片机处理控制外该温度计直接采测温器件测量温度简化数传输处理程
2 系统硬件设计方案
根系统功求构造图1示系统原理结构框图
图1 系统原理结构框图
21 单片机选择
AT89C51作温度测试系统设计核心器件该器件INTEL公司生产MCS5l系列单片机中基础产品采CMOS工艺制造技术具高性8位单片机属标准MCS—51CMOS产品仅结合HMOS高速高密度技术CHMOS低功耗特征继承扩展MCS—48单片机体系结构指令系统单片机系统电路图图2示
图2 单片机系统电路
AT89C51单片机特性:
(1)MCS51 兼容4K字节编程闪烁存储器
(2)灵活线系统编程掉电标识快速编程特性
(3)寿命1000次写擦周期数保留时间10年
(4)全静态工作模式:0Hz33Hz
(5)三级程序存储器锁定
(6)128*8位部RAM32编程IO线
(7)两16位定时器计数器6中断源
(8)全双工串行UART通道低功耗闲置掉电模式
(9)门狗(WDT)双数指针
(9)片振荡器时钟电路
22 温度传感器介绍
DS18B20程序设定9~12位分辨率精度±05°C选更封装方式更宽电压适范围分辨率设定户设定报警温度存储EPROM中掉电然保存
温度传感器DS18B20引脚图3示
8引脚封装 TO-92封装
图3 温度传感器
引脚功说明:
NC :空引脚悬空
VDD :选电源脚电源电压范围3~55V工作寄生电源时引脚必须接
DQ :数输入输出脚漏极开路常态高电
GND :电源
DS18B20部结构四部分组成:64位光刻ROM温度传感器非挥发温度报警触发器THTL配置寄存器
光刻ROM中64位序列号出厂前光刻作该DS18B20址序列码64位光刻ROM排列:开始8位(28H)产品类型标号接着48位该DS18B20身序列号8位前面56位循环冗余校验码(CRCX8+X5+X4+1)光刻ROM作DS18B20相样实现根总线挂接DS18B20目
DS18B20中温度传感器完成温度测量12位转化例16位符号扩展二进制补码读数形式提供00625℃LSB形式表达中S符号位
12位转化12位数存储18B20两8特RAM中二进制中前面5位符号位果测温度05位0测数值00625实际温度果温度05位1测数值需取反加100625实际温度 例+125℃数字输出07D0H+250625℃数字输出0191H250625℃数字输出FF6FH55℃数字输出FC90H
DS18B20温度传感器部存储器包括高速暂存RAM非易失性电擦E2RAM者存放高温度低温度触发器THTL结构寄存器
暂存存储器包含8连续字节前两字节测温度信息第字节容温度低八位第二字节温度高八位第三第四字节THTL易失性拷贝第五字节结构寄存器易失性拷贝三字节容次电复位时刷新第六七八字节部计算第九字节冗余检验字节
该字节位意义:
TM R1 R0 1 1 1 1 1
低五位直1 TM测试模式位设置DS18B20工作模式测试模式DS18B20出厂时该位设置0户改动R1R0设置分辨率表1示:(DS18B20出厂时设置12位)
表1 DS18B20温度转换时间表
R1
R0
分辨率位
温度转时间
0
0
9
9375
0
1
10
1875
1
0
11
375
1
1
12
750
根DS18B20通讯协议机控制DS18B20完成温度转换必须三步骤:次读写前DS18B20进行复位复位成功发送条ROM指令发送RAM指令样DS18B20进行预定操作复位求CPU数线拉500微秒然释放DS18B20收信号等16~60微秒左右发出60~240微秒存低脉CPU收信号表示复位成功
23 温度传感器单片机连接
温度传感器单总线(1Wire)单片机P2.0连接P2.0单片机高位址线A8P2端口带部拉电阻8位双I/O输出缓级驱动(吸收输出电流)4TTL逻辑门电路该端口写1通部拉电阻端口拉高电时作输入口部存拉电阻某引脚外部信号拉低时会输出电流访问外部程序存储器16位址外部数存储器时执行MOVX DPTR指令表示P2端口送出高8位址数访问8位址外部数存储器时执行MOVX RI指令P2端口容特殊功寄存器(SFR)区中R2寄存器容整访问期间改变Flash编程程序校验时P2端口接收高位址控制信号图4DSl8820部结构图5DSl8820单片机接口电路
图4 DS18B20部结构图
图5 DS18B20单片机接口连接
24 复位信号外部复位电路
单片机P16端口MAX813门狗电路中喂狗信号输入端单片机执行次程序设置次喂狗信号清零门狗器件程序出现异常单片机引脚RST出现两机器周期高电复位该复位信号高电效效时间应持续24振荡脉周期两机器周期频率12 MHz晶体振荡器复位信号持续时间应超2μs完成复位操作
25 单片机报警电路
系统中报警电路发光二极限流电阻组成单片机P12端口连接P1端口作接法P2端口相Flash编程程序校验期间P1接收低8位址数
26 电源电路
该系统需稳定5 V电源设计时必须采满足电压电流稳定性求电源该电源采三端集成稳压器LM7805仅输入端输出端公端3引脚部设流保护热保护调整安全保护电路.需外接元件少方便作稳压电源图6电源电路连接图
图6 电源电路连接图
27 显示电路
采技术成熟74HCl64实现串转换LED显示分静态显示动态显示里采静态显示系统通单片机串行口实现静态显示串行口方式零状态工作移位寄存器方式波特率振荡频率112器件执行条SBUF作目寄存器命令时数便开始RXD端发送写信号效时相隔机器周期发送控制端SEND效允许RXD发送数时允许TXD端输出移位脉图7显示电路连接图
图7 显示电路连接图
28 门狗电路
系统中P16作门狗喂狗信号MAX813RESET单片机复位信号RST连接单片机执行次程序会门狗器件复位信号样手工方式实现复位键时SW—SPST会MAX813引脚产生超200 ms低电实门狗器件16 s时间没复位7引脚输出复位信号作相连接图图8示
图8 门狗器件MAX813连接图
3 软件设计
DSl8820数元件:64位激光Lasered ROM温度灵敏元件非易失性温度告警触发器THTLDSBl820单总线获取电源信号线高电时量贮存部电容器中单信号线低电时该电源断开直信号线变高电重新接寄生(电容)电源止外外接5 V电源DSl8820供电DSl8820供电方式灵活利外接电源增加系统稳定性性图9读取数流程图
开始
DS18B20初始化
启动温度转换
读取温度寄存器
跳读序列号操作
跳读序列号操作
DS18B20初始化
RET
LOW低八位 HIGH高八位
图9 读取数流程图
读出温度数LOW低四位温度数部分精确00625℃LOW高四位HIGH低四位温度整数部分HIGH高四位全部1表示负数全0表示正数先数提取出分三部分:数部分整数部分符号部分数部分进行四舍五入处理:05℃话位进105℃时候舍数负数时候显示前进行数转换整数部分取反加DS18B20低温度55℃整数部分高位换成表示负数图10温度数处理程序流程图
开始
提取整数部分存入HT
提取数部分存入LT
LT右移三位精度降低05摄氏度
HT++
数部分整数化
提取符号部分存入sign
LT否5
Sign0XF0
RET
负数表示flag1 HT~HT+1
Y
N
N
Y
图10 温度数处理流程图
4 数测试
温度传感器冰水混合物接触充分搅拌达热衡调节系统显示读数000(标定0℃)利气压计读出时气压强根气压强重力加速度计算出时实际压强根沸点压强关系查出沸点温度温度传感器放入沸水中显示读数稳定重新调节显示器显示读数等时沸点温度工作结束该温度计量程50℃~150℃读数精度01℃实际般0℃~100℃采0℃~50℃50℃~100℃精密水银温度计作检验标准设计温度计进行测试结果表明达该精度求
5 总结体会
作名电子信息工程四学生觉做单片机课程设计意义必做次课程设计程中感触深属查阅量设计资料设计更加完善查阅方面实际资料十分必必少
次次课程设计中运前学专业课知识:proteus仿真汇编语言模拟数字电路知识等然未独立应学程中带着问题学发现效率高做次课程设计收获
做课程设计必须做:设计程序前单片机部结构系统解知道该单片机资源清晰思路完整软件流程图设计程序时妄想次整程序设计反复修改断改进程序设计必路养成注释程序惯样资料保留交流提供方便设计中遇问题记录免次遇样问题
次课程设计中真正意识学中理联系实际学理知识实际中学单片机更程序常写读程中提高次课程设计收获
附录1 仿真图
附录2 程序源代码
DATA_BUS BIT P33
FLAG BIT 00H 标志位
TEMP_L EQU 30H 温度值低字节
TEMP_H EQU 31H 温度值高字节
TEMP_DP EQU 32H 温度数
TEMP_INT EQU 33H 温度值整数
TEMP_BAI EQU 34H 温度百位数
TEMP_SHI EQU 35H 温度十位数
TEMP_GE EQU 36H 温度位数
DIS_BAI EQU 37H 显示百位数
DIS_SHI EQU 38H 显示十位数
DIS_GE EQU 39H 显示位数
DIS_DP EQU 3AH 显示数位
DIS_ADD EQU 3BH 显示址
ORG 0000H
AJMP START
ORG 0050H 初始化
START
MOV SP #40H
MAIN LCALL READ_TEMP 调读温度程序
LCALL PROCESS 调数处理程序
AJMP MAIN
读温度程序
READ_TEMP
LCALL RESET_PULSE 调复位脉程序
MOV A #0CCH 跳ROM命令
LCALL WRITE
MOV A #44H 读温度
LCALL WRITE
LCALL DISPLAY 显示温度
LCALL RESET_PULSE 调复位脉程序
MOV A #0CCH 跳ROM命令
LCALL WRITE
MOV A #0BEH 读缓存命令
LCALL WRITE
LCALL READ
RET
复位脉程序
RESET_PULSE
RESET SETB DATA_BUS
NOP
NOP
CLR DATA_BUS
MOV R7 #255
DJNZ R7
SETB DATA_BUS
MOV R7 #30
DJNZ R7
JNB DATA_BUS SETB_FLAG
CLR FLAG
AJMP NEXT
SETB_FLAG
SETB FLAG
NEXT MOV R7 #120
DJNZ R7
SETB DATA_BUS
JNB FLAG RESET
RET
写命令
WRITE SETB DATA_BUS
MOV R6 #8
CLR C
WRITING
CLR DATA_BUS
MOV R7 #5
DJNZ R7
RRC A
MOV DATA_BUS C
MOV R7 #30H
DJNZ R7
SETB DATA_BUS
NOP
DJNZ R6 WRITING
RET
循环显示段位
DISPLAY
MOV R4 #200
DIS_LOOP
MOV A DIS_DP
MOV P2 #0FFH
MOV P0 A
CLR P27
LCALL DELAY2MS
MOV A DIS_GE
MOV P2 #0FFH
MOV P0 A
SETB P07
CLR P26
LCALL DELAY2MS
MOV A DIS_SHI
MOV P2 #0FFH
MOV P0 A
CLR P25
LCALL DELAY2MS
MOV A DIS_BAI
MOV P2 #0FFH
MOV P0 A
MOV A TEMP_BAI
CJNE A #0SKIP
AJMP NEXTT
SKIP CLR P24
LCALL DELAY2MS
NEXTT NOP
DJNZ R4 DIS_LOOP
RET
读命令
READ SETB DATA_BUS
MOV R0 #TEMP_L
MOV R6 #8
MOV R5 #2
CLR C
READING
CLR DATA_BUS
NOP
NOP
SETB DATA_BUS
NOP
NOP
NOP
NOP
MOV C DATA_BUS
RRC A
MOV R7 #30H
DJNZ R7
SETB DATA_BUS
DJNZ R6 READING
MOV @R0 A
INC R0
MOV R6 #8
SETB DATA_BUS
DJNZ R5 READING
RET
数处理
PROCESS
MOV R7 TEMP_L
MOV A #0FH
ANL A R7
MOV TEMP_DPA
MOV R7 TEMP_L
MOV A #0F0H
ANL A R7
SWAP A
MOV TEMP_L A
MOV R7 TEMP_H
MOV A #0FH
ANL A R7
SWAP A
ORL A TEMP_L
MOV B #64H
DIV AB
MOV TEMP_BAIA
MOV A #0AH
XCH A B
DIV AB
MOV TEMP_SHIA
MOV TEMP_GEB
MOV A TEMP_DP
MOV DPTR #TABLE_DP
MOVC A @A+DPTR
MOV DPTR #TABLE_INTER
MOVC A @A+DPTR
MOV DIS_DP A
MOV A TEMP_GE
MOV DPTR #TABLE_INTER
MOVC A @A+DPTR
MOV DIS_GE A
MOV A TEMP_SHI
MOV DPTR #TABLE_INTER
MOVC A @A+DPTR
MOV DIS_SHI A
MOV A TEMP_BAI
MOV DPTR #TABLE_INTER
MOVC A @A+DPTR
MOV DIS_BAI A
RET
DELAY2MS
MOV R6 #3
LOOP3 MOV R5 #250
DJNZ R5
DJNZ R6 LOOP3
RET
TABLE_DP
DB 00H01H01H02H03H03H04H04H05H06H
DB 06H07H08H08H09H09H
TABLE_INTER
DB 03FH006H05BH04FH066H
DB 06DH07DH07H07FH06FH
END
文档香网(httpswwwxiangdangnet)户传
《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档