




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
物理与电气工程学院10级自动化3班 单片机课程设计单片机原理及接口技术课程设计说明书设计课题:秒表的设计 专业班级:级自动化()班 姓名学号:高 扬(080310186) 秦松亭(080310183) 宋龙文(080310152) 产江华(080310138) 指导教师:郭玉 设计时间: 2012年12月 物理与电气工程学院 二一二年十二月摘要二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。但是,实际工作中并不是任何需要计算机的场合都要求计算机有很高的性能,一个控制电冰箱温度的计算机难道要用P4吗?应用的关键是看是否够用,是否有很好的性能价格比。单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。自从1976年问世以来,单片机获得了巨大的发展。现在比较流行的单片机是美国Intel的MCS51/96以及Motorola的MC系列,Zilog的Z8系列,同时还有更多新型的、功能更强的单片机不断出现。 Abstract:Twentieth century across the three “power” of the era, that the age of electricity, the electronic age and has now entered the computer age. However, the actual work where the computer is not any need to require a high performance computer, a control fridge temperature P4 computer do you use? The key is to see whether the application of adequate, whether there is a very good cost performance. Single chip, also known as single-chip microcontroller, it is not the completion of a logic function of the chip, but a computer system integrated into a chip. Speaking in general terms: a single chip into a computer. Its small size, light weight, cheap, for learning, application and development of facilities provided. Since its inception in 1976, SCM was a great development. SCM is now more popular in the United States, and Motorola, Intels MCS51/96 MC series, Zilogs Z8 series, as well as more new, more powerful microcontrollers continue to emerge. 关键字:单片机,秒表,系统设计。目录摘要2目录3一、课程设计的性质、目的和意义41课程设计的性质:42课程设计的目的和任务:4二、内容和要求41设计题目42设计内容43设计要求4三、设计方案41.设计方案的选择41.1 计时方案41.2显示方案42.硬件部分72.1 STC89C52RC单片机介绍72.2 总仿真电路原理图,如图1.5所示73. 软件部分93.1主程序93.2 定时器T0中断服务程序93.3定时器T1中断服务程序93.4外部中断程序93.5 BCD转码子程序103.6显示子程序103.7调时功能程序103.8延时程序10四、设计总结10五、教材及参考书11六、附录12一、课程设计的性质、目的和意义1课程设计的性质:“单片机课程设计”是自动化、电子信息及电气工程等专业本科学生的一门实践必修课。2课程设计的目的和任务:提高学生理论知识与联系实际相的学风和动手实践技能,培养学生综合运用理论知识解决实际问题的能力。巩固和加深对单片机基本知识的理解,培养学生的创新能力,经过搜集资料,初步方案设计,硬件电路设计、程序编写,撰写设计报告的过程,使学生得到一次科学研究工作的初步训,为后续课程的学习、毕业设计乃至毕业后的工作打下一个良好的基础。二、内容和要求 1设计题目 秒表的设计 2设计内容 (1)系统硬件电路原理分析。 (2)系统控制程序的编写与调试。 3设计要求设计一个2位LED数码显示的“秒表”,显示时间为0059秒;具有启停和时间调整功能,可扩展为电子钟,显示时-分-秒三、设计方案本次设计时钟电路,使用了STC89C5RC单片机芯片控制电路,单片机控制电路简单且省去了很多复杂的线路,使得电路简明易懂,使用键盘键上的按键来调整时钟的时、分、秒,同时使用汇编语言程序来控制整个时钟显示,使得编程变得更容易,这样通过四个模块:键盘、芯片、数码管显示、蜂鸣器报警即可满足设计要求。1.设计方案的选择1.1 计时方案使用单片机内部的可编程定时器。利用单片机内部的定时计数器进行中端定时,配合软件延时实现时、分、秒的计时。该方案节省硬件成本,但程序设计较为复杂。1.2显示方案于系统要显示的内容较简单,显示量不多,所以选用数码管既方便又经济。LED有共阴极和共阳极两种。二极管的阴极连接在一起,通常此公共阴极接地,而共阳极则将发光二极管的阳极连接在一起,接入+5V的电压。一位显示器由8个发光二极管组成,其中7个发光二极管构成字型“8”的各个笔划(段)ag,另一个小数点为dp发光二极管。当在某段发光二极管施加一定的正向电压时,该段笔划即亮;不加电压则暗。为了保护各段LED不被损坏,需外加限流电阻。图1.1 LED数码管结构原理图众所周知,LED显示数码管通常由硬件7段译码集成电路,完成从数字到显示码的译码驱动。本系统采用软件译码,以减小体积,降低成本和功耗,软件译码的另一优势还在于比硬件译码有更大的灵活性。所谓软件译码,即由单片机软件完成从数字到显示码的转换。从LED数码管结构原理可知,为了显示字符,要为LED显示数码管提供显示段码,组成一个“8”字形字符的7段,再加上1个小数点位,共计8段,因此提供给LED数码管的显示段码为1个字节。各段码位与显示段的对应关系如表表1.2 段码位D7D6D5D4D3D2D1D0显示段dpgfedcba表1.2 各段码位的对应关系需说明的是当用数据口连接LED数码管adp引脚时,不同的连接方法,各段码位与显示段有不同的对应关系。通常数据口的D0位与a段连接,D1位与b段连接,D7位与dp段连接,如表1所示,表2.3为用于LED数码管显示的十六进制数和空白字符与P的显示段码。根据STC89C52RC单片机灌电流能力强,拉电流能力弱的特点,我们选用共阳数码管。将AT89C2051的P1.0P1.7分别与共阳数码管的ag及dp相连,高电平的位对应的LED数码管的段暗,低电平的位对应的LED数码管的段亮,这样,当P0口输出不同的段码,就可以控制数码管显示不同的字符。例如:当P0口输出的段码为1100 0000,数码管显示的字符为0。字型共阳极段码共阴极段码字型共阳极段码共阴极段码0C0H3FH990H6FH1F9H06HA88H77H2A4H5BHB83H7CH3BOH4FHCC6H39H499H66HDA1H5EH592H6DHE86H79H682H7DHF84H71H7F8H07H空白FFH00H880H7FHP8CH73H表1.3 LED显示段码注:(1)本表所列各字符的显示段码均为小数点不亮的情况。(2)“空白”字符即没有任何显示数码管显示器有二种工作方式,即静态显示方式和动态扫描显示方式。为节省端口及降低功耗,本系统采用动态扫描显示方式。动态扫描显示方式需解决多位LED数码管的“段控”和“位控”问题,本电路的“段控”(即要显示的段码的控制)通过P0口实现;而每一位的公共端,即LED数码管的“位控”,则由P1口控制。这种连接方式由于多位字段线连在一起,因此,要想显示不同的内容,必然要采取轮流显示的方式,即在某一瞬间,只让其中的某一位的字位线处于选通状态,其它各位的字位线处于断开状态,同时字段线上输出这一位相应要显示字符的字段码。在这一瞬时,只有这一位在显示,其他几位则暗。在本系统中,字位线的选通与否是通过74HC138来控制,这里74HC138的功能不再详述。 2.硬件部分2.1 STC89C52RC单片机介绍STC89C52RC单片机是由深圳宏晶公司代理销售的一款MCU,是由美国设计生产的一种低电压、高性能CMOS 8位单片机,片内含8kbytes的可反复写的FlashROM和256bytes的RAM,2个16位定时计数器5。 STC89C52单片机内部主要包括累加器ACC(有时也简称为A)、程序状态字PSW、地址指示器DPTR、只读存储器ROM、随机存取存储器RAM、寄存器、并行I/O接口P0P3、定时器/计数器、串行I/O接口以及定时控制逻辑电路等。这些部件通过内部总线联接起来,构成一个完整的微型计算机。其管脚图如图1.4所示。图1.4 STC89C52RC单片机管脚结构图2.2 总仿真电路原理图,如图1.5所示图 1.5 电子时钟设计总电路图对电子时钟电路设计总共分为6个模块1. 晶振电路模块,采用晶振为11.0592MHz,产生时钟信号2. 复位电路模块,对单片机内部进行复位操作3. 蜂鸣器电路模块,接P1.6,当输入低电平,蜂鸣器会发出声音,以达到整点报时功能和定时功能。4. 按键电路模块,P2.3口清零把矩阵按键分成独立按键使用,按键K1,K2,K3,K4分别控制时钟的启停、分、时调整以及定时的开启,清零按复位按键5. 138译码器控制数码管电路,为了节约I/O口采用74HC138译码器来控制数码管的显示。6. 数码管显示电路模块,仿真电路采用7段共阴极数码管来充当电路的显示模块。在实际单片机开发板中采用7段共阳极数码管充当电路的显示模块,因此数码管的控制采用三极管的开关作用和74HC138译码器一起作用。 3. 软件部分3.1主程序主程序功能主要是初始化、正常现实时间和判断功能转换键。流程图如图所示。开始显示单元清0设打开中断,设置T0、T1计数器工作模式键按下?YN调用转码和显示子函数进入启停、调时功能和定时功能结束调用转码和显示子函数图 1.6 程序流程图3.2 定时器T0中断服务程序定时器T0用于时间计时。定时溢出中断周期可设为50ms,中断进入后,时钟计时累计20次(即1s)时,对秒计数单元进行加1操作。时钟计数单元在定义的6个单元40H45H中, 40H41H 存放秒数据,42H43H存放分数据, 44H45H存放时数据。最大计时值为23小时59分59秒。在计数单元中采用十进制BCD码计数,秒、分、时之间满60进位。3.3定时器T1中断服务程序定时器T1用于时钟的定时设计。当定时溢出进入中断后,可以利用查询法控制按键K2、K3分别调节闹铃的分和时以达到定时的目的。3.4外部中断程序IT1、T1实现对时钟分和时的调整。3.5 BCD转码子程序将输出的十六进制数转码成十进制的BCD码3.6显示子程序数码管显示的数据放在内存单元40H45H中,其中40H41H存放秒数据, 42H43H存放分数据, 44H45H存放时数据,每一单元内均为十进制BCD码。由于采用软件动态扫描实现数据显示功能,显示用的十进制BCD码数据的对应段码存放在ROM表中,显示时,先取出40H45H中的某一地址中的数据,然后查表得对应的显示段码从P0口输出,P1口将对应的数码管位选中供电,就能显示该地址单元的数据值。定时时的显示子程序与闹钟显示子程序基本原理相同,只把地址改动。50H51H存放秒数据, 52H53H存放分数据, 54H55H存放时数据,每一单元内均为十进制BCD码。 3.7调时功能程序通过按键K1来控制时钟的停起。通过“加”按键(K2、K3)来对分、时分别调整。3.8延时程序因为系统是动态显示,为了确保系统在有效显示时间范围内必须执行显示程序,所以使用延时程序。四、设计总结这次课程设计项目虽然是最简单的数字时钟设计,但用的技术和知识是源于课本又远远高于课本的,比如说STC89C52RC基本操作知识,汇编语言方面的知识和对时钟的功能要求等。通过这次自己编写程序,使我摆脱了以往单纯的理论知识学习状态,并且在和实际设计的结合锻炼了我的综合运用所学的专业基础知识。不过在这次课设中我也遇到了不少问题,实际操作时才发现课堂知识和实际运用还是有差距的,不过最终还是在老师或同学的帮助下一个一个解决了。通过这次对课程设计,我也认识到自己对单片机应用方面的知识的贫乏,对于书本上的很多理论知识还不能灵活运用,有很多我们掌握的知识在等着我去学习,我会在以后的学习生活中弥补我所缺少的知识。同时还从中学到了一件很重要的东西,那就是如何从理论到实践的转化。此次的课程设计给我奠定了一个实践基础,我会在以后的学习,生活中磨练自己,使自己掌握更多的技术能力。五、教材及参考书1 胡汉才,单片机原理及其接口技术,清华大学出版社2 邹逢兴,微型计算机接口原理与技术,国防科技大学出版社3 阎凯,微型计算机硬件设计原理分析与维修,科学出版社4 何立民,MCS-51系列单片机应用系统设计系统配置与接口技术,北京航空航天大学出版社5 沈德金,MCS-51系列单片机接口电路与应用程序实例,北京航空航天大学出版社第 21 页 共 21 页六、附录 ;电子时钟汇编程序;= ORG 0000H LJMP MAIN ORG 003H LJMP INTR0 ORG 000BH LJMP TIME0 ORG 0013H LJMP INTR1 ORG 001BH LJMP TIME1 ORG 0050H;=;主程序MAIN: MOV IE,#8FH /打开中断T0、T1、IT0、IT1 MOV TMOD,#21H /设置T0、T1工作方式 MOV TH0,#(65536-50*1000)/256 /设置T0的初值 MOV TL0,#(65536-50*1000) MOD 256 MOV TH1,#0FFH /设置T1的初值 MOV TL1,#0FFH SETB IT0 /设置外部中断0为下降沿触发 SETB IT1 /设置外部中断1为下降沿触发 MOV R0,#0 /对寄存器初始化 MOV R1,#0 MOV R2,#0 MOV R3,#0 MOV R4,#0 MOV R5,#0 CLR P2.3 /P2.3口清零,把矩阵按键分成独立按键使用;=;按键1控制时钟启停K1: JB P2.4,K4X1: ACALL DISPLAY JNB P2.4,X1 /按键抬起再动作 CPL TR0;=;按键K4控制设置定时K4: JB P2.7,M0X4: ACALL DISPLAY JNB P2.7,X4 /按键抬起再动作 CPL TR1;=M0: MOV 30H,R1 MOV 31H,R2 MOV 32H,R3 ACALL TOBCD ACALL DISPLAY ACALL RING ACALL NAOLING SJMP K1;=;T0中断响应程序TIME0: MOV TH0,#(65536-50*1000)/256 /再次给T0设初值 MOV TL0,#(65536-50*1000) MOD 256 INC R0 CJNE R0,#20,M3 /保证时钟1s加一次 INC R1/秒加一 MOV R0,#0CJNE R1,#60,M3INC R2 /分加一MOV R1,#0CJNE R2,#60,M3INC R3 /时加一MOV R2,#0CJNE R3,#24,M3MOV R3,#0M3: RETI;=;外部中断0程序,控制按键K2对时钟分进行调整INTR0: ACALL DL10MS /按键防抖 JB P3.2,M4X2: ACALL DISPLAY JNB P3.2,X2/按键抬起再动作 INC R2 CJNE R2,#60,M4 MOV R2,#0M4: RETI;=;外部中断1程序,控制按键K3对时钟时进行调整INTR1: ACALL DL10MS/按键防抖 JB P3.3,M5X3: ACALL DISPLAY JNB P3.3,X3/按键抬起再动作 INC R3 CJNE R3,#24,M5 MOV R3,#0M5: RETI;=;计数器T1响应中断程序,进入定时设置程序TIME1:;定时分的设置,K2采用查询法M21: JB P2.5,M22 ACALL DL10MS JB P2.5,M22M11: ACALL DISPLAY1 JNB P2.5,M11 /按键抬起再动作 INC R4 CJNE R4,#60,M22 MOV R4,#0/定时时的调节,K3采用查询法,M22: JB P2.6,M00 ACALL DL10MS JB P2.6,M00M12: ACALL DISPLAY1 JNB P2.6,M12 /按键抬起再动作 INC R5 CJNE R5,#24,M00 MOV R5,#0 M00: MOV 33H,#0 MOV 34H,R4 MOV 35H,R5 ACALL TOBCD1 ACALL DISPLAY1 JB P2.7,M21X03: ACALL DISPLAY JNB P2.7,X03 /按键抬起再动作 CLR TR1 /清中断 RETI;=;BCD码转换程序TOBCD: MOV A,30H MOV B,#10 DIV AB MOV 40H,A MOV 41H,B MOV A,31H MOV B,#10 DIV AB MOV 42H,A MOV 43H,B MOV A,32H MOV B,#10 DIV AB MOV 44H,A MOV 45H,B RET;=;定时BCD转码程序TOBCD1: MOV A,33H MOV B,#10 DIV AB MOV 50H,A MOV 51H,B MOV A,34H MOV B,#10 DIV AB MOV 52H,A MOV 53H,B MOV A,35H MOV B,#10 DIV AB MOV 54H,A MOV 55H,B RET;=;数码管显示程序DISPLAY:MOV DPTR,#LEDCA MOV P1,#0E8H MOV A,41H MOVC A,A+DPTR MOV P0,A ACALL DL10MS MOV P1,#0E9H MOV A,40H MOVC A,A+DPTR MOV P0,A ACALL DL10MS MOV P1,#0EAH MOV A,43H MOVC A,A+DPTR ANL A,#7FH MOV P0,A ACALL DL10MS MOV P1,#0EBH MOV A,42H MOVC A,A+DPTR MOV P0,A ACALL DL10MS MOV P1,#0ECH MOV A,45H MOVC A,A+DPTR ANL A,#7FH MOV P0,A AC
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年水利工程师资格考试试卷及答案
- 2025年全国职业资格考试试卷及答案
- 2025年临床医学专业执业考试试卷及解答
- 2025年交通运输管理专业考试试题及答案
- 2025年航空工程技术考试试题及答案
- 2025年创新思维与团队合作能力综合考试试卷及答案
- 2025年互联网金融的法律风险与合规路径的考试卷及答案
- 2025年法学专业学位研究生入学考试试题及答案
- 物资发放领用管理制度
- 物资采购流程管理制度
- 2025年中考英语考前冲刺卷(北京卷)(解析版)
- 2025年物业安全管理专家考试试题及答案
- 2025年医保知识考试题库及答案(医保政策宣传与解读)综合测试
- “临床营养科建设与管理指南”实施细则-I级标准化临床营养科建设示范基地
- 结直肠癌分子病理检测临床实践指南(2025版)解读
- 安全生产管理的技术规范与操作要求试题及答案
- GB/T 34110-2025信息与文献文件(档案)管理核心概念与术语
- 年地理中考热点6银发经济课件
- 云南省昆明市盘龙区2023-2024学年四年级下学期语文期末质量检测卷(含答案)
- Unit 7 Outdoor fun 单元教案 2024-2025学年译林版(2024)七年级英语下册
- 2025年北京市各区高三语文一模试卷《红楼梦》试题汇集练附答案解析
评论
0/150
提交评论