- 1、本文档共26页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE / NUMPAGES
单片机课程设计
课题:恒温控制模拟设计
系 别:
专 业:
姓 名:
学 号:
河南城建学院
2011年12月28日
成绩评定·
一、指导教师评语(根据学生设计报告质量、答辩情况及其平时表现综合评定)。
二、评分
评分项目
设计报告评分
答辩评分
平时表现评分
合 计
(100分)
任务完成
情 况
(20分)
课程设计
报告质量
(40分)
表达情况
(10分)
回答问题
情 况
(10分)
工作态度与纪律
(10分)
独立工作
能力
(10分)
得分
课程设计成绩评定
班级
班级 0934091 姓名 赵益乐 学号 093409173
成绩: 分(折合等级 )
指导教师签字 年 月 日
设计目的
1、使学生增进对单片机的感性认识,加深对单片机理论方面的理解;
2、使学生掌握单片机的内部功能模块的应用,如定时器/计数器、中断、片内外存贮器、I/O口、A/D、D/A、串行口通讯等;
3、使学生了解和掌握单片机应用系统的软硬件设计过程、方法及实现,为以后设计和实现单片机应用系统打下良好基础。
设计要求
1、对一定范围内的温度进行控制,低于此范围内则加热,高于此范围则降温;
2、要求给出加热、降温信号。
3、扩展功能:时间显示
总体设计
各部分电路设计
上图为18B20的电路设计。
上图为LCD1602的电路设计。
下图为独立按键的电路设计:
上图为单片机晶振的连接电路。
整体电路图
六、设计总结
设计过程中遇到的问题及解决方法
遇到的问题:
关于温度显示和温度比较,由于定义了全局温度中间变量temp,并将temp初始化为0,所以显示温度时由于temp被重新初始化,故显示的温度为0,且比较温度时温度与0度比较。
解决方法:
关于温度显示,在温度被初始化为0之前,先将温度显示出来,然后初始化后读取下一个温度。
关于温度比较,由于初始化后将设定温度K与初始化的温度0比较,故重新定义了一个局部变量J,将temp的值传递给J,使局部变量J与设定温度K进行比较,从而确定加热或是降温。
设计体会
通过单片机课程设计,我更加深刻具体的认识到了单片机的工作原理,工作状态,是我对单片机有了更加深刻的认识。通过课程设计,我发现只学习书上的理论知识,而不进行具体实践是难以真正了解一件事物的。实践出真知。而且通过实践可以发现理论正确的程序或硬件的一些小的bug,通过修改各种错误和bug,使自己的软硬件功底不断提高,可以在未来的各种设计中,掌握更好的设计方法。
对设计的建议
课程设计提高了我们对单片机的具体认识,加深了理解。课程设计对更好的学习课程有很大的帮助。
参考文献
《单片机原理及应用》 人民邮电出版社
《8051单片机彻底研究》 中国电力出版社
《51单片机应用开发技术大全》 人民邮电出版社
《51单片机C语言应用程序设计实例精讲》 电子工业出版社
《51单片机及其C语言程序开发实例》 清华大学出版社
附录(程序):
main.c:
/*******************************************************************
智能温控器
P0 1602数据线; P1 按键; P2^0 温度;RS = P2^5;
RW = P2^6; EN = P2^7; SPEAKER=P2^3;OUT=P2^2
********************************************************************/
#includereg52.h
#includestdio.h
#include18b20.h
#include1602.h
#includedelay.h
#define uchar unsigned char
sbit MENU=P1^0; //调整温度、时间菜单
sbit INC=P1^1; //增加键
sbit DEC=P1^2; //减小键
sbit LOW=P2^3; //低温加热信号
sbit HIGH=P2^2; //高温降温信号
char displaytemp[16]; //定义显示
文档评论(0)