当前位置: 首页 > 实用文档 > 实习报告 > 单片机课程设计报告总结和收获

单片机课程设计报告总结和收获

2016-01-26 08:54:05 编辑: 来源:http://www.chinazhaokao.com 成考报名 浏览:

导读: 单片机课程设计报告总结和收获篇一《单片机课程设计总结》 ...

单片机课程设计报告总结和收获篇一
《单片机课程设计总结》

单片机课程设计心得体会:

这个学期的单片机课已经早早的上完了,但是理论纯属理论,没有与实践的结合总让我们学的不踏实,感觉没有达到学以致用的效果。所庆幸的是在课程介绍考试完之后,老师给我们安排了这次单片机课程设计,给了我们学以致用的做好的实践。

关于这次课程设计,我们花费了比较多的心思,既是对课程理论内容的一次复习和巩固,还让我们丰富了更多与该专业相关的其他知识,比如软件应用等,在摸索中学习,在摸索中成长,在学习的过程中带着问题去学我发现效率很高,这是我做这次课程设计的又一收获,在真正设计之前我们做了相当丰富的准备,首先巩固一下课程理论,再一遍熟悉课程知识的构架,然后结合加以理论分析、总结,有了一个清晰的思路和一个完整的的软件流程图之后才着手设计。在设计程序时,我们不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经之路;养成注释程序的好习惯是非常必要的,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也能为资料的保存和交流提供了方便;我觉得在设计课程过程中遇到问题是很正常,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题的课程设计又出错了。

除了对此次设计的准备工作之外,我们还学到了很多平时难得的东西,首先是团队协作,在这次设计当中,难免和同学产生观点和意见的分歧,以及分工明细、时间安排等不合理,通过这次设计,我们体会到了团结合作的重要性及力量之强大,还有让我们处理事情更加有条理,思路更加清晰明了了,发现、提出、分析、解决问题和实践能力的提高都将受益于我在以后的学习、工作和生活中。

此次的设计,其实也是我们所学知识的一次综合运用,让我深深的认识到了学习单片机要有一定的基础,要有电子技术方面的数字电路和模拟电路等方面的理论基础,特别是数字电路;也要有编程语言的汇编语言或C语言。要想成为单片机高手,我们首先要学好汇编语言,然后转入C语言学习,所以我们不能学到后面就忘了前面的知识,更应该将所学的知识紧紧的结合在一起,综合运用,所谓设计,就是要求创新,只有将知识综合运用起来才能真正的设计好。

单片机课程设计报告总结和收获篇二
《单片机课设总结汇总》

单片机课设总结经过为期一周的单片机课设,通进对两个软件学习和完成一个时钟秒表设计并进行简单调试,我学到了很多东西!课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。虽然课设时遇到过这样或那样的问题,但是在自己的的不断努力下,我最终顺利的完成了实验。在整个的课设的过程中我学习了很多的东西,使我眼界打开,感受颇深。简单的软件与硬件学习使我了解到了人生学习的真谛,课设虽然结束了,但学习还没结束,电子的世界将为我打开,只有继续以从中获得感受作为指导思想走下去,在不断前进中去提升自己,才能真正提升自己的能力。单片机课设总结课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。单片机课设总结这次制作的成功经历,我收获不小,使我掌握了单片机的开发流程,明白了单片机的工作过程,在实际硬件中是怎样读取指令,提取数据的。也提高了我软硬件调试的能力。再加上主任看了我的作品后的一番鼓励,越发激起了我的自信心!接下来的4月,我意外的接到系学生工作处主管陈老师来电,说我系承办了院校园文化艺术节的“南方擂台”知识抢答竞赛,而学校又没有抢答器,要我组织几个学生做一个抢答器。我当时想,那好啊,做抢答器不难。以前有用与非门做过,于是我便爽快的答应了陈老师,并保证没有问题,保质保量完成。当是可能是我想得太简单了,抢答器不就八个按键一个数码管显示不就完了么,把最先抢到的组别显示出来。可是到主任给我们提要求的时候才发现抢答器要实现我功能远不只这么多,倒计时、蜂鸣提示、范规报警、电子计分器,这些我都没有考虑进来。主任也说了,这是一次院级的比赛,电子系做的东西要拿的出手,要做就做点样子出来。我想也好,虽有点难度,但符合我喜欢挑战难度的性格。我说“行”!这个活我做了!接到任务开始布属,我把计分电路分了出去由其

它几个同学做,我专攻抢答部分。由于没有独立设计电路的经验,刚开始得一步步慢慢深入,正好我会PROTEUS。软硬件的调度都靠它完成,这样可以省很多的时间。做抢答器,我们花了一个月的时间,没日没夜的调试程序(当时单片机课程还没学到定时器中断,还得一边自学。)做PCB板,采购元器件,安装,调试,运行。那时,他们的计分电路也做好了,用了16个数码管做显示。我们将计分和抢答电路板及数码管安装在了事先木制的外壳上,进行整体调试。记得那时正赶上五一放假,而五月8号就是比赛了。我们都没有休息,将工作间从实验室搬到了寝室。那段时间虽然辛苦,但很充实,每个人收获都特别大。为了让自己的编程水平能进一步提高,我将自己编写的程序发到了论坛里与大家共享,并下载网友们的程序进行分析。电子钟程序、液晶密码锁程序、跑马灯程序、大屏幕点阵屏程序、上下位机通信程序等等,这些我都能熟练的掌握。我认为,学编程读别人的程序非常重要,每个人都有不同的思维,相同的任务却有很多不同的方法,在每个程序里都能找到些经典的段子,让人回味。从中可以学到很多的方法,并且有些可以直接的引用。一个出色的程序员在编程时,并不是从零开始,而应该是先找出类似的例子进行分析,参考,看看有没有值得引用和借鉴的地方,加以修改,为自己所用。实践证明,这样做是对的。从当初不知如何着手到现在随手就能写个几百行,短短几个月,我进步还是蛮快的。做单片机课设那会,我帮助了班上不少的同学,帮他们调试过硬件,修改过程序,并为他们解答了一系列的疑惑。当同学们投来羡慕的目光时,我很自豪,这些都是我努力的结果。当然,努力归努力,方法也很重要。在这里,我总结一下,与大家共勉:1、基本功要杂实,要有一定的数模电基础。学单片机首先要搞清楚它的基本结构和存储单元的分配。2、在学单片机的过程中,最好自己动手做一个单片机系统。先找现成的程序,现成的电路图,做成实物,并以这个例子为开端,带着疑问学习,往往更有目的,更主动。3、有条件的话先个好的开发板,便实验时之用。没开发板,PROTEUS软件仿真也行。4、多读有代表性的程序,读得多了自然就会学到很多的好方法。可买本单片机子程序集看看,也可网上下载程序分析。5、多泡泡单片机相关的论坛,与大家多交流交流,单片机完全可以自学的。我觉得以上几点相当重要,因为它对我帮助很大,算是将我领进了单片机的大门,以至于我学

