




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机原理及系统课程设计专 业: 电气工程及其自动化 班 级: 姓 名: 学 号: 指导教师: 评语:平时(40)修改(30)报告(30)总成绩兰州交通大学自动化与电气工程学院2012 年 7月 1日单片机原理及系统课程设计报告1 引言 基于单片机的控制循环灯设计。2 设计方案及原理2.1 题目要求在单片机的P1口接8个发光二极管,通过中断方式控制实现每个发光二极管指示灯闪烁10次,并依次循环。正常状态下,这8个灯(发光二极管)先按一定流速从左向右流动,再按一定流速从右往左流动(假设这8个灯依次从左向右接在P1.0-P1.7上)。2.2 设计原理单片机循环灯是现今人们最普及的方法,本次设计用外接石英晶体振荡器作为8051的时钟电路,将P0.0-P0.7作为发光二极管的片选口,同时利用8051单片机的基本原理,来控制八个LED指示灯的依次往复循环闪烁10次。此次课设中选择了共阳极的二极管接法,所以通过给P0口输送低电平0,就可以使二极管发光,输送高电平1可使二极管熄灭。设计框图如图1所示。图1 设计框图3 硬件设计此次芯片选用的是8051,8051芯片的外部时钟是用外接石英晶体振荡器来实现的,时钟电路用于产生单片机工作所需的时钟信号。在MCS-51系列单片机芯片外部,X1和X2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,这就是单片机的时钟电路。发光二极管有共阳和共阴接法,此次设计选择了共阳接法,所以可通过给P0口输送低电平就可驱动发光二极管发光,输送高电平就可使发光二极管熄灭。硬件原理图如图2所示。图2 硬件原理图4 软件设计循环灯设计大概的设计思路可概括为以下8个步骤: (1) 给累加器A送0FEH,送闪烁个数8给R2,送闪烁次数10给寄存器R0。(2) 通过累加器A给P1口送二进制数,驱动八个发光二极管,低电平发光,高电平熄灭。(3) 调用DELAY延时程序。(4) 送0FFH给P1口,使发光二极管熄灭,再调用DELAY延时程序使发光二极管延时1S。(5) 重复(2)、(3)、(4)至发光二极管闪烁十次后结束循环。(6) 执行RL(循环左移)指令,指向下一个二极管,重复第5步。(7) 当8个发光二极管从左至右依次闪烁完毕后,给累加器A送07FH,执行第5步,使二极管从最右边开始闪烁。同时执行RR(循环右移)指令,当每个发光二极管闪烁完10后指向下一个二极管。(8) 当从右至左循环结束后,又回到第(1)步,循环往复。程序流程图如图3所示。图3 程序流程图5 总结按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典型系统。8051单片机是Intel公司生产的,除无片内ROM外,其余特性与MCS-51单片机基本一样。8051单片机都采用40引脚的直插封装(DIP方式),在单片机的40条引脚中有2条专用于主电源的引脚,2条外接晶体的引脚,4条控制或与其它电源复用的引脚,32条输入/输出(I/O)引脚。8051单片机的引脚除了电源、复位、时钟接入,用户I/O口外,其余管脚是为实现系统扩展而设置的。因此,本控制循环灯实际上就是一个带有8个发光二极管的单片机最小应用系统,即为由单片机8051、发光二极管和必要的软件组成的单个单片机系统。此系统利用单片机的P1.0-P1.7作为8段显示LED的段控码输入,当位控线输入高电平时对应的LED点亮。再利用单片机内部的定时器对每一个输出口的电平做时间控制,实现每一个接口出现循环的高低电平,从而实现对每一个接口所接灯的循环控制,使8盏灯各依次亮灭10次。参考文献1 李刚民.陈盅平.单片机原理及使用技术.北京高等教育出版社.20052 李华.王思明.单片机应用及原理M.兰州大学出版社.20013 李全利.单片机原理及应用技术.高等教育出版社.2001 4 丁爱民.单片机应用技术.北京理工大学出版社.2002附录附录一: 调试结果附录二:循环灯控制设计程序ORG 0000H ;程序存放的起始地址 AJMP MAIN ;上电,转向主程序 ORG 0003H ;外部中断0入口地址 AJMP LOOP ;转向中断服务程序 ORG 0030H ;主程序 MAIN: SETB EX0 ;允许外部中断0中断 SETB IT0 ;选择边沿触发方式 SETB EA ;CPU开中断 MOV R0,#10 ;将闪烁次数10送入R0 MOV R2,#8 ;将灯的数量8送入R2 MOV A,#0FEH LOOP: MOV P1,A ;使最左边的一个二极管发光 LCALL DELAY ;调用延时1s的子程序 MOV P1,#0FFH ;使最左边的一个二极管熄灭 LCALL DELAY ;调用延时1s的子程序 DJNZ R0,LOOP ;循环闪烁十次 RL A ;指向下一个二极管 MOV R0,#10 ;再次将闪烁次数10次送入R0 DJNZ R2,LOOP ;8个灯从左到右依次闪烁完毕 MOV R2,#8 MOV A,#07FH LOOP1: MOV P1,A ;使最右边的一个二极管发光 LCALL DELAY ;调用延时1s的子程序 MOV P1,#0FFH ;使最右边的一个二极管熄灭 LCALL DELAY ;调用延时1s的子程序 DJNZ R0,LOOP ;循环闪烁十次 RR A ;指向下一个二极管 MOV R0,#10 ;再次将闪烁次数10次送入R0 DJNZ R2,LOOP1 ;8个灯从右到左依次闪烁完毕 LJMP MAIN ;转向主程序 DELAY: MOV R5,#200 ;延时1s的DELAY子程序 MOV R7,#10 LOOP2: MOV TMOD,#20H ;定时器1工作于方式2 MOV TH1,#06H ;送初值 MOV TL1,#06H SETB ET1 ;允许定时器1中断 SETB P2.0 ;P2.0输出置1 SETB TR1 ;启动定时器1 LOOP3: JBC TF1,LOOP4 ;定时500
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 拖拉机制造工协同作业考核试卷及答案
- 小学计算机课堂教学案例分享
- 心血管药物全球市场动态分析报告
- 办学咨询方案怎么写
- 油脂加工新技术环境影响评估报告
- 家装市场营销拓展方案及执行策略
- 水产养殖生物多样性保护现状分析报告
- 2023八年级数学上册 第12章 一次函数12.2 一次函数第5课时 一次函数的应用之方案决策说课稿 (新版)沪科版
- 建筑养护施工方案设计
- 丁苯胶乳装置操作工岗位操作规程考核试卷及答案
- 2025年广工建筑电气试卷及答案
- 2025年人社局编外考试题库及答案
- 木制品厂安全生产培训课件
- 排污许可证管理条例课件
- 乡镇人大主席“干在实处、走在前列”学习讨论发言材料
- 电工四级考试理论题库及答案
- 世纪英才教程课件
- 2025年食品安全管理员考试题库及参考答案
- 小学科学新教科版三年级上册全册教案(2025秋新版)
- 2025年综合基础知识题库(含答案)
- 化工总控工项目6任务28精馏操作专项训练课件
评论
0/150
提交评论