学士学位论文—-基于单片机的温度采集显示电路设计.doc
《学士学位论文—-基于单片机的温度采集显示电路设计.doc》由会员分享,可在线阅读,更多相关《学士学位论文—-基于单片机的温度采集显示电路设计.doc(29页珍藏版)》请在咨信网上搜索。
天津职业技术师范大学电子工程学院 电子信息工程 课程设计报告 同组学生姓名(学号): 班 级: 电 信 1302 任务分工: 设计时间: 2015年12月28 日 —— 2016 年 1月8日 指导教师: 目 录 题目:基于单片机的温度采集显示电路设计 一、 课程设计的目的与要求(含设计指标) 3 二、 方案论证选择 3 三、 原理设计(或基本原理) 4 四、 方案实现与测试(或调试) 12 五、 课程设计小结 六、 参考文献 个人总结(姓名) 15 一、 课程设计的目的与要求(含设计指标) 1. 课程设计目的: (1) 利用单片机及相应温度传感器设计单检测点数字温度计 (2) 精度误差:0.5℃以内;测温范围:-10 ℃~85 ℃ (3) LCD实时显示 (4) 完成对设计系统测试 2. 课程设计的要求: (1) 以AT89C51单片机为核心 (2) DS18B20温度传感器进行温度的测量 (3) LCD1602液晶显示屏上实时显示 二、 方案论证及选择 1方案一 由于是测温电路的设计,所以可以用热敏电阻之类的器件。利用它的感温效应,在将随被测温度的变化而产生变化的电压或电流采集过来。并用具有A/D 通道的单片机,再进行A/D 转换之后,就能用单片机来实行数据处理,之后,在显示的电路上,就能将被测的温度显示出来。但是,这种设计需要使用到A/D转换电路,并且其中还牵涉到了电阻和温度之间对应值的计算。感温电路不仅比较麻烦。而且更在对所采集到的信号进行放大的时候容易受到温度的影响从而出现较大的偏差。 2方案二 利用数字式温度传感器DS18B20来进行测量温度。由于它的输出信号全数字化,所以便于单片机的处理和控制,并且还能省去传统测温方法中很多外围的电路。而且它的物理和化学性都很稳定,更加适用于做工业测温。此外它的精确度也很高,在-10 ℃~85 ℃范围内可以精确到±0.5 ℃。完全满足设计要求。 DS18B20 的最大的特点之一就是它采用了单总线形式的数据传输。由数字温度传感器DS18B20和单片机AT89C51构成的数字温度计,它可以直接输出温度的数字信号。 使用51 单片机进行控制,软件编程的自由度很大,能通过编程的方式来实现多种的算术算法和逻辑控制。而且它体积小、硬件实现方便、组合安装简单。既能单独的对多个DS18B20控制工作,还能够与PC 机联接通信上传数据。 此系统采用AT89C51单片机来控制数字温度传感器DS18B20从而进行实时温度的检测与显示,可以实现快速测量环境温度 这样的设计就能够不使用A/D转换器,从而不仅能令系统提高精确度,还可以大大节约单片机的系统资源。 3方案选择 所以经过上述两种方案的对比,本次设计挑选方案二来作为设计方案。因为方案二与方案一对比,它不仅硬件系统更为简单,并且实现功能却更加强大,而且方案二本身模块化的设计又让它的系统通用性远远高于方案一。所以在最终的对比下选择了这个方案。 三、 原理设计(或基本原理) 3.1 单片机模块 单片机几乎集成了一个完善了的中央处理单元。它是由CPU、随即存取数据存储器、只读程序存储器、输入输出电路(I/O口),还有可能包括定时/计数器、串行通信口、显示驱动电路(LCD和LED驱动电路)、脉宽调制电路、模拟多路转换器及A/D转换器等多种电路均集成在了同一个单块芯片之上,从而,构成了一个最小但完善的计算机任务。 因此,它的处理功能强。在中央处理单元之中集成了既方便又灵活的专用寄存器,这让人们使用单片机得到了很大的便利。它把微型计算机的主要部件都集成在一块芯片之上,从而让数据的传送距离大大的缩短了,运行的速度加快了,可靠性提高了,抗干扰能力加强了。因为它是属于芯片化的微型计算机,所以每个功能部件在芯片上的布局与结构都得到最优化,使得工作也相对稳定。 此单片机拥有40个引脚与32个外部双向输入/输出(I/O)端口,此外,它还内含2个外中断口和3个16位可编程定时计数器与2个全双工串行通信口外加2个读写口线。不过区别于AT89S52的是,它只可以用常规的方法来进行程序的编写而不能够在线编程。为了可以更有效地降低开发的成本,它与通用的微处理器与Flash存储器结合在了一起,尤其是能够反复擦写的Flash存储器。如图 1所示为AT89C51引脚图。 图 1 AT89C51引脚图 l VCC:供电电压。 l GND:接地。 l P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。 l P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。 l P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。 l P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。 l RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时当8051通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指钟写入07H,其它专用寄存器被清“0”。RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态。 l ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。 l PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 l EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 l XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 l XTAL2:来自反向振荡器的输出。 3.2温度采集模块 3.2.1温度传感器的介绍 DS18B20数字温度传感器是美国DALLAS公司生产的1-Wire,即单总线器件,它是世界上最早的支持 "一线总线"接口的温度传感器。它具有体积更小、适用电压更宽、功耗更低、抗干扰能力更高性能、配处理器更容易等优点,它能够直接将温度转化成串行数字信号(按9位二进制数字)给单片机进行处理,还能在同一总线上可以挂接多个传感器芯片. DS18B20可编程温度传感器它包含3个管脚。DS18B20的外形和引脚排列图如图 2所示。 图 2 DS18B20的外形及管脚图 正如图中所示:GND引脚为接地线;DQ引脚为数据输入/输出的接口,它经过一个较弱的上拉电阻和单片机相连;VDD引脚为电源接口,它既能够由数据线提供电源,又能够由外部提供电源,范围3.0V~5.5V。 DS18B20具体特性如下: (1) DS18B20因为采用了单总线技术,可通过串行口线,也可通过其他I/O口线与微机直接连接传感器直接输出被测温度值(二进制数)。 (2) 在DS18B20中的每个器件上都有独一无二的序列号。 (3) 实际应用中不需要外部任何元器件即可实现测温。 (4) 测温范围-55~+125℃,以0.5℃递增(华氏器件-67~+257℉,以0.9℉递增)。 (5) “0”功耗待机。 (6) 数字温度计的分辨率用户可以从9位到12位选择。 (7) 内部有温度上、下限告警设置。 (8) 用户可自设定非易失性的报警上下限值。 (9) 支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温。 (10) 负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 DS18B20 DS18B20中的温度传感器能够完成对温度的测量,就拿12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。详情见图 3 。 图 3 DS18B20温度值格式表 这个为12位转化后所得到的12位数据,存储于DS18B20的二个8比特的RAM里,二进制里的前面5位为符号位,若测得的温度>“0 ℃”,则该5位是“0”,只须用测得的数值乘于0.0625就能够得到实际的温度;若温度<“0℃”,则该5位是“1”,要将测得的数值取反再加“1”,再乘于0.0625。才能够得到实际的温度。比如说:+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH。详情见图 4 。 图 4 DS18B20转化温度形式 3.2.3 DS18B20的工作原理 按照DS18B20的通讯协议,主机控制DS18B20要完成温度的转换必须得经过三个步骤才可: 1) 每一次读写之前都必须对DS18B20进行复位。 2) 复位成功之后发送一条ROM指令。 3) 最后发送RAM指令,这样才能够对DS18B20进行预定的操作。 复位时,先得要求主CPU对数据线下拉500μs再释放,待DS18B20收到信号,等待15~60μs左右后,再发出60~240μs的存在低脉冲,最后主CPU收到此信号表示复位成功。它的工作时序有初始化时序和写时序还有读时序。具体工作方法如图 5、6、7所示。 1) 初始化时序 图 5 初始化时序 总线上的一切传输过程均是以初始化开始的。主机响应应答脉冲。应答脉冲让主机知道,总线上有从机设备,并准备就绪。主机输出低电平,且保持低电平的时间至少480微秒,从而产生复位脉冲。然后主机释放总线,4.7KΩ上拉电阻将总线拉高,延时15~60微秒后进入接受模式,用来产生低电平应答脉冲。如果为低电平,就再延时480微秒。 2) 写时序 图 6 写时序 写时序包含写“0”时序与写“1”时序。一切写时序最少要60微秒,并且在两次独立的写时序当中最少要1微秒的恢复时间。两者都是从总线拉低开始。写“1”时序:主机先输出低电平,延时2微秒后释放总线再延时60微秒。写“0”时序:主机先输出低电平,延时60微秒后释放总线再延时2微秒。 3) 读时序 图 7 读时序 总线器件只在主机发出读时序的时候,才向主机传输数据。因此,在主机发出读数据命令后,定要马上产生读时序,从而使从机可以够传输数据。一切读时序至少要60微秒,而在两次独立的读时序当中至少需要1微秒的恢复时间。每个读时序均靠主机发起,且至少拉低总线1微秒。主机在读时序的时候一定要释放总线,且在时序开始后的15微秒中采样总线状态。主机输出低电平延时2微秒后主机转入输入模式,再延时12微秒后读取总线当前电平,然后延时50微秒。 简单的读取温度值的流程如下: 初始化 发送温度转换命令 跳过ROM操作跳过ROM操作 发送读取温度命令 跳过ROM操作 读取温度值 命令 跳过ROM操作 3.3 显示器模块 3.3.1 显示器的介绍 LCD液晶显示器由于它功耗很低,同时体积轻巧,屏幕内容显示非常丰富,且厚度纤薄,等诸多的优点。所以广泛的被使用在了微型仪表和家用电器等功耗不高的应用系统当中。 根据显示内容和方式的不同可以分为数显LCD、点阵字符LCD、点阵图形LCD。它是由些许个5×7或5×11等点阵符位组成的。每一个点阵字符位都可以显示一个字符。且每一个点阵字符位之间都有一定点距的间隔,从而就能起到了字符间距和行距的作用。本次设计这次所使用的是1602LCD液晶显示器,它也叫做1602字符型液晶,意思就是显示屏能显示的内容为16×2,也就是能够在屏幕上看到两行字符且每行显示的都是16个字符的。它是一种专门用来显示字母、数字、符号等而不能显示汉字的点阵型液晶模块。 3.3.2 显示电路的设计 1602LCD液晶显示器引脚如图 8 所示。 图 8 LCD1602液晶显示器 1602LCD液晶显示器功能引脚功能见图 9。 图 9 1602液晶引脚说明 图 10 1602液晶模块内部控制指令 LCD液晶显示器和单片机1602的连接电路非常简单,RS、RW、EN分别接主控单片机的P22、P21、P20脚,DB0~DB7接到主控单片机的P0数据接口。VSS端接地,VDD供电,如图 11所示 图 11 LCD液晶显示电路 3.4 元件清单 原件名称 数量 参数 备注 AT89C51 1 U1 LCD1602 1 LCD1 DS18B20 1 U2 电容 3 1nF C1 C2 C3 电阻 2 10K、200 R1 R2 晶振 1 X1 排阻 1 10K RP1 滑动变阻器 1 10K RV2 四、 方案实现与测试(或调试) 1、 烧录程序 2、 电路连接(见原理图) 3、 方案实现: (1) 初始化AT89C51单片机、温度传感器DS18B20、LCD1602液晶显示屏 (2) 温度传感器转化温度,并将数据传送会给AT89C51单片机 (3) AT89C51将发送显示命令给LCD1602,然后将数据发送到1602,显示 基本流程图: 开始 初始化:单片机、 显示屏、温度传感器、 采集温度 传送温度信息 LCD显示 温度更新 4、 测试过程 (1) 将编写并没有错误和警告的程序烧录到单片机里 (2) 检查电路连线,查看是否有接触不良或原件损坏 (3) 上电,查看是否正常工作 LCD不显示解决方法: (1) 检查显示屏是否插好,排除接触不良 (2) 调节控制屏幕亮度的电位器 (3) 返回查看程序是否编写正确 (4) 对比原理图和程序编写接口(检查使能端EN、寄存器选择RS、读写选择RW是否连接错误) (5) 检查DS18B20是否接触良好 5、 测试结果 (1) 没有插DS18B20时,LCD1602显示+000.00C (2) 插上DS18B20时,LCD1602显示环境温度如+022.35C 五、 课程设计总结 两周的时间很长也很短,每一次课程设计都可以让我们收获不同的东西。课程设计诚然是一门专业课,督促我们去学习专业知识,提高自我的专业技能。此次课程设计是以温度采集幷实时显示位总目标,以89C51单片机最小应用系统为总控制中心,辅助设计温度采样电路、LCD显示电路。 本次设计的重点、难点是: 1) 掌握温度传感器的原理、结构、应用等; 2) 考虑从非电量信号到电量信号的电路实现原理以及单片机的接口; 3) 熟悉MCS-51编程的技术; 4) 整体电路的仿真调试。 本次设计的优点:采用单片机AT89c51,性价比高;温度传感器DS18B20自带温度转化,精度高,测试范围广。 由于时间精力有限,实现了对温度的采集与显示,没有扩展功能。 六、 参考文献 [1] 郭天祥,《51单片机C语言教程入门、提高、开发、拓展全攻略》,北京,电子工业出版社,2009年 [2] 姜志海、黄玉清、刘连鑫,《单片机原理及应用》,北京,电子工业出版社,2009年 [3] 谭浩强,《C程序设计》,北京,清华大学出版社,1998年 中国知识网、慕课网 个人总结 阮玲的个人总结: 这次课程设计让我学会了很多东西,加深的不仅仅是对单片机的了解,也深深的感受合作的力量,得到帮助和帮助别人都是一件很让人愉快的。 课程设计让我意识到许多我以前忽视的东西,通过两周的学习让我的眼界更加开阔,也让我更加体会到所学专业的重要性,明白自己所学的东西是有价值的,同时让我对电子专业产生兴趣,能自己完成属于自己东西。 所谓课程设计,从理论到实践,有很大的间隙,在这段日子里,我们努力的将它填平,可以说真的是话费了许多精力,但是可以学到很多很多的东西。这个学期开设有单片机课程,课设过程中不仅可以巩固了所学的知识,而且学到了很多在书本上所没有学到过的知识。特别是我们开设的课程主要使用汇编语言来实现单片机功能,就我自己来说,更喜欢使用C语言,自己觉得C语言更容易理解。 这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正的达到学习的效果,在进行作品调试的过程中,我们也遇到了不少麻烦,不会安装Keil软件、烧录程序等等,通过解决这些问题从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,但高兴的是最终都得到了解决。此次设计也让我明白了思路即出路,有什么不懂不明白的地方要及时请教或上网查询,只要认真钻研,动脑思考,动手实践,就没有弄不懂的知识,收获颇丰。 刚准备课程设计是,班里组织分组,于是我们仨自然走到一起,组成一个团队。我很喜欢我的队友们,我认为他们很有责任心,做事时仔细、认真。接着我们从三个课题中选取了温度显示,在我们看来,做万年历和计算器比较难,保守的选择了第三个课题。 刚开始我对课题设计的流程毫不了解,于是我们一起去图书馆查阅相关资料,在我们的小组的讨论下我有了初步的认识与了解,根据设计报告的流程,接着两周我们就开始了我们忙碌的课程设计生活。开始进行编写程序时,确实是无从下手,因为没有很好的C语言基础。对所用芯片LCD1602、DS18B20的功能都不是很清楚,以前从来没有接触过,只是现在需要的时候才开始用它,它的功能都不很清楚。因为使用AT89C51单片机作为核心控制部件,要实现温度显示的功能,将显示屏和温度传感器连接起来,编程时最为重要的。我开始比着课本敲代码,一边敲写代码一边思考每个语句的作用。编写完程序,开始检查是否有语句、语法错误,但是却读不懂程序编译警告,错误也不知道该怎么修改,经常会遇到一些问题,比如少一个大括号,无意中漏掉了一些语句等,是自己感觉有点力不从心。就开始不停的查阅芯片手册。有时候拿着芯片资料也会看不懂,只好去找所谓学霸强人大神等来帮忙解释。在老师提供的资料包里观看视屏教程,与同伴一起讨论等等,只要能够解决难题,我们都愿意去尝试,学习也是一件很快乐的事情,只要你自己愿意。怀着这些疑问,就去咨询老师,梅健强老师给了我们很大的帮助。 这次课程设计之后,使我明白了做任何事情都要认真仔细,不然的话,会花更多的时间才能做好。课程设计有利于提高我们的动手能力,能把我们所学的书本知识运用到实际生活中去,同时也丰富了我们的业余生活,提高我们对知识的理解能力。 这两周也让我意识到了团队合作的精神,以及我们要做一个课题设计需要的严谨步骤与思路,还明白在今后我需要更加注重学以致用的精神,不仅能有利于更好的让我们学到课本知识而且增强我们的动手能力,增加学习的兴趣。在这感谢我这组的另外的两个同学,我们的默契合作才完成这次课题设计的任务,另外也感谢帮助我的老师与同学。 宋辉的个人总结 课程设计个人总结 我们完成了为期两周的课程设计,通过这次课程设计我深深体会到,在已度过的大学时间里,我们大多数接触的是专业课.我们在课堂上掌握的仅仅是专业课的理论知识, 如何去锻炼我们的实践能力?如何把我们所学的专业基础课理论知识运用到实践中去呢?我想做类似的课程设计就为我们提供了良好的实践平台。 虽然在大三开学初我对这门课并没有什么兴趣, 觉得那些程序枯燥乏味, 但在这次课程设计后我发现自己在一点一滴的努力中对它的兴趣也在逐步的增加。我们有三位同学一起合作,我们默契的配合使我们组第一个完成了我们的设计,而且设计达到了我们预期的效果。这次课程设计对我来说学到的不仅是那些知识,更多的是团队和合作。现在想来,也许学校安排的课程设计有着它更深层的意义吧, 它不仅仅让我们综合那些理论知识来运用到设计和创新中, 还让我们知道了一个团队凝聚在一起时所能发挥出的巨大潜能巨大力量!两周来我们一起找资料,选方案,再选方案是大家意见不统一然后我们一起上网进行查阅敲定方案后进行仿真,调试程序,最后我们的单片机的温度采集显示电路设计成功完成。两个星期后的今天我已明白课程设计对我来说的意义, 它不仅仅是让我们把所学的理论知识与实践相结合起来,提高自己的实际动手能力和独立思考的能力,更重要的是同学间的团结,使得我们这次比别的同学节省了时间,。 回顾起此课程设计,至今我仍感慨颇多,从理论到实践,在这段日子里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。设计过程中,也对团队精神的进行了考察,让我们在合作起来更加默契,在成功后一起体会喜悦的心情。果然是团结就是力量,只有互相之间默契融洽的配合才能换来最终完美的结果。 在这学期的课程设计中,不仅培养了我们的独立思考、动手操作的能力,在各个其它能力上也都有了提高。更重要的是,在课程设计中,我们学会了很多学习的方法,而这是今后最实用的,真的是受益匪浅。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。这对于我们的将来也有很大的帮助。以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。就像中国提倡的艰苦奋斗一样,我们在完成这次课程设计后变的更加成熟,能够面对需要面对的事情 年晓琴的个人总结 通过这次的课程设计,使我学会了很多东西,包括书本上的理论知识及书本上学不到的知识。中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原,也暴露出了前期我在这方面的知识欠缺和经验不足。实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。 通过课程设计,使我加深了对所学理论知识的理解与巩固,并能将课本上的纯理论应用到实践中,进一步加深了对知识的认识。让我明白只有理论是不够的,得要把所学到的理论知识结合实际,同时,也有助于对其他知识的理解。现在,我对Matlab,单片机有了更深入的理解。 培养了我耐心、仔细谨慎的工作态度。这次课程设计的内容最多的是单片机。在调试过程中,对芯片的工作原理以及合理的排版都要有细致的规划,这是最考验一个人的耐心与严谨态度的过程,只有这样才能使仿真更准确、更美观,调试更准确。课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节是对学生实际工作能力的具体训练和考察过程.回顾起此次课程设计,至今我仍感慨颇多,的确,从选题到定稿,从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟跟毕业设计差不多,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解不够深刻,掌握得不够牢固,比如说单片机的工作原理,不懂如何画流程图,对如何排版,仿真也掌握得不好…通过这次课程设计之后,一定把以前所学过的知识重新温故。 通过这次课程设计,使我更充分认识了团队合作的重要性。由于这次课设是以小组为单,还要查找资料,每个人都有分工。所以在进行分析的过程中每个成员都要保证自己的准确,查找资料时都要有耐心,这样才能确保小组顺利完成任务。在这次课设过程中,我们小组成员之间都互帮互助、共同思考,相互查漏补缺,互相给予信心,这样得以保证高速、高效率的完成任务,充分体现了团队精神。课程设计就是简单的毕业设计,通过这次课设。给予我们实践的机会使我积累了一定的经验,为以后的学习打下了基础,也为毕业设计铺平了道路。整个设计通过了软件和硬件上的调试。我想这对于自己以后的学习和工作都会有很大的帮助。在这次设计中遇到了很多实际性的问题,在实际设计中才发现,书本上理论性的东西与在实际运用中的还是有一定的出入的,所以有些问题不但要深入地理解,而且要不断地更正以前的错误思维。一切问题必须要靠自己一点一滴的解决,而在解决的过程当中你会发现自己在飞速的提升。对于教材管理系统,其程序是比较简单的,主要是解决程序设计中的问题而程序设计是一个很灵活的东西,它反映了你解决问题的逻辑思维和创新能力,它才是一个设计的灵魂所在。因此在整个设计过程中大部分时间是用在程序上面的,很多子程序是可以借鉴书本上的,但怎样衔接各个子程序才是关键的问题所在,这需要对系统的结构很熟悉。因此可以说系统的设计是软件和硬件的结合,二者是密不可分的。 通过这次课程设计我也发现了自身存在的不足之处,虽然感觉理论上已经掌握, 但在运用到实践的过程中仍有意想不到的困惑,经过一番努力才得以解决,这也激发了我今后努力学习的兴趣,我想这将对我以后的学习产生积极的影响。其次这次课程设计让我充分认识到团队合作的重要性,只有分工协作才能保证整个项目的有条不絮。另外在课程设计的过程中,当我们碰到不明白的问题时,指导老师总是耐心的讲解,给我们的设计以极大的帮助,使我们获益匪浅。因此非常感谢老师的教导。通过这次设计,我懂得了学习的重要性,了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,这将为自己今后的学习和工作做出了最好的榜样。我觉得作为一名电信专业的学生,这次课程设计是很有意义的。更重要的是如何把自己平时所学的东西应用到实际中。虽然自己对于这门课懂的并不多,很多基础的东西都还没有很好的掌握,觉得很难,也没有很有效的办法通过自身去理解,但是靠着这一个多礼拜的“学习”,在小组同学的帮助和讲解下,渐渐对这门课逐渐产生了些许的兴趣,自己开始主动学习并逐步从基础慢慢开始弄懂它。我认为这个收获应该说是相当大的。一开始我们从资料库找来了程序,做到后来发现很多程序都是不完整的,这让我们伤透了脑筋。但我们已经很努力的在做了,我们尽力了,应该说这是通过我们小组成员的共同努力和动脑完成的,虽然内容并不是很复杂,但是我们觉得设计的过程相当重要,学到了很多,收获了很多。我觉得课程设计反映的是一个从理论到实际应用的过程,但是更远一点可以联系到以后毕业之后从学校转到踏上社会的一个过程。小组人员的配合﹑相处,以及自身的动脑和努力,都是以后工作中需要的。 最后,我对我们小组的成员同学表示衷心的感谢,因为我们是是靠互帮互助才能完成课程设计的,我想其他同学也跟我有一样感受,我认为我们的工作是一个团队的工作,团队需要个人,个人也离不开团队,必须发扬团结协作的精神。某个人的离群都可能导致导致整项工作的失败。课设中只有一个人知道原理是远远不够的,必须让每个人都知道,否则一个人的错误,就有可能导致整个工作失败。团结协作是我们课设成功的一项非常重要的保证。而这次课设也正好锻炼我们这一点,这也是非常宝贵的。我们很感谢老师对我们的指导,对我们的帮助。 对我而言,知识上的收获重要,精神上的丰收更加可喜。挫折是一份财富,经历是一份拥有。这次实习必将成为我人生旅途上一个非常美好的回忆! 附录1:程序 /******************************************************************************* * 实 验 名 : 18B20温度显示试验 * 实验说明 : LCD1602显示温度值。 * 连接方式 : 见连接图 * 注 意 : *******************************************************************************/ #include<reg51.h> #include"lcd.h" #include"temp.h" void LcdDisplay(int); /******************************************************************************* * 函数名 : main * 函数功能 : 主函数 * 输入 : 无 * 输出 : 无 *******************************************************************************/ void main() { LcdInit(); //初始化LCD1602 LcdWriteCom(0x88); //写地址 80表示初始地址 LcdWriteData('C'); while(1) { LcdDisplay(Ds18b20ReadTemp()); // Delay1ms(1000);//1s钟刷一次 } } /******************************************************************************* * 函数名 : LcdDisplay() * 函数功能 : LCD显示读取到的温度 * 输入 : v * 输出 : 无 *******************************************************************************/ void LcdDisplay(int temp) //lcd显示 { unsigned char datas[] = {0, 0, 0, 0, 0}; //定义数组 float tp; if(temp< 0) //当温度值为负数 { LcdWriteCom(0x80); //写地址 80表示初始地址 LcdWriteData('-'); //显示负 //因为读取的温度是实际温度的补码,所以减1,再取反求出原码 temp=temp-1; temp=~temp; tp=temp; temp=tp*0.0625*100+0.5; //留两个小数点就*100,+0.5是四舍五入,因为C语言浮点数转换为整型的时候把小数点 //后面的数自动去掉,不管是否大于0.5,而+0.5之后大于0.5的就是进1了,小于0.5的就 //算由?.5,还是在小数点后面。 } else { LcdWriteCom(0x80); //写地址 80表示初始地址 LcdWriteData('+'); //显示正 tp=temp;//因为数据处理有小数点所以将温度赋给一个浮点型变量 //如果温度是正的那么,那么正数的原码就是补码它本身 temp=tp*0.0625*100+0.5; //留两个小数点就*100,+0.5是四舍五入,因为C语言浮点数转换为整型的时候把小数点 //后面的数自动去掉,不管是否大于0.5,而+0.5之后大于0.5的就是进1了,小于0.5的就 //算加上0.5,还是在小数点后面。 } datas[0] = temp / 10000; datas[1] = temp % 10000 / 1000; datas[2] = temp % 1000 / 100; datas[3] = temp % 100 / 10; datas[4] = temp % 10; LcdWriteCom(0x82); //写地址 80表示初始地址 LcdWriteData('0'+datas[0]); //百位 LcdWriteCom(0x83); //写地址 80表示初始地址 LcdWriteData('0'+datas[1]); //十位 LcdWriteCom(0x84); //写地址 80表示初始地址 LcdWriteData('0'+datas[2]); //个位 LcdWriteCom(0x85); //写地址 80表示初始地址 LcdWriteData('.'); //显示 ‘.’ LcdWriteCom(0x86); //写地址 80表示初始地址 LcdWriteData('0'+datas[3]); //显示小数点 LcdWriteCom(0x87); //写地址 80表示初始地址 LcdWriteData('0'+datas[4]); //显示小数点 } #ifndef __LCD_H_ #define __LCD_H_ /********************************** 当使用的是4位数据传输的时候定义, 使用8位取消这个定义 **********************************/ #define LCD1602_4PINS /********************************** 包含头文件 **********************************/ #in- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学士学位 论文 基于 单片机 温度 采集 显示 电路设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【a199****6536】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【a199****6536】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【a199****6536】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【a199****6536】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文