起来不那么吃力,没有感觉到像大家说的那样的难。我看过很多的程序,也调试过很多的程序,每一次收获都不小。我的实验室就是KEIL和PROTEUS。这使我做实验很方便。虽是虚拟的,但调试程序还是可以的,省去了很多的时间提高了效率。最近我在学CX51,因为学单片机掌握C语言是非常重要的,C语言的通用性对学习其它类型的单片机有很大的帮助。今后,我想做嵌入式系统工程师,想学ARM,想搞操作系统。所以我现在必须打好基础,这样才能进步。我学单片机的一些经历。其实我并不是很厉害,我懂的也只是一点皮毛,只是晓得单片机是怎么回事,能编几个小程序罢了。写这些我只是想记录一下我初学单片机的经历。同时对于那些想开始学习单片机的朋友们,还是可以有一些值得借鉴的地方。希望大家都能学好单片机,那些觉得难的学得吃力的同学要对自己有信心,要多做多练,这样才能培养学习兴趣。只要坚持就能如愿,同志们,加油!单片机课设总结通过讲授单片机的重要性,激发了一些学生的学习积极性与学习单片机的欲望。在授课时,首先注重基础知识的掌握。根据学生对基础知识的掌握情况由浅入深逐步讲解。随着授课内容的逐渐增多,2个班差距不断加大,通过找学生谈心,寻找原因,临时调整授课内容与方法。授课内容分为3步:第一部分是基础内容,为必须掌握内容,通过反复做练习与上机做实验,加强学生对基础知识的理解与掌握。第二部分是加强内容,尽可能让学生理解所学内容,不断讲解单片机执行程序的过程,以便让学生对指令的程序的理解比较透彻,达到灵活运用的目的。第三部分是提高部分,对单片机一的全部运行过程做非常详细的解剖,将CPU每一步的执行过程将的很透彻。在授课过程中,一边讲课,一边告诉学生哪些必须掌握,哪些尽可能掌握,哪些自主选择。这样让学生自己掌握学习情况,避免产生急噪与自满情绪。尽管采用了一些方法提高授课效果,但是由于职高学生的学习风气太差,高中几年没有养成学习习惯,学生门课前不预习,课上不听讲,课后不复习,导致学生对基础知识的掌握不好,没有达到预期效果。 希望分班上课,采用不同的授课方法,降低职高班的学习难度,多做实验,使职高学生也能学到一些技能。通过本学期的学习,普高班的大部分学生掌握了基础知识,其中一些学生掌握的很好,已经开始自学单片机接口技术的内容并初步探索单片机控制系统的设计。本次单片机原理的实验比较多,通过上机运行、调试程序,使学生对单片机执行程序的过程

了解得比较透彻,而且通过的课程设计,让学生学习了综合程序的设计方法,培养了学生编制大型综合程序的发法与调试方法,为学生开发单片机控制系统奠定了坚实基础。单片机课设总结在这次大赛及培训的过程中,我从中学到了很多新的东西,这些东西是在书本中学不到的。从对一个产品或是一个项目的方案的确定及论证,以及方案的具体实施,都是我从来没接触过的,比我想象中的要复杂。就方案的确定来说,一个项目有很多种方案,你必须在权衡包括:电路复杂程度、元器件的性能、成本及可操作性等诸多方面,需要全面的考虑到。如果方案设计的巧妙将会为后面的实施阶段打下良好的基础,反之,则实施阶段会遇到相当大的困难。在对电路的搭接我发现设计文件与实际电路是有出入的,就拿C8051最小系统板来说,上面就有至少3处没有连上线的。所以在以后的工作中一定要做到用实际电路时一定要认真仔细核对设计文件,把差错提前找到避免对后续阶段工作的影响。在培训的一个月中,我们系的很多老师都一直为我们讲解电路,一起讨论方案,一个暑假直都没有休息。有时,很晚才走。从他们身上我不但学到了知识,而且学到了为人做事的方法。真想说一声谢谢!谢谢他们放弃了休假来为我们培训。他们的品格是高尚的,是我学习的榜样,我会牢牢记住这次大赛的经历的。这次我交到了一些新的朋友,通过他们我看到了我身上的不足之处。我们在培训中的我们会因为某个问题激烈的争论,争论的面红耳赤,又会因为问题的解决而高兴。在比赛的那四天三夜中,也是我从未经历过的。第一天,拿到题目后,我们花了一个上午的时间选择题目。我们组选的是G题《数字电压表》。下午我们作方案的论证,根据题目要求用双积分原理制作。第二天,搭接电路和编写程序。第三天,电路加上程序一起调试,下午我们开始写论文。第四天,最后的调试、装壳及装箱。这是我的预想时间表。但实际情况不是这样的,最困难的就是最后两天,那时候觉得时间已经不够了。所以我让海燕第三天下午就开始写论文了,结果就是我们的论文都快写完了G1组才开始写。最后一天,我们已经都快不行了,因为非常的困,反映速度都变慢了,注意力下降的很厉害,不能集中精神。要不是延长了一个晚上我估计没有一个做出来的,得全军覆没。在这次比赛中我们也存在很多问题。就是不能正确的分析题目要求,比如电源就不用另搭,用直流稳压电源供电就可以了。从中我吸取教训在以后的工作中不能过于死板,脑子应该更活一

点。这次大赛我们组拿到天津市一等奖的成绩这是和老师在背后支持分不开的。通过这次比赛的经历我学到很多,不论是在理论知识上,还是在做人的品质上都得到了提高。这些经历将是我人生中的财富,我会一生珍惜的。单片机课设总结二语习得可以说是我接触较早的课程,从复习考研时,我就对二语习得产生了浓厚的兴趣,自己看了很多书,觉得已经有了一定量的知识储备,但是通过这一学期的学习,发现自己还是差了好多,知识的海洋是浩瀚的,自己所知道的只是九牛一毛。每次学习新的内容,总会看到自己有很多欠缺,明白自己看的书还是远远不够的。学习就是要做交叉阅读,只有做了足够量的阅读才会有更加清晰、更加深刻的理解。同样的知识,不同的学者会有不同的解释,然后会用不同的术语来描述,这些只有当对不同的专著进行对比研读时,才会发现。除了强调交叉对比阅读之外,二语习得课有个最最突出的特点就是,每学一章都有一个小的测验,来帮助我们强化每一章的重点。这些测验作为一个手段,帮助我们记忆专业知识,我觉得是非常必要的。  论文写作:这是一门关于写论文的课。没有上课的时候,我以为老师会给我们讲写论文写作的规范,包括应该怎么写,不要怎么写之类的,可是上过一次课,我就发现我的想法是不对的。李老师有自己的方法,不是去把一些条条框框强加给学生,而是通过论文评析这种形式,让我们自己去应用这些条条框框。对三篇文章的论文评价,让我们通过自己去动手,动脑,自己查阅资料去发现论文的结构和框架,同时在论文评价中一个部分,就是论文的优点与不足。上这个课之前,我总觉得已经发表的文章就是好文章,是无懈可击的,更何况老师给我们的论文都是国际著名期刊上的,但是,因为要找不足,还是硬着头皮去读,去挑“毛病”,功夫不负有心人,通过仔细研读,还真能发现其中确实存在着一定的不足,这让我们很有成就感,同时,也学会了用批判的眼光去读文章,读文章的时候不能受限于作者,只有站在比作者还高的高度,才能发现他的问题。单片机课设总结我们知道,一个电路总是由元器件通过电线连接而成的,在模拟电路中,连线并不成为一个问题,因为各器件间一般是串行关系,各器件之间的连线并不很多,但计算机电路却不一样,它是以微处理器为核心,各器件都要与微处理器相连,各器件之间的工作必须相互协调,所以需要的连线就很多了,如果仍如同模拟电路一样,在各微处理器和各器件间单独连线,则线的数量

