温度仪控制课程设计报告

上传人:w****3 文档编号:53160098 上传时间:2022-02-10 格式:DOCX 页数:6 大小:13.10KB
收藏 版权申诉 举报 下载
温度仪控制课程设计报告_第1页
第1页 / 共6页
温度仪控制课程设计报告_第2页
第2页 / 共6页
温度仪控制课程设计报告_第3页
第3页 / 共6页
资源描述:

《温度仪控制课程设计报告》由会员分享,可在线阅读,更多相关《温度仪控制课程设计报告(6页珍藏版)》请在装配图网上搜索。

1、温度仪控制课程设计报告温度仪控制课程设计报告温度显示仪摘要:本设计采用LCD液晶屏幕显示系统,以 AT89C52单片机为 核心,温度采集功能模块组成。本系统大部分功能由软件来实现,吸收了硬件软件化的思 想,大部分功能通过软件来实现,使电路简单明了,硬件少、系统稳定性大大提高,实现了温度采集并显示。关键字:AT89C52单片机、LCD液晶显示、温度传感器。一、设计题目1二、系统实现框图和硬件清单 2三、设 计原理图3四、软件流程图和软件清单5五、试验中遇到的问题11六、实验体会与总结12参考文献13 一、设计题 目1、题目: 温度显示仪 2、 设计原理说明:温度计在现实生活中有着广泛的作用,如室

2、内、实验室等。本设计应用单片机最小系统,配上少数的外部元件,构成 一个简单的精度为3位度的温度显示仪。本次设计主要是为了掌握利用单片机设计实用电路的方 法。设计任务:(1)、实现现场温度采集;(2)、实现温度在 LCD上的显示;(3)、使用一个按键实现复位二、系统实现框图和硬件清单1、系统实现框图:2、元器件参数列表:1、AT89S52 芯片:一片2、1602液晶显示器 :一片3、18B20温度传感器:一个4、电阻1K和5.1K :各一个 5、瓦片电容30pF 2个,极性电容22uF一个 6、交流 220V转直流5V电源3、18B20温度传感器 引脚图:4、1602液晶显示器引脚图:三、设计原

3、理图 Protues仿真图 实物图:四、软件流程图和软件清单温度测量流程图如图11所示:图11温度测量程序流程图软件清单: 主程序:#include #include #define uchar unsigned char #define uint unsigned int sbit DQ = P3 ; 定义 DS18B20 端口 DQ bit presence ; 检测 18b20 是否插好 sbit LCD_RS = P2 ; sbit LCD_RW = P2 ; sbit LCD_EN = P2 ; uchar code cdis1= “ XIAN ZAI ; uchar code cd

4、is2 = .CWEND;U:uchar code cdis3 = DS18B20 ERR0R ”; uchar code cdis4 = PLEASE CHECK ; unsigned char data temp_data2 = 0x00,0x00 ; unsigned char data display5=0x00,0x00,0x00,0x00,0x00 ; unsigned char code ditab16=0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04, 0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09; unsigne

5、d charcodemytab8=0x0C,0x12,0x12,0x0C,0x00,0x00,0x00,0x00; #definedelayNOP() ; _nop_() ;_nop_() ;_nop_() ;_nop_() ; 1a*/ void delay1(int ms) unsigned char y ; while(ms-) for(y = 0 ; y 0 ; i-) DQ = 0 ; / 给脉冲信号dat = 1 ; DQ = 1 ; / 给脉冲信号 if(DQ) dat |= 0x80 ; Delay(4) ; return (dat) ; /* 写一 个字节 */ WriteO

6、neChar(unsigned char dat) unsigned char i = 0 ; for (i = 8 ; i 0 ; i-) DQ = 0 ; DQ = dat Delay(5) ; DQ = 1 ; dat=1 ; /* 读取温度 */ Read_Temperature(void) Init_DS18B20() ; WriteOneChar(0xCC) ; /跳过读序号列号的操作 WriteOneChar(0x44) ; / 启动温度转换 Init_DS18B20() ; WriteOneChar(0xCC); 跳过读序号歹U号的 操作 WriteOneChar(0xBE);

