1. 求单片机课程设计 用汇编语言设计计数器(要求从0~9999,在数码管上显示)!!!!!!!!!!!!!
单片机课程设计报告
题 目 计时器设计
班 级 电 信 093
学 号 090301334
姓 名 周 剑
时 间 2010.12.20
成 绩
指导教师 石巧云
目录
一、 前言………………………………………………………………1
单片机的应用介绍…………………………………………………1
二、 课程设计的目的和要求…………………………………………2
(一)课程设计的目的…………………………………………… 2
(二)课程设计的基本要求……………………………………… 3
三、 总体设计…………………………………………………………3
(一)工作原理…………………………………………………… 3
(二)硬件总体设计……………………………………………… 4
(三)软件总体设计……………………………………………… 5
四、综合调试………………………………………………………… 7
(一)keil调试 …………………………………………………… 8
(二)Proteus调试………………………………………………… 9
五、结束语…………………………………………………………… 9
六、参考文献 …………………………………………………………10
前言
单片机的应用介绍
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用单片机的应用介绍
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应
智能化控制的科学家、工程师。
与智能化控制的科学家、工程师。
单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:
(1.在智能仪器仪表上的应用
(2.在工业控制中的应用
(3.在家用电器中的应用
(4.在计算机网络和通信领域中的应用
(5.单片机在医用设备领域中的应用
(6.在各种大型电器中的模块化应用
此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。
二、 课程设计的目的和要求
(一)课程设计的目的
1. 进一步熟悉和掌握8051单片机的结构及工作原理。
2. 掌握单片机的接口技术及相关外围芯片的外特性,控制方法
3. 通过课程设计,掌握以单片机核心的电路设计的基本方法和技术,了解表关电路参数的计算方法。
4. 通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。
5. 通过完成一个包括电路设计和程序开发的完整过程,使学生了解开发一单片机应用系统的全过程,为今后从事相应打下基础。
(二)课程设计的基本要求
用AT89C51 单片机的定时/计数器T0产生一秒的定时时间,作为秒计数时间,但一秒产生时,秒计数加1,秒计数加到60时,自动从0开始。单片机晶振频率为12MHz。
二、 总体设计
(一) 工作原理
LED显示器的结构与原理
1、结构种类
七段LED显示器(数码管)系发光器件的一种。常用的LED发光器件有两类:数码管和点阵。数码管内部有七个条形发光二极管和一个小圆点发光二极管组成,根据各管的亮暗组成字符。常见数码管有10根管脚。管脚排列如下图(a)所示。其中COM为公共端,根据内部发光二极管的接线形式可分为共阴极和共阳极两种。如下图(b)(c)所示,使用时,共阴极数码管公共端接地,共阳极数码管公共端接电源。发光二极管需5~10mA的驱动电流才能正常发光,一般需加限流电阻控制电流的大小。
2、显示原理
LED数码管的a~g七个发光二极管。加正电压的发光加零电压的不能发光,不同亮暗的组合能形成不同的字符,这种组合称为字型码。共阳极和共阴极的字型码是不同的,如下图所示。
LED字符显示代码表
显示 段符号 十六进制代码
dp g f e d c b a 共阴极 共阳极
0 0 0 1 1 1 1 1 1 3FH C0H
1 0 0 0 0 0 1 1 0 06H F9H
2 0 1 0 1 1 0 1 1 5BH A4H
3 0 1 0 0 1 1 1 1 4FH B0H
4 0 1 1 0 0 1 1 0 66H 99H
5 0 1 1 0 1 1 0 1 6DH 92H
6 0 1 1 1 1 1 0 1 7DH 82H
7 0 0 0 0 0 1 1 1 07H F8H
8 0 1 1 1 1 1 1 1 7FH 80H
9 0 1 1 0 1 1 1 1 6FH 90H
(二) 硬件总体设计
1、主要元器件选择
主要元器件选用型号和数量如下:
1个AT89C51(单片机) 1个CRYSTAL(晶振) 2个CAP(电容)
3个RES(电阻) 2个7SEG-COM-CATHOD(共阴极数码管)
1个CAP-ELEC(电解电容)
2、系统板上硬件连线
(1. 把“单片机系统”区域中的P0.0/AD0-P0.7/AD7端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-h端口上;要求:P0.0/AD0对应着a,P0.1/AD1对应着b,……,P0.7/AD7对应着h。
(2. 把“单片机系统”区域中的P2.0/A8-P2.7/A15端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-h端口上;要求:P2.0/A8对应着a,P2.1/A9对应着b,……,P2.7/A15对应着h。
3、计时器电原理图
(三)软件总体设计
1、程序设计内容
(1.在设计过程中我们用一个存储单元作为秒计数单元,当一秒钟到来时,就让秒计数单元加1,当秒计数达到60时,就自动返回到0,从新秒计数。
(2.对于秒计数单元中的数据要把它十位数和个数分开,方法仍采用对10整除和对10求余。
(3.在数码上显示,仍通过查表的方式完成。
(4.一秒时间的产生在这里我们采用软件精确延时的方法来完成,经过精确计算得到1秒时间为1.002秒。
2、延时1秒子程序
DELY1S: MOV R5,#100
D2: MOV R6,#20
D1: MOV R7,#248
DJNZ R7,$
DJNZ R6,D1
DJNZ R5,D2
RET
3、程序流程图
4、汇编源程序设计
Second EQU 30H
ORG 0
START: MOV Second,#00H ;设置显示初值为00
NEXT: MOV A,Second
MOV B,#10
DIV AB ;十位数存于A中,个位数存于B中
MOV DPTR,#TABLE ;字型码地址送DPTR
MOVC A,@A+DPTR ;查十位字型码
MOV P1,A ;送P1口显示
MOV A,B
MOVC A,@A+DPTR ;查个位字型码
MOV P2,A ;送P2口显示
LCALL DELY1S ;调用延时1秒子程序DELY1S
INC Second ;显示值加1
MOV A,Second
CJNE A,#90,NEXT ;显示值不为90转到NEXT执行
LJMP START ;返回到主程序
DELY1S: MOV R5,#100 ;1S延时子程序
D2: MOV R6,#20
D1: MOV R7,#248
DJNZ R7,$
DJNZ R6,D1
DJNZ R5,D2
RET
TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;共阴数码管字型码
END
四、综合调试
(一)Keil调试
程序调试完成图
(二)Proteus调试
五、结束语
完成情况:经过两个星期的努力,我们一组成员终于完成了秒表控制方案的设计,主要是用AT89C51单片机实现0-99秒计时器控制方案。本设计还包含数码管显示部分,可直接显示时间可方便观察。通过这次课程设计,使我得到了一次用专业知识和专业技能去分析问题、解决问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及用汇编语言设计程序的思路技巧等方面都能向前迈了一大步,为日后成为合格的应用型人才打下良好的基础。
六、参考文献
[1]. 江力主编,单片机原理与应用技术,清华大学出版社,2008年4月第6次印刷
[2].蔡骏主编,单片机实验指导教程,安徽大学出版社,2008年7月第一次印刷
[3]. http://www.51c51.com/51test/cc411.htm
2. 单片机实训心得
通过为期一周的单片机实训,是我们对这门课有了许多新的了解,弥补了在课堂上学习的不足。相信这对我们贺厅以后的学习和工作都会有很大的帮助。我们一定要在最短的时间里对这些不足加以改正!
首先,在这次试训中我被单片机强大的功能所震撼,以前在课堂上完全没有能理解可编程单片机的优越性。这次通过实体仿真软件等辅助软件的共同效果,是这次试训有了鲜明的活力。换是我们认识
到这次试训不仅仅是一个软件的应用,更多的是使我们认识到学习到很多在课堂上无法得到的东西。特别是protues软件的功能是我们了解了当今开发系统的新方向,简直太不可思议啦!
单片机作为一种最简单的软件,与我们的日常生活息息相关,了解一些单片机程序的简单录入是费城必要的。如:LED显示器、键盘和显示器的应用和原理。
在被刺实训中我们每个人通过一个八位流水灯的制作,使我们深深地体会到了单片机在现实生活中的小小应用,既增强了我们的好奇心,又巩固了我们的理论知识。更让我们体会到了单片机手动的开
始平台的完善与成熟。只要你有想法,单片机就有可能让他成为现实。这里我学习完protues软件后的第一感觉是,虽然这软件工作不稳定,但是会有相当不错的效果出来。这对我以后的工作一定咐拍旦会有帮助的。在这次试训中不仅只对单片机编程有了新的认识,还对整个单片机的开发平台都有了一厅的了解,这是一笔不错的收获。
通过这几天的试训,使我的感触很深,真实“条条大路通罗马”,要达到目的,不同的人就有不同的方法。只要你的方法不错!五花八门都可以,而且是各有特色。走出来的结果都有各自的独到之处
。在编程中“简”字贯穿于整个程序设计中,越简单越好,毕竟单片机留给用户的资源是有限的,所以我们要充分利用这些资源,达到更好的效果,这些是我们在以后的学习生活中应值得注意的地方。
在试训中有苦有甜,当我们为一个很难攻破的程序找出路时,心情烦躁,感觉自己很不可理喻,当程序一点一点编好后,自己从心底感觉到一点小小的安慰,看着自己的成果。感觉很欣慰,有一丝丝的
甜意,几天的实训使自己的思维逻辑也有了小小的进步。
2.结束了两周的电视机实训,我们又迎来了单片机课程设计实训,真是让我们受益匪浅啊?学到了很多东西,不管怎么样,先感谢学校给我的这么多机会.真正的学到了东西.为期一周的单片衡扰机课程设计让我们受益匪浅.此次课程设计软件与硬件相结合,考察了我们的焊接水平与编程能力.对于我们应用电子技术的学生而言焊接是不成问题,也很顺利;可到了编程时就出现了很大的障碍,先开始的显示时钟还算顺利,下面的报警部分就花费了相当长的时间,还有加上报警时的音乐也是我们到图书馆里查阅资料由汇编转化成C语言得来的.本来还以为编程会很简单的,等到实际操作起来才知道它的复杂性,没有想象中的那么得心应手,理解流程是有思维的前提.单片机是我们上学期开设的课程,所以很多专业知识也都忘记了.不过经过我们一步步的努力,花费的时间与精力终于没有白费,效果渐渐地出现了.其实本身程序的思维是正确的,只是步骤中有点小错误,所以导致整个程序的结果很乱,在仔细修改程序之后,终于一步步地达到效果了.
我们将各个部分的程序编好后怎么都连不起来,出不了预期的效果.对于硬件在编程过程中PCB板的接触又是一个头疼的问题,在进行编译的时候,数码显示管上什么都没有,按一下旁边与之相连的元器件时就有显示了,所以也花费了好多时间在PCB板的重新焊接上.对于软件我们在时钟完成后就对其加入了报警系统,可加了之后发现程序乱了,以前的时钟也不可以控制了.经过反复研究,发现接地接错了位置,导致了用来报警的红灯跟绿灯根本不亮,然后就将 接地线重新焊接了一下,功夫不负有心人,红灯亮了,配合编好的程序,用纸板挡住了发射管与接收管之间的信号传输,数码显示管出现闪烁的效果,并且没信号的时候绿灯亮,有信号的时候红灯就亮了,这个现象让我们喜出望外.经过修改时钟程序和报警系统都被使用上了,可更大的难题就是如何让它报警?这困扰了我们,数码显示管上终于有了闪烁的效果,可报警声还没加的上去.老师的要求是除了蜂鸣器上的报警声再加一段音乐.翻阅了图书馆里的书籍,查出来的音乐程序都是用汇编编的,要将此程序放到主程序中就必须将汇编程序改编成C语言程序.这再次困扰了我们,虽然以前也学过汇编跟C之间的互换,可都是简单的,从没涉及到这么复杂的程序过,改编很是有压力,经过研究,我们将汇编程序舍弃了,到网上下载了一段音乐程序,是C语言编的.要让音乐在我们的红外报警系统中唱出来可不是什么简单的事情,虽然找到了音乐程序,但要让音乐程序跟我们的主程序融合在一起得花费点心思了.
最后在全组人竭尽全力,老师的精心指导下,程序基本编写成功,这是我们共同努力的结果,在享受我们成果之时,不得不感慨单片机的重要性与高难度性,所以为期一周的单片机课程设计没有浪费,我们从中学到了很多知识.,也让我们对单片机有了更深一步的了解.虽然最后结果是出来了,可这与老师的精心指导是分不开的,她引导我们的思路,本来一窍不通的我们经过老师的点拨基本上通了,所以说老师是功不可抹的.
总而言之,单片机课程设计对于我们有很大的帮助,我们从中受益匪浅!
3. 单片机课程设计心得体会范文1000字
做了两周的课程设计,有很多的心得体会,有关于单片机方面的,更多的是关于人与人之间关系方面的。
4. 简论单片机课程中单片机实验教学探究
简论单片机课程中单片机实验教学探究
论文摘要:单片机的开发与应用、学习将造就一批计算机智能化控制的工程师、科学家。一些中等院校也相继开设了单片机课程设计及相关的课程。在单片机及接口技术课程的教学过程中,实验教学是重要的组成部分。针对单片机课程的教学改革,不断加强单片机课程实验环节,改革教学方法,虚拟仿真实验在单片机教学中的应用,实践表明,该方法有利于激发学生的学习兴趣,培养学生的工程素养和创新能力,提高了教学效果。
论文关键词:单片机;教学;仿真实验
“单片机原理”是一门理论性、逻辑性、实践性很强的学科,是电类专业一门非常重要的专业基础课,把微机接口部分、汇编语言部分、通信技术部分的知识点等综合在一起,属于逻辑性、工程性、技术性、实践性很强的一门专业基础课。该课程作为电类专业最重要的核心课程之一,它是电类专业高素质技能型人才所需全部自动控制类知识结构的载体,占据着非常重要的位置。
然而,传统的单片机教学一般注重课程本身的体系结构和前后的逻辑联系,均以学科体系为出发点,忽略了“可学性”,致使学生学得吃力,老师教得辛苦,教学效果却没有显现出来。
一、研究背景及意义
目前,全国将单片机列入单独的比赛项目,在考查中注重学生的能力培养,学生的技能素养教育成为重中之重,加之社会需求高技能人才,许多学校为了适应社会的发展和市场需求在不同的专业开设了单片机课程,然而单片机课程是一门实践性很强的课程,要想在教学过程中取得很好的效果,就必须要求学生在学习过程中多动手实践,但有的学校教学设备有限,怎样解决这个问题。仿真实验课可以让学生在单片机工作室里做中学,真正玩转单片机,也同时解决了学生学起来枯燥,老师教起来吃力的尴尬局面。
目前单片机教学中存在诸多问题。如单片机课程理论为主,实验教学多是进行验证性实验。单片机实验室存在场地和时间限制,学生除了课上,很难有机会接触到所需要的设备,如仿真器、实验板等,个人配备成本太高,个体无法承担。而且实验箱只能验证试验的基本作用和意义,就无从谈起学生动手能力的训练和提升。单片机在当今社会中的应用速度发展迅速,然而单片机教材陈旧,实验设备很容易落后、老化等问题,必然会带来耗资等问题。由此可见,构建成本低廉的单片机仿真实验系统对于单片机教学意义重大。它不仅可以降低实验设备投资,而且能培提高学生的工程素质,养学生的创新精神。在单片机控制系统的设计开发过程中,我们不单要突出设备的自动化程度及智能性,另一方面也要重视控制系统的工作稳定性,否则就无法体现控制系统的优越性。
由于单片机控制系统应用系统的工作环境往往是比较恶劣和复杂的,其应用的可靠性、安全性就成为一个非常突出的问题。单片机控制系统应用必须长期稳定、可靠地运行,否则将导致控制误差加大,严重时会使系统失灵,甚至造成巨大的损失。
影响单片机控制系统应用的可靠、安全运行的主要因素是来自系统内部和外部的各种电气干扰,以及系统结果设计、元器件选择、安装、制造工艺和外部环境条件等。这些因素对控制系统造成的干扰后果主要表现在下述几个方面。(1)数据采集误差加大。(2)控制状态失灵。(3)数据受干扰发生变化。(4)程序运行失常。
由于受到干扰后计数器的值是随机的,因而导致程序混乱。通常的情况是程序将执行一系列毫无意义的指令,最后进入“死循环”,这将使输出严重混乱或系统失灵。
随着单片机及其接口技术的飞速发展,目前面对职业教育存在的突出问题:质量能力与规模能力不相适应,教学信息化程度低,古老的填鸭式课堂教学模式仍应用普遍,“双师型”教师队伍建设机制缺乏完善性,科学管理水平和改革创新能力就提到了日程,管理制度不健全,学校基本办学规范不健全,科学的职业教育评价标准和评价机制达不到标准,学生成长的“通道”不畅通。
从新的教学要求来看,这类课程仅在课堂上讲授基本原理是不够的,必须在教学中加强实践环节,开出一定数量的高质量的配套实验课活独立的实验课程,让学生有足够的实验机会。那么对于单片机实验教学环境建设就相应提出了高要求。怎样解决这个问题,单片机仿真实验应运而生。
二、“单片机仿真实验”初探
伴随着计算机技术的飞速发展,在各个领域都出现了各种仿真系统,为各种实际系统的开发提供了准确可靠的保证,同时为很多学校、企业等节约了大量的人力和物力。在电子信息技术领域也同样出现了大量的仿真工具,如课堂上用到的各种EDA工具;模数混合仿真的Protel、Multisim等常见的电子应用仿真软件,数字系统设计的Fundation、Maxplus II、Expert等。
所谓“仿真”,就是通过开发工具真实地模拟用户系统的运行环境,使用户能够在透明和可控的条件下观察系统运行过程中的状态和结果,仿真实际上也是一种软件和硬件的综合调试手段,它能提高应用系统开发的效率。
用通俗的话来描述“单片机仿真实验”就是在一块虚拟电路板上按照真实电路的设计构想放置一些虚拟的元器件,并模拟实际烧ROM的过程链接上程序代码,“接通”电路观察效果,如果不理想的话可以反复修改电路或程序代码,直至符合设计要求为止。
仿真实验的好处是显而易见的。在没有仿真实验的年代,每架构一个真实的电路都需要费时费力费钱,稍有不慎还有可能前功尽弃,再加上单片机中的ROM芯片是有擦写次数的,而一段程序可能需要修改擦写多次,无形中减少了ROM芯片的使用寿命。仿真实验是在计算机上进行的(可能会费点儿电),以上问题都不存在,而且就现在的仿真软件来说,仿真出来的电路效果与真实电路一模一样,毫不夸张地说,只要仿真是成功的,就可以直接下工厂的流水线生产了。