单片机课程设计报告总结和收获篇三
《单片机课程设计总结报告参考模板》

湖州师范学院求真学院

课程设计总结报告

课程名称 单片机应用系统设计

设计题目 基于STC89C51的数字电子钟设计

专 业 电子科学与技术

班 级 080835

姓 名 张静

学 号 12

指导教师 李祖欣 吴小红

报告成绩

求真学院信息与工程系

二〇一一年六月一日

《单片机应用系统设计》课程设计任务书

一、课题名称

《基于STC89C52的数字电子钟设计》

二、设计任务

基本任务:

1. 采用STC单片机和键盘,设置4位LED数码管显示的电子时钟;

2. 上电时,显示12:00并且“:”间隔500ms闪烁,其中“:”代表秒功能;

3. 具有闹钟设定、闹铃功能。

4. 通过键盘可修改时间。

发挥任务:

1.实现时钟整点“嘟”声提示功能;

2.实现秒表功能。秒表具有计时开始,计时结束,计时复位等功能。

三、设计报告撰写规范

单片微机应用系统设计总结报告正文,主要含以下内容(硬件、软件各部分内容也可组合起来进行撰写说明):

1. 系统总体设计方案(画出系统原理框图、方案的论证与比较等内容);

2. 硬件系统分析与设计(各模块或单元电路的设计、工作原理阐述、参数计算、

元器件选择、完整的系统电路图、系统所需的元器件清单。等内容);

3. 软件系统分析与设计(各功能模块的程序设计流程图与说明、软件系统设计、

软件抗干扰措施、完整的程序等内容);

4. 系统仿真调试与参数测量(使用仪器仪表、故障排除、电路硬件和软件调试的

方法和技巧、指标测试的参数和波形、测量误差分析);

5. 总结(本课题核心内容及使用价值、电路设计、软件设计的特点和选择方案的

优缺点、改进方向和意见等);

6. 按统一格式列出主要参考文献。

《基于STC89C51的数字电子钟设计》

课程设计总结报告

一、 系统总体方案

本次设计时钟电路,使用了AT89c51单片机芯片控制电路,单片机控制电路简单且省去了很多复杂的线路,使得电路简明易懂, 使用键盘上的按键来调整时钟的时、分、秒,用一扬声器来进行定时提醒,同时使用汇编程序来控制整个时钟显示,使得编程变得更容易,这样通过四个模块:键盘、单片机芯片、扬声器、显示屏即可满足设计要求。如图1-1为数字钟总体设计框图。

本设计的软件程序包括主程序如图1-2、中断子程序如图1-3、打铃子程序、时钟显示子程序、查询时间表切换程序和延时子程序等等。另外,由于电路中有四个按键,还另外设计了防抖动程序来防止干扰

本设计的硬件包括89c51芯片,+5V电源,共阳八段数码管4个,三极管,电阻若

二、单片机概述

1、AT89c51单片机

 单片机的发展及应用

单片机诞生于20世纪70年代末,经历了SCM、MCU、SoC三大阶段。单片机由运算器、控制器、存储器、输入输出设备构成单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。

目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。工业方面,仪器仪表方面,消费类电子产品,通信方面,武器装备等。

 单片机的引脚

图1-4 单片机的引脚

40个引脚按功能大致可分为4类:电源、时钟、控制和I/O引脚。

(1)电源:

VCC - 芯片电源,接+5V; VSS - 接地端;

(2)时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。

(3)控制线:控制线共有4根,

 ALE/PROG:地址锁存允许/片内EPROM编程脉冲

① ALE功能:用来锁存P0口送出的低8位地址

② PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。

 PSEN:外ROM读选通信号。

 RST/VPD:复位/备用电源。

① RST(Reset)功能:复位信号输入端。

② VPD功能:在Vcc掉电情况下,接备用电源。

 EA/Vpp:内外ROM选择/片内EPROM编程电源。

① EA功能:内外ROM选择端。

② Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。

(4)I/O线

 单片机的应用注意事项

二、 键盘电路

(一)键盘扫描概述

此次用到四个键,即K8,K9,K10,K11键。K8和K9键分别是加一和减一键,主要是对时钟和闹钟操作。K11键是对时钟的模式切换,在这里一共有5种模式,当r0=1,对时钟的分加、减一;当R0=2时,对时钟的时加、减一;当R0=3时,对闹钟的分加。减一;当R0=4时,对闹钟的时加、减一;当R0=5时,切换到秒表功能;当R0=6时,返回实时时钟显示。K10键是对秒表的模式切换,当R6=1时,关外部中断一;当R6=2时,开外部中断一,开始秒表计时;当R6=3时,关外部中断一,暂停秒表计时。

(二)键盘电路图

(三)工作原理

先对芯片片。P2.4口置低电平,即表示其接地。再判断P2.3是否为低电平,若为则R0加一。反之,判断P2.0是否为低电平,若为则判断其属于哪一个模式,在进行加一操作。反之,判断P2.1是否为低电平,若为则判断其属于哪一个模式,在进行减一操作。反之,判断P2.2是否为低电平,若为则判断其属于哪一个模式,进行秒表功能。反之,返回。

(四)硬件电路注意的问题

在编程时要注意键盘的去抖,所以在判断一个键盘的按下之后,进行一段延时。

(五)程序流程图:如图1-5

三、显示电路

(一)显示电路概述

我运用四个共阳极LED显示器,且为8段。并且将所有位的段码线的相应段并联

起来,由一个8为I/O口控制,我用的是P0口。而且各位的共阳极分别有相应的I/O线控制,形成各位的分时选通,这里我运用了P1.7,P1.6,P1.5,P1.4分别作为时的十位,时的个位,分的十位和分的个位选通线。且当其端口为低电平时,改位选通。

(二)用到的电路图

(三)用到动态扫描工作原理

时间显示是先分个位计算显示,然后是分十位计算显示,再是时个位计算显示,最后是时十位计算显示。当显示分个位,置P1.4为低电平;当显示分十位,置P1.5为低电平;当显示分时个位,置P1.6为低电平;当显示时十位,置P1.7为低电平。

(四)硬件电路注意的问题

要注意你运用的LED显示器,是共阳极的还是共阴极的,在设置TAB表。

(五)程序流程:如图1-6

(六)、编程注意点

设置TAB表时,要注意有两个LED显示器是反过来的,它的TAB表要根据实际情况自己计算而得。否则显示器的显示值就是错误的。

四、蜂鸣器

(一)蜂鸣器电路概述

蜂鸣器电路,由P3.2口控制,当定时的闹钟时间和实时时钟显示时间相同时,则置P3.2口为低电平。此时三极管导通,蜂鸣器响。

(二)蜂鸣器电路

五、系统调试

单片机课程设计报告总结和收获篇四
《单片机课程设计报告》

重庆科技学院

学生实习(实训)总结报告

院(系):电气与信息工程学院 专业班级:_ ___