7、 读取温度寄存器temp_data0=ReadOneChar(); 温度低 8 位 temp_data1= ReadOneChar(); 温度高8位 /*数据转换与温度显示*/Disp_Temperature()display4=temp_data0display0=ditabdisplay4+0x30 ;/ 查表得小数位的值 display4=(temp_data0 display3=display4/100+0x30 ;display1=display4%100 ; display2=display1/10+0x30 ;display1=display1%10+0x30 ; if(disp

8、lay3=0x30) 高位为 0,不显示 display3=0x20 ; if(display2=0x30) / 次高位为0,不显示lcd_wdat(display3)lcd_wdat(display2)lcd_wdat(display1)lcd_wdat(display0)display2=0x20 ; ;百位数显示;十位数显示;个位数显示;小数位数显示 /*lcd_pos(0x48);lcd_pos(0x49);lcd_pos(0x4a);lcd_pos(0x4c);DS18B20 OK 显示菜单 */ void Ok_Menu () uchar m ; lcd_init(); 初始化LC

9、D lcd_pos(0) ; /设置显示位置为第一行的第1个字符 m =0 ; while(cdis1m != 0 ) 显示字符 lcd_wdat(cdis1m); m+ ; lcd_pos(0x40) ; /设置显示位置为第二行第1个字符m = 0 ; while(cdis2m != 0 ) lcd_wdat(cdis2m) ; / 显示字 符 m+ ; writetab() ; / 自定义字符写入 CGRAM delay1(5); lcd_pos(0x4d) ; lcd_wdat(0x00); 显示自定义字符 /*DS18B20 ERROR 显示菜单 */ void Error_Menu

10、() uchar m ; lcd_init(); 初始化LCD lcd_pos(0); 设置显示位置为第一 行的第1个字符 m = 0 ; while(cdis3m != 0 ) / 显示字符 lcd_wdat(cdis3m) ; m+ ; lcd_pos(0x40) ; / 设置显示位置 为第二行第 1 个字符 m = 0 ; while(cdis4m != 0 ) lcd_wdat(cdis4m); 显示字符 m+ ; /* 主函数 */ void main() Ok_Menu () ; do Read_Temperature(); / 读取 温度 Disp_Temperature();

11、显示温度 while(!presence); Error_Menu () ; do Init_DS18B20() ; while(presence) ; 头 文件:intrins.h #ifndef INTRINS_H #define INTRINS_H extern void _nop_ (void); extern bit _testbit_ (bit); extern unsignedchar _cror_(unsignedchar, unsignedchar);externunsignedint _iror_(unsignedint, unsignedchar);externunsig

12、nedlong _lror_(unsignedlong, unsignedchar);externunsignedchar _crol_(unsignedchar, unsignedchar);externunsignedint _irol_(unsignedint, unsignedchar);externunsignedlong _lrol_(unsignedlong, unsignedchar);externunsigned char _chkfloat_(float); extern void _push_ (unsigned char _sfr); extern void _pop_

13、 (unsigned char _sfr); #endif 五、 试验中遇到的问题1、硬件电路布局不合理导致焊线有问题2、LCD液晶显示亮度调节问题3、程序调节比较麻烦六、实验体会与总结通过这个课程的设计,学会了用C语言写单片机程序的简单方法,同时也锻炼我们使用仪器和计算 机、单片机开发板辅助设计的技能,使学过的知识得到了巩 固与复习。但更重要的是把原来所学的理论知识与实际的生活联系在一起,使学习变成一种乐趣,把抽象的理论知识形象具体 化。在实验过程锻炼了自己的思维能力和动手能力。在通过题目设计电路的过程中,加强了我思考问题的的完整性,整体性和与实际生活联系的可行性。在方案设计选择和芯片的选择上,使我对理论知识和芯片的原理和功能有了更深刻的理解。参考文献:1、单片机 Keil Cx51应用开发技术 王为青程国钢编著 人民邮电由版社 2、单片机原理与接口技术肖金球清华大学生版社 13

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!