学生姓名:___________ 学 号:_ __

实习(实训)地点: _ 逸夫科技大楼I510 _

报告题目:

报告日期: 2014 年 11 月 17 日

指导教师评语: _______________________________________

_________________________________________________________

成绩(五级记分制):______ _______

指导教师(签字):

实习(实训)总结报告的写法及基本要求

一、实习(实训)报告一般由标题和正文两部分组成

1.标题:标题可以采取规范化的标题格式,基本格式为,“关于××的实习(实训)报告”。

2.正文:正文一般分前言,主体,结尾三部分。

(1)前言:主要描述本次实习(实训)的目的意义、大纲的要求及接受实习(实训)任务等情况。实习(实训)总结报告的写法及基本要求

(2)主体:实习(实训)报告最主要的部分,详述实习(实训)的基本情况,包括:项目、内容、安排、组织、做法,以及分析通过实习(实训)经历了哪些环节,接受了哪些实践锻炼,搜集到哪些资料,并从中得出一些具体认识、观点和基本结论。

(3)结尾:可写出自己的收获、感受、体会和建议,也可就发现的问题提出解决问题的方法、对策;或总结全文的主要观点,进一步深化主题;或提出问题,引发人们的进一步思考;或展望前景,发出鼓舞和号召等。

二、对实习(实训)报告的要求

1.按照大纲要求在规定的时间完成实习(实训)报告,报告内容必须真实,不得抄袭。学生应结合自己所在工作岗位的工作实际写出本行业及本专业(或课程)有关的实习(实训)报告。

2.校外实习报告字数要求:不少于800字每周,累计实习3周及以上的不少于2000字。用A4纸书写或打印 (正文使用小四号宋体、行距1.5倍。其余排版要求以美观整洁为准)。校内实习(实训)报告字数要求可适当减少,具体要求由院系依据课程特点规定。

3.实习(实训)报告撰写过程中需接受指导教师的指导,学生应在实习(实训)结束之前将成稿交实习(实训)指导教师。

三、实习(实训)考核的主要内容

1.平时表现:实习(实训)出勤和实习(实训)纪律的遵守情况;实习(实训)现场的表现和实习(实训)笔记的记录情况、笔记的完整性。

2.实习(实训)报告:实习(实训)报告的完整性和准确性;实习(实训)的收获和体会。

3.答辩:在生产现场随机口试;实习(实训)结束时抽题口试。

摘 要

单片机的出现是近代计算机技术发展史上的重要里程碑。单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。近年来随着电子技术和微型计算机技术的迅速发展,单片机的档次不断提高,其应用领域也在不断扩大,在工业测控、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人通信终端及通信产品中得到了广泛应用,已成为现代电子系统中最重要的智能化核心部件。波形发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。本次课程设计使用的AT89C51单片机构成的发生器可产生三角波、正弦波,方波等多种波形,波形的频率可以用程序改变,并可根据需要显示时间。具有线路简单、结构紧凑等优点。在本设计的基础上,加上按钮控制和LED显示器,则可通过按钮改变所需要的波形频率,并在LED上显示频率时间,波形可用示波器显示。

关键词:单片机 波形 时间

1

目 录

摘 要 ..................................................................................................................................................................... 1

1 前言 ................................................................................................................................................................... 2

1.1单片机原理及应用项目专项开发的目的和意义 ................................................................................ 2

1.2任务要求 ................................................................................................................................................. 2

2 方案设计 ........................................................................................................................................................... 3

2.1 系统概述和总体框图 ........................................................................................................................... 3

2.2 器件选择及硬件电路设计 ................................................................................................................... 3

3 软件设计 ........................................................................................................................................................... 7

3.1操作功能设计 ........................................................................................................................................ 7

3.2 主程序流程图 ....................................................................................................................................... 8

3.3 时钟模块子程序 ................................................................................................................................... 8

3.4 数码管显示子程序 ............................................................................................................................... 9

3.5 键盘控制选择波形子程序 ................................................................................................................. 10

4 程序调试 ......................................................................................................................................................... 12

5 技术小结 ......................................................................................................................................................... 12

6 单片机简易信号发生器的使用说明 ............................................................................................................. 12

7 心得体会 ......................................................................................................................................................... 13

8 参考文献 ......................................................................................................................................................... 14

附录1:电路原理图 .......................................................................................................................................... 15

附录2:程序源代码 .......................................................................................................................................... 16

1 前言

1.1单片机原理及应用项目专项开发的目的和意义

通过本实习不但可以掌握单片机软、硬件的综合调试方法,而且可以熟练掌握电路原理图,激发对单片机智能性的探索精神,提高学生的综合素质,培养学生应用单片机实现对工业控制系统的设计、开发与调试的能力。在制作学习过程中,不但可以掌握软、硬件的综合调试方法,而且可以使学生对单片机智能性产生强烈的欲望。达到最大限度地掌握微机应用技术,软件及接口设计和数据采集与处理的技能,培养学生的综合实践素质的目的。

1.2任务要求

1.基本功能

(1) 可以产生正弦波、方波、三角波,频率可调;

(2) 按键选择输出波形;

(3) 按键调节输出信号频率。

2. 扩展功能:显示当前时间

3. 频率调节范围:1-100Hz

2

单片机课程设计报告总结和收获篇五
《单片机课程设计及个人心得感受》

科课程设计(论文)

单片机控制流水灯的正常工作及

外部中断控制灯的亮灭

学院名称: 汽车与交通工程学院

专 业: 汽车服务工程

班 级: 13汽服B

学 号: *************

姓 名: *******

指导教师姓名: 冀雯宇

二〇一四 年 五 月

目 录

序 言................................................................................................................................3

第一章 设计要求和目的.............................................................................................4

1.1 设计要求.......................................................4

1.2 设计目的.......................................................4

第二章 方案设计和选择 ...............................................................................4

2.1 STC89C51单片机的功能及各管脚解释说明 ..........................4

2.2软件仿真图 .....................................................6

2.3程序编写及解释 .................................................7

第三章 实际的操作与实现 ........................................................................................9

3.1芯片的选择 .....................................................9

3.2印制线路板的设计 ...............................................9

3.3布线 ..........................................................10

3.4实际接线图与运行图 ............................................11

个人收获及体会........................................................11

致 谢.................................................................12

序 言

单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络复杂的输入输出系统集成在一块芯片上。

单片机也被称为微控制器(Microcontroler),是因为它最早被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对提及要求严格的控制设备当中。

单片机的使用领域已十分广泛,如智能仪表、实时工况、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。单片机的广泛应用不仅让我们享受到新型电子产品和新技术带来的贴心服务,也使我们的生活环境变得安全、舒适、便捷;有了单片机作主控,我们的生产生活工具更加先进和智能,减轻劳动强度的同时提高了工作效率和安全系数。

第一章 设计要求和目的

1.1 设计要求

接通单片机电路后,由单片机STC89C51的P1的8个端口控制流水灯的正常工作,单片机外部中断0(P3.2端口),及按键1控制灯D10(P0.1端口)。单片机外部中断1(P3.3端口),及按键2控制灯D10(P0.0端口)。

1.2 设计目的

本设计的目的是为检测这几周课程设计的成果,提高实际动手能力以及对单片机原理和单片机C51语言的相关知识有更深刻理解。

第二章 方案设计和选择

2.1 STC89C51单片机的功能及各管脚解释说明

SAT89C51是一种带4K字节 FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案

1.AT89C51 提供以下标准功能:4k字节 Flash 闪速存存储器,128字节内部RAM,32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保

存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

2.管脚说明:

VCC:供电电压 GND:接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输

单片机课程设计报告总结和收获篇六
《单片机课程设计总结报告》

单片机课程设计

频率计

总结报告

姓名:陈艺端

学号:08292003

班级:电气0809

所在组:陈艺端

白英杰

【实验准备】

在实验前,我通过上网、上图书馆查找了一些关于频率计的资料,

结合单片机所学的中断和定时器的知识,并对电路板各个元器件、接

线等的清楚认识,完成了对电路板仿真图的绘制,以及初步的程序,

并实现了初步的仿真效果。

【设计内容】

设计一个频率计。

【设计要求】

分频段(高频、低频),在10k~20kHz范围做切换。

CPU为AT89S51,利用内部T0、T1的定时计数器或外部INT0

中断功能来完成对输入的信号进行频率计数或脉宽计时,计数(计时)

的频率结果通过6位七段LED数码管显示出来。

数字式频率计原理框图:

【设计方案】

一、实验原理:

1、测频方式

利用单片机计数器T0和定时器T1中断。定时器T1中断产生闸

门时间,在闸门时间Ts内,用计数器记录输入脉冲的个数N,从而

计算出被测频率Fx =N/Ts。

第2页 共22页

2、测周方式

利用单片机外部中断INT0和定时器T1中断。定时器T1中断产

生时标信号Ts,用外部中断INT0控制定时器T1的计数,计算出在

被测信号的一个周期内定时器T1计得的数N,从而计算出被测频率

Fx =NTs。

二、电路结构:

① NE555构成多谐振荡器,产生频率可调的方波信号;

② 74HC74里的一个D触发器连成计数器,用来对555产生的方波

分频;

③ 74HC14非门做驱动,防止产生的信号不能驱动单片机的I/O口;

第3页 共22页

④ 方波信号连接在单片机的INT0和T0口上。

⑤ 单片机的P1口做字位,连接74HC245驱动数码管的共阴端;

⑥ P0口做字形,连接74HC573锁存器和74HC245驱动数码管的 a~dp端。

三、测频测周转换的讨论以及试验参数:

1、测频方式和测周方式的转换频率

依要求来说在10kHz~20kHz之间做切换。

2、转换频率过程中产生的问题

当被测信号频率与转换频率非常接近,并且抖动时,容易产生两

种方式一直跳变的现象,进入死循环,可以利用迟滞比较器的原

理进行解决。通常将测频方式和测周方式的转换频率设为程序判

断测频还是测周的比较点,但为避免在转换频率附近产生死循环,

设置两个比较点,分别为f1和f2,从高频测频方式向低频测周方

式变化时,比较点为f1,从低频测周方式向高频测频方式变化时,

比较点为f2,使f1<f2,即可避免不停跳变产生死循环的问题。

第4页 共22页

3、参数设定

根据以上讨论,测频方式的闸门周期要大于1/f1,并且越大测量

结果越精确,但还要考虑到闸门周期太大会导致测量得到的脉冲数N过大,影响程序大小。同理,测周方式的时标周期要小于1/f2,并且越小越精确,同样要考虑到程序大小以及程序执行时间。

四、程序流程图

⑴测频法:

① 主程序:

② T0中断子程序:

② T1中断子程序:

第5页 共22页

单片机课程设计报告总结和收获篇七
《单片机课程设计温度控制报告总结》

    本文由xiamotangyi贡献

    doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。

    浙江传媒学院 课程设计(实训) 课程设计(实训)报告

    学 班 姓

    电子信息学院__ __专 院 __电子信息学院__专 级08 信本 1学 08 __谢婧琳课 谢婧琳 名 __ __谢婧琳课

    业 _电子信息工程 __080705129 080705129_ 号 080705129_ 温度控制 题 __温度控制

    报告成绩 报告成绩 指导教师 __ __黄暑娟报告成绩

    日

    期: 2011 年 03 月 27 日

    1

    目

    录

    1 概述……3 1.1 课程设计的目的…… 3 1.2设计的要求……3 2 课程设计原理及内容……4 2.1 课程设计原理……4 2.2 课程设计内容……9 3 课程设计结果……10 4设计心得体会……10 5 附 1 源程序代码……11 6 附 2 参考文献……21 7 评阅意见……21

    2

    概述

    1.1 课程设计的目的 课程设计的目的 1) 训练学生如何综合运用学过的卢纶和技能去分析结局事迹问题,加上理论的理 解。 2) 3) 4) 5) 6) 增强学生的实践能力和创新能力 使学生掌握微机系统以及常用接口电路的设计及调试方法。 掌握常用工具软件的使用方法 通过课程设计训练学生如何综合运用所学知识去分析解决事迹问题。 培养学生严谨的工作作风和科学态度。

    2.1 课程设计的要求 1) 设计一个温度控制系统 2) 该温度控制系统可以将温度控制在一个温度范围之内 3) 温度显示在数码管上,精确到小数 4) 该范围可以通过系统中的键进行修改 5) 温度一旦快到达上下限的温度时,蜂鸣器报警 6) 蜂鸣器有简单的音乐

    3

    课程设计原理及内容 课程设计原理及内容

    1.1 课程设计原理

    A. 硬件部分 本次课程设计的题目是温度控制系统,硬件部分本设计主要是对温度进行监测与控制, 主要控制器件是单片机 89S51。首先温度传感器 DS1820 对温度进行采样和转换,将测量结 果送给单片机, 单片机将输入的温度值与内部指定单元的给定温度值进行比较, 根据比较结 果, 通过执行温度传感器加热源的开断状态进行控制。 温度显示与设定体现在 3 个八段共印 数码管。下图为系统原理框图。    图1

    图2

    硬件设计图

    4

    从各个部分分析看:

    I)、 图为晶振电路,采用 12MHZ 晶振

    图 3 晶振电路

    II)、

    图为复位电路。

    图 4 复位电路

    III)、

    温度传感器 DS1820 信号线接 P3.7 口, con 口接 P3.5, 这一部分主要完成对温度信号的 采集和转换工作和加温工作。由于采用了该芯片,温度测量电路变得非常简单。DS1820 像 三极管一样,有一根底线,一根信号线和一根电源线,而信号线

与 IO 口 P3.7 的相连,就能 实现单片机对 DS1820 模式控制,温度值读取等操作。    图5

    5

    IV)、

    显示电路采用 4 位共阴极 LED 数码管, 采用动态扫描的方式显示, 口由上拉电阻提 P1 高驱动能力,作为段码输出并作为数码管的驱动。P0 口的高四位作为数码管的位选端。进 而显示数字

    图6

    V)、

    本系统采用四个按键来处理修改和显示上下限温度。S1 和 S2 分别来加或减温度限值, 当 S3 按下时,显示最高上限温度。再按一下显示下限温度。在 S3 被按下时,如果 S1 和 S2 被按下,则相应的加或减 1,如果 S4 被按下,则加减的幅度变为 3。

    图7

    6

    VI)、

    另外还有鸣器是由单片机 89S51 的 P3.6 口来驱动。通过高低电平的跳变,产生一个频 率声音,从听觉上感觉就是一个蜂鸣声。可以通过改变跳变的频率来改变声音。 B. 软件部分 系统程序主要包括主程序,读出温度子程序,温度转换命令子程序,计算温度子程序, 显示数据刷新子程序,按键扫描处理子程序等

    I) 程序流程图 程序流程图

    图8

    7

    II) 读出温度子程序

    读出温度子程序的主要功能是读出RAM 中的9 字节, 在读出时需进行CRC 校验, 校验有 错时不进行温度数据的改写。其程序流程图如图3.2 示

    图9 III) 计算温度子程序

    计算温度子程序将 RAM 中读取值进行 BCD 码转换运算, 并进行温度值正负的判定。

    IV) 显示数据刷新子程序

    显示数据刷新子程序主要是对分离后的温度显示数据进行刷新操作, 当标志位位为1 时将符号显示位移入第一位。

    图 10

    8

    V) 按键扫描子程序

    按键采用扫描查询方式,设置标志位,检测 SET 键是否被按下,当标志位为 1 时, 显示设置温度,否则显示当前温度。同时设定一个变量 a,a 为设置温度的量度,当另外 一个键 SET1 见在显示设置温度是被检测按下的时候,a 赋值为 3,否则 a=1。从而完成对 温度的设置。

    图 11 2.1 课程设计内容

    1) 2) 3) 4) 5) 6) 7) 8) 9) 准备工作。查相关资料,了解要做的内容,准备好硬件图,了解各项功能。 编辑程序,录入程序,保存为.C 格式。 编译和修改程序,存盘。 根据硬件图连线。 运行程序,检查功能是否能够正常运行,分部分排查程序。 再通过老师的指点,加入其它的功能 编改程序,有必要还需查阅相关书籍。 编译,改错,运行。 经过反复的修改运行和调试,做出最后结果的单片机系统。    9

    课程设计结果

    经过一个星期的调试, 能够正常的运行基本功能, 可以通过温度感应器感应到外界 的温度,显示当前温度,显示精确到小数。并通过判断是否在某个温度区间,若低于下 限温度,则开始加热,若高于上限温度,则停止加热。并且在快到达上限温度时,蜂鸣 器开始发出警告声,约等于 20S,并发出 3 个连续不同的声音,当温度在

下限的附近是, 蜂鸣器做出同样的反应。而且本系统有四个按键,S1、S2、S3、S4,分别是加,减,选 择,修改精度,的功能。当 S3 按 1 下时,显示上限温度,按 2 下是,显示下限温度。 在此期间若 S4 被按下,则加减的精度从原来的 1 改为 3。    设计心得体会 设计心得体会

    从周一开始回来查资料,到周五验收成功。中间虽然没有很长的时间,但是感觉受 益匪浅。 学的最最多的东西当然是对单片机这个系统的了解,所以说坐而言不如立而 行,对于这样的系统还是亲自实践过才能够更加深刻的了解。 课程设计是能培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼 实践能力的重要环节,是对学生实际工作力的具体训练和考察过程.随着科学技术发展 的日新日异, 单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是 无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。 回顾起此次单片机课程设计, 我仍感慨颇多, 的确, 从接题到定稿, 从理论到实践, 在 一星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅 可以巩固了以前所学过知识, 而且学到了很多在书本上所没有学到过的知识。 通过这次 课程设计使我懂得了理论与实际相结合是很重要的, 只有理论知识是远远不够的, 只有 把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而 提高自己的实际动手能力和独立思考的能力。 在设计的过程中遇到问题, 可以说得是困 难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现 了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说对 于 C 语言的一些语句不是很了解, 对单片机的知识也不是很透彻……通过这次课程设计 之后,一定把以前所学过的知识重新温故。 最后感谢黄老师对我们的指导和认真负责, 这次课程设计终于顺利完成了, 虽然最 后那个精度没有改成功, 但是我们还是很认真的对待这一次实践。 相信在以后运用单片 机知识的地方这次的实践肯定会有所帮助。总之,我们学到了在课堂上学不到的东西, 学会了团队合作,学到了更多关于单片机和单片机实践的知识。我们很感激。

    10

    附录: 附录:程序清单

    #include "reg51.h" #include "intrins.h" #define dm P1 //_nop_();延时函数用 //段码输出口

    #define uchar unsigned char #define uint unsigned int sbit DQ=P3^7; //温度输入口

    sbit w0=P0^0; //数码管 4 sbit w1=P0^1; //数码管 3 sbit w2=P0^2; //数码管 2 sbit w3=P0^3; //数码管 1 sbit w4=P0^4; sbit w5=P0^5; sbit beep=P3^6; sbit con=P3^5; sbit set1=P2^0; sbit set=P2^1; sbit add=P2^2; sbit dec=P2^3; uint temp1=0; uint h; uint temp; uchar r; uchar high=30.0,low=23.0 uchar sign; uchar q=0; uchar tt=0; uchar scale; uint a; uint b; //**************温度小数部分用查表法***********// uchar code ditab[10]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09}; //小数断码表 uchar code table_dm[12]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40}; ; //温度加 //温度减 //显示当前温度和设置温度的标志位为 0 时显示当前温度 //蜂鸣器和指示灯 //温度设置切换键

    11

    //共阴 LED 段码表 /*"0""1" "2" "3" "4" "5" "6" "7" "8" "9" "不亮" "-" */

    uchar table_dm1[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};//个位带小数点的断 码表 uchar data temp_data[2]={0x00,0x00}; //读出温度暂放

    uchar data display[5]={0x00,0x00,0x00,0x00,0x00}; //显示单元数据,共 4 个数据和一个运 算暂用 /*****************11us 延时函数*************************/ void delay(uint t) { while(t--); }

    void scan() { int j; for(j=0;j<4;j++) { switch (j) { case 0: dm=table

_dm[display[0]];w0=1;delay(100);w0=0;//小数 case 1: dm=table_dm1[display[1]];w1=1;delay(100);w1=0;//个位 case 2: dm=table_dm[display[2]];w2=1;delay(100);w2=0;//十位 case 3: dm=table_dm[display[3]];w3=1;delay(100);w3=0;//百位

    //defult:dm=table_dm[b3];w3=0;delay(50);w3=1;

    } } } //***************DS18B20 复位函数************************/ void ow_reset(void) { char presence=1;

    12

    while(presence) { while(presence) { DQ=1;_nop_();_nop_();//从高拉倒低 DQ=0;

    delay(50); DQ=1; delay(6); presence=DQ; } delay(45); presence= ̄DQ; } DQ=1;

    //550 us //66 us //presence=0 复位成功,继续下一步 //延时 500 us //拉高电平 } /****************DS18B20 写命令函数************************/ //向 1-WIRE 总线上写 1 个字节 void write_byte(uchar val) { uchar i; for(i=8;i>0;i--) {

    DQ=1;_nop_();_nop_(); //从高拉倒低 DQ=0;_nop_();_nop_();_nop_();_nop_();//5 us DQ=val&0x01;//最低位移出 delay(2) ; //66 us

    13

    val=val/2 ;//右移 1 位 } DQ=1; delay(1); } /****************DS18B20 读 1 字节函数************************/ //从总线上取 1 个字节 uchar read_byte(void) { uchar i; uchar value=0; for(i=8;i>0;i--) { DQ=1;_nop_();_nop_(); value>>=1; DQ=0;_nop_();_nop_();_nop_();_nop_();//4 us DQ=1;_nop_();_nop_();_nop_();_nop_();//4 us if(DQ)value|=0x80; delay(2);//66 us } DQ=1; return(value); } /*****************读出温度函数************************/ read_temp() { ow_reset();//总线复位 delay(200); write_byte(0xcc);//发命令 write_byte(0x44);//发转换命令 ow_reset(); delay(1); write_byte(0xcc); //发命令 write_byte(0xbe); temp_data[0]=read_byte();//读温度值的低字节

    14

    temp_data[1]=read_byte();//读温度值的高字节 temp=temp_data[1]; temp<<=8; temp=temp|temp_data[0];// 两字节合成一个整型变量。 return temp; //返回温度值 } /****************温度数据处理函数************************/ void work_temp(uint tem) { uchar n=0; if(tem>6348) // 温度值正负判断

    {tem=65536-tem;n=1;} // 负温度求补码,标志位置 1 display[4]=tem&0x0f; // 取小数部分的值 display[0]=ditab[display[4]]; display[4]=tem>>4; display[3]=display[4]/100; // 存入小数部分显示值 // 取中间八位,即整数部分的值 // 取百位数据暂存

    display[1]=display[4]%100; // 取后两位数据暂存 display[2]=display[1]/10; // 取十位数据暂存

    display[1]=display[1]%10; //个位数据

    r=display[1]+display[2]*10+display[3]*100; /////符号位显示判断///// if(!display[3]) { { } display[3]=0x0a; //最高位为 0 时不显示 if(!display[2]) display[2]=0x0a;//次高位为 0 时不显示 } if(n){display[3]=0x0b;} //负温度时最高位显示"-" } void buz() {int y; for(y=1;yhigh-1&&r<129) { con=0; } if(r<low) { con=1; } if(r==high-2) { b=20;buz();}else beep=0; if(r==high-1 ) { b=40;buz();}else beep=0; if(r==high-0 ) { b=80;buz();}else beep=0; if(r==low+2) {b=80;buz();}else beep=0; if(r==low+1) {b=40;buz();}else beep=0; if(r==low) {b=20;buz();} else beep=0; } //*********设置温度显示转换************// void xianshi(int horl) { int n=0; if(horl>128) { horl=256-horl;n=1; } display[3]=horl/100; display[3]=display[3]&0x0f; //蜂鸣器报警子函数    16

    display[2]=horl%100/10; display[1]=horl%10; display[0]=0; if(!display

[3]) { display[3]=0x0a; if(!display[2]) { display[2]=0x0a; } } if(n) { display[3]=0x0b; //负温度时最高位显示"-" } } //*********按键查询程序**************// void keyscan() { int temp1; if(set==0) { int a=1; while(1) { delay(500);//消抖 if(set==0) { temp1++; //最高温度和最低温度标志位 //次高位为 0 时不显示 //最高位为 0 时不显示

    while(!set) scan(); } if(temp1==1) { xianshi(high);

    17

    if(set1==0) {while(!set1); scan(); a=3; } scan(); if(add==0) {while(!add) scan(); high+=a; } if(dec==0) { while(!dec) scan(); high-=a; } } if(temp1==2) {xianshi(low); if(add==0) { while(!add) scan(); low+=a; } if(dec==0) {while(!dec) scan(); low-=a; } scan(); } if(temp1>=3) {

    18

    temp1=0; break; }} }} /****************主函数************************/ void main() {dm=0x00; w0=0; w1=0; w2=0; w3=0; w4=0; w5=0;

    for(h=0;h<4;h++) {display[h]=0; } ow_reset(); write_byte(0xcc); write_byte(0x44); for(h=0;h<100;h++) {scan(); } while(1) {if (temp1==0) { //初始化端口 //开机显示"0000"

    //开机先转换一次 //Skip ROM //发转换命令 //开机显示"0000" work_temp(read_temp());//处理温度数据 BEEP(); scan(); //显示温度值

    19

    keyscan(); } else keyscan(); } } //***********************结束**************************//

    20

    附录:参考文献 附录:参考文献

    1) 雷思孝.单片机系统设计及工程应用[M].西安电子科技大学出版社,2007. 2) 马忠梅,张凯,等. 单片机的 C 语言应用程序设计(第四版) 北京航空航天大学出版 社 3) 廖常初.现场总线概述[J].电工技术,1999.

    评阅意见

    教师签名: 年 月 日

    21

单片机课程设计报告总结和收获篇八
《单片机课程设计总结报告参考模板22》

湖州师范学院

课程设计总结报告

课程名称 电子系统综合设计 设计题目 基于STC89C52的电子号码锁的设计

专 业 班 级 姓 名

学 号

指导教师

报告成绩

信息与工程学院(求真学院信息与工程系,两选一)

二〇〇九年十月十九日

《电子系统综合设计》课程设计任务书

一、课题名称

《基于STC89C52的电子号码锁的设计》

二、设计任务

1. 采用STC单片机和键盘,设置4位密码用于模拟门锁、保险箱的开门密码,设置的密码存

储在I2C AT24X存储器芯片中;

2. 上电时初始化密码为“0000”,数码管显示为“0000”;

3. 密码设置与更改:输入“*XXXX#YYYY#”,其中“XXXX”为原先4位密码,第一次设置

为初始密码,“YYYY”为欲设置的4位密码,如设置成功,则绿色LED灯亮,蜂鸣器长鸣一声,之后LED灭;否则红色LED闪烁三次。

4. 模拟开门:输入“#YYYY#”,如输入密码与存储的密码相符,则绿色LED灯亮,蜂鸣器

发出“滴-滴-滴”三声,之后LED灭;否则红色LED闪烁三次。

三、设计报告撰写规范

单片微机应用系统设计总结报告正文,主要含以下内容(硬件、软件各部分内容也可组合起来进行撰写说明):

1. 系统总体设计方案(画出系统原理框图、方案的论证与比较等内容);

2. 硬件系统分析与设计(各模块或单元电路的设计、工作原理阐述、参数计算、元器件选择、

完整的系统电路图、系统所需的元器件清单。等内容);

3. 软件系统分析与设计(各功能模块的程序设计流程图与说明、软件系统设计、软件抗干扰

措施、完整的程序等内容);

4. 系统仿真调试与参数测量(使用仪器仪表、故障排除、电路硬件和软件调试的方法和技巧、

指标测试的参数和波形、测量误差分析);

5. 总结(本课题核心内容及使用价值、电路设计、软件设计的特点和选择方案的优缺点、改

进方向和意见等);

6. 按统一格式列出主要参考文献。

《基于STC89C52的电子号码锁的设计》

课程设计总结报告

一、系统总体方案

(以下各小节可以根据内容分1.XXX 2.XXX 3.XXX 分别进行撰写)

(画出系统原理框图、方案工作过程的论述、整体设计电路图、单片机的选型);

二、单片机概述

用到的单片机的选型及主要特点,设计时需要注意的问题„

三、键盘电路

键盘扫描概述、此次用到的键盘电路图、工作原理、硬件电路注意的问题、程序流程、编程注意点„

四、显示电路

一般显示电路概述、用到的电路图、用到动态扫描工作原理、硬件电路注意的问题、程序流程、编程注意点„

四、单片机扩展I2C总线器件的接口与通信

I2C总线器件概述、工作原理、与单片机的接口电路、模拟通信、程序流程、编程注意点„

五、系统调试

调试的软硬件环境和使用说明(参考901U--USB全自动在线编程单片机实验板实验指导书)、调试技巧与方法、调试过程中遇到的问题及解决方法„

六、总结

心得体会、课程设计中遇到的问题及解决方法„

附录:

(完整的程序,字号可小一二号,分两栏排版以节省纸张)

主要参考文献:

例:

[1] 周立功.ARM&WinCE实践与实验:基于S3C2410[M]北京:北京航空航天大学出版社,2007.

[2] 李朝青.PC机及单片机数据通信技术[M].北京:北京航空航天大学出版社,2000

[3] 马春华,于莉莉.SMS方式远程监控软件的设计与实现[J].广东通信技术,2003,23

(4):39-41.

[4] 肖冬荣,殷传军.鲁棒GMC 控制及其工程应用[J]微计算机信息2007,30(3):21-23

单片机课程设计报告总结和收获篇九
《单片机课程设计报告》

单片机课程设计报告

题 目 基于单片机的光立方设计

院 系

专 业

姓 名

学 号

指导教师

信息科学与技术学院 计算机科学与技术 曹嘉宇 蒋朝根 20122301

摘要

当今社会,随着电子行业的不断发展,单片机凭借着其极高的性能价格比,受到人们的重视和关注,应用广泛,发展迅猛。单片机体积小,质量小,抗干扰能力强,对环境要就不高,价格低廉,灵活性好,已广泛的应用在工业自动化、通信、自动检测、信息家电、电力电子航空航天等各个方面。成为现代生产和生活中不可缺少的一部分。

对于大二的我们来说,学习单片机也一个学期了,对单片机有了大体的了解,此次单片机课程设计,我们采用的是STC89C52RC系列的单片机,利用此单片机来控制一个“光立方”。光立方顾名思义就是一个立方体,我们采用的是

16*16*16的模式,将LED灯分成八层,利用程序来编写各种不同的效果来控制LED的亮灭,最终使得整个立方体展现不同的造型和图案,使其变得美轮美奂,绚丽多彩。

1绪论

1.1课题研究的背景: “光立方”一词正逐渐引起了全国人民的关注,并得到了全球的高度肯定。由此,也掀起了光立方的设计与学习热潮,在原有的基础上不断增加难度,增加变换花样,吸引电子爱好者对其研究、创新。

事实上,“光立方”已经渗透到以下几个方面:照明类LED光效——户外景观照明展开的视觉装饰活动;信息传播类LED光效——各种类型的大屏幕点缀着人们的生活;光立方制作所需材料较常见,成本低廉、性价比高等优点具有较高的研究价值。

1.2课题研究的意义: 本次毕业设计一改传统的平面流水灯的风格,而是从平面向立体发展,通过更宽广的三维空间呈现出更加绚丽的效果,直接冲击着人们审美视觉,不在停留在乏味的平面成像。3D8光立方主体部分由512LED灯组成,在制作过程中锻炼学习动手焊接能力,并以低成本,智能化产品对实现经济利益、商业价值的形成具有积极的推动作用。

1.3 论文研究内容与结构安排 本文研究的内容如下:

单片机控制模块:采用89C52控制核心,其它相关的外围电路构成本系统的模块; 时钟信号电路:采用普通晶体时钟源,其中晶体用11.0592MHZ的石英晶振;

显示模块:通过对单片机编程,利用程序来控制LED的亮灭,以达到动画的效果。 具体介绍内容安排如下:

第二章主要阐述系统方案的选择与论证,将系统分为主控模块、驱动模块、显示模块等,并分别对各模块方案进行了选择与论证。

第三章主要介绍了个硬件电路的设计,还对各单元实现的功能以及芯片引脚功能特点进行说明。

同时阐述整个系统的设计思路以及搭建方法。

第四章主要阐述主程序的编写以及整个软件的框架。

第五章阐述的是整个光立方系统的调试过程以及在调试过程中出现的软件、硬件问题。并阐述了解决这些问题的办法。

第六章主要对整个毕业设计的设计过程进行总结,并阐述了在制作过程中的收获和心得

2总体设计

2.1 工作原理 本设计以STC12C5A60S2单片机为控制核心设计一个由512个蓝色LED灯组成的光立方。系统主要由主控、驱动、显示等模块构成。系统模块框图如图2-1:

图2-1 系统结构框图

3 系统硬件电路设计与实现

3.1 硬件电路设计 本电路是由STC12C5A60S2单片机为控制核心,其和8051指令、管脚完全兼容,而且其片内的具有大容量程序存储器且是FLASH工艺的,具有串口烧写编程功能,低功耗;时钟源电路有很多种,比如阻容低速时钟源、普通晶体时钟源、带缓冲放大的晶体时钟源等等,考虑到电路稳定及材料选购等方面,决定采用普通晶体时钟源,其中晶体用12MHZ的石英晶振[12]。显示部份由显示部份由512个雾面LED灯组成来进行显示。

[1]

3.2 单片机最小系统

单片机的最小系统就是让单片机能正常工作并发挥其功能时所必须的组成部分,也可理解为是用最少的元件组成的单片机可以工作的系统。对89C51单片机来说, 最小系统一般应该包括: 单片机、时钟电路、复位电路、输入/ 输出设备等(见图3-1)。

单片机的最小系统如下图所示: [7]

图3-1单片机最小系统框图

图3-2 单片机最小系统

3.2.1时钟电路

在设计时钟电路之前,让我们先了解下单片机上的时钟管脚:

XTAL1(19 脚) :芯片内部振荡电路输入端。

XTAL2(18 脚) :芯片内部振荡电路输出端。

XTAL1 和XTAL2 是独立输入和输出反相放大器,它可以被配置为使用石英晶振的片内振荡器。

内部方式的时钟电路如图3-3(a)所示,在XTAL1、XTAL2 的引脚上外接定时元件(一个石英晶体和两个电容),内部振荡器便能产生自激振荡。经过综合考虑,本设计中采用了11.0592M 的石英晶振。和晶振并联的两个电容的大小对振荡频率有微小影响,可以起到[9]


单片机课程设计报告总结和收获相关热词搜索:单片机课程报告总结 单片机课程设计报告 单片机课程设计总结

最新推荐成考报名

更多
1、“单片机课程设计报告总结和收获”由中国招生考试网网友提供,版权所有,转载请注明出处。
2、欢迎参与中国招生考试网投稿,获积分奖励,兑换精美礼品。
3、"单片机课程设计报告总结和收获" 地址:http://www.chinazhaokao.com/wendang/shixibaogao/175953.html,复制分享给你身边的朋友!
4、文章来源互联网,如有侵权,请及时联系我们,我们将在24小时内处理!