单片机课程设计-外部脉冲试验.doc_第1页
单片机课程设计-外部脉冲试验.doc_第2页
单片机课程设计-外部脉冲试验.doc_第3页
单片机课程设计-外部脉冲试验.doc_第4页
单片机课程设计-外部脉冲试验.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计(论文)课程名称:单片机原理及其接口技术 题 目:外部脉冲试验 院 (系): 专业班级: 姓 名: 学 号: 指导教师: 20年07月13日摘 要单片机是单片微型计算机的简称,其特点为:它的处理器、RAM、ROM和定时器/计数器和多种输入/输出接口都集中在一起超大规模集成芯片内,用于电路空间小、功耗低的场合。随着其技术和体系结构上控制功能的不断扩展,目前,单片机在国外被称为微控制器。本次试验主要采用8051单片机为核心,其包含128 字节和256 字节RAM ,32 条I/O口线,3 个16 位定时/计数器,6 输入4 优先级嵌套中断结构,1个串行I/O口可用于多机通信I/O 扩展或全双工UART,以及片内振荡器和时钟电路。通过每一次外部中断,外部中断由脉冲触发器来完成,把脉冲数记在一个单元中,并用2个数码管显示次数。此外由于器件采用了静态设计可提供很宽的操作频率范围率可降至0,可实现两个由软件选择的节电模式空闲模式和掉电模式空闲模式冻结CPU,但RAM定时器串口和中断系统仍然工作掉电模式保存RAM的内容,但是冻结振荡器导致所有其它的片内功能停止工作,由于设计是静态的时钟可停止而不会丢失用户数据,运行可从时钟停止处恢复。 关键词:走马灯,外部中断、C8051单片机,脉冲触发器。目 录1设计内容及要求 第1 页 2系统设计原理及方案 第1 页 3系统软件硬件设计 第2 页 4系统功能的实现 第8 页 5实验总结与心得体会 第9 页 6参考文献 第10页外部脉冲试验1设计内容及要求1.1课题简介本次课程设计题目是外部脉冲试验,是以MCS-51系列单片机Intel8051为基础充分利用8051芯片的I/O引脚来设计中断,实现外部脉冲的过程。外部中断是由脉冲触发器来完成,要求把脉冲数记在一个单元中,并用2个数码管显示计数。 利用手控单脉冲信号作为计数输入脉冲,编写控制程序。若按下计数健,则单片机控制两位一体的数码管显示从 00 开始的数字,按下一次,则数字加 一,一次类推;若按下清零键,则程序返回程序开始处,并且在走马灯上显现出来。 1.2设计目的 1.2.1 熟练运用汇编语言编程,并且掌握中断技术。 1.2.2 熟悉启东硬件仿真系统,熟练应用该系统调试软件。 1.2.3 软件上掌握串变并显示法显示BCD码。1.3设计目标 置计数器0为工作方式2,让走马灯全亮。2系统设计原理及方案2.1系统分析 2.1.1 初始化计数器,并采用累加器清0。 2.1.2 通过设置中断,外部中断0为脉冲触发方式。 2.1.3 通过观察走马灯亮与灭的计数,来达到试验目的。2.2 程序框图及说明 设置中断来进行计数而做成的流水灯,汇编程序编写完调试运行后,走马灯开始全亮,走马灯通过脉冲次数改变,使得中断方式2下工作,通过脉冲信号进行计数。以此不停循环。设置CLR A 累加器清0在中断中用计数器进行计数。在程序开始执行前,中断计数器初值为0。该设计的详细流程如下图1。开始脉冲走马灯全亮/走马灯通过脉冲次数改变中断程序仿真停止 图1 程序框图2.2.1基本原理 外部中断的初始化设置共有三项内容:中断总允许即EA=1,外部中断允许即EXi=1(i=0或1),中断方式设置。中断方式设置一般有两种方式:电平方式和脉冲方式,本实验选用后者,其前一次为高电平后一次为低电平时为有效中断请求。因此高电平状态和低电平状态至少维持一个周期。中断控制原理:中断控制是提供给用户使用的中断控制手段。实际上就是控制一些寄存器,51系列用于此目的的控制寄存器有四个:TCON、IE、SCON及IP。中断响应的过程:首先中断采样然后中断查询最后中断响应。采样是中断处理的第一步,对于本实验的脉冲方式的中断请求,若在两个相邻周期采样先高电平后低电平则中断请求有效,IE0或IE1置“1”;否则继续为“0”。所谓查询就是由CPU测试TCON和SCON中各标志位的状态以确定有没有中断请求发生以及是那一个中断请求。中断响应就是对中断请求的接受,是在中断查询之后进行的,当查询到有效的中断请求后就响应一次中断。INT0端接单次脉冲发生器。P1.0接LED灯,以查看信号反转。3、 系统软硬件设计3.1 硬件设计3.1.1计数8051电路图本次课程设计采用Protues7.5设计的电路图如图2所示。图中单片机采用AT89C51,由图可见,P0.1(对应89C51的P0.1脚)脚置低电平灯亮,然后灯灭,1s延时过后灯再次变亮,如此反复循环。 图2 系统原理图3.1.2 芯片的选择 硬件电路要实现对交流大电流电源的控制、定时时间的设定功能。若采用40脚的单片机有利于设计,但会增大电路板的体积。本设计采用ATMEL公司的AT89C2051单片机,芯片位20脚,体积小,工作电压范围宽(2.7V6V)。性价比比较高。3.2硬件连线图3.2.1预备知识引脚定义:A0Ai:地址输入线。D0D7:并行总线8位地址。CS:片选信号输入线,低电平有效。RXD/P3.0:UART串行输入P0P0.7:并行输入输出P0口WR:写选通信号线,低电平有效。3.2.2实验说明编写简单的汇编程序,对实验板上提供的外部脉冲进行读写操作,连续运行程序,观察走马灯的亮与灭来显示计数。3.2.3实验连线外部脉冲-P3.0口P0-P0.7:并行输入输出P0口数据线与仿真单片机的数据线相连,P0-P0.7口与单片机部分地址线相连3.3 软件设计3.3.1计数初值计算根据定时器/ 计数器0的工作方式2逻辑结构图可知,工作方式2的计数范围是1255。中断功能,就能快速解决CPU与慢速外设之间的的矛盾,CPU在启动外设工作后,开始执行主程序,同时外设也开始工作。每当外设需要,就能通过CPU发出申请,请求CPU中断正在执行的主程序,去执行中断服务程序。实现实时处理,在实时控制中,现场的各个参数.信息是随时间和现场的情况的不断的变化,有了中断的功能,外设仍能继续工作。这样,CPU可以令多个外设同时工作,从而提高CPU的利用率。利用串行中断源一个,发送或接收中断请求TI或RI。当串行口发送或接收一个帧数据时,内部产生中断请求。这一中断在中断矢量表中的00023H。外部中断0入口保护现场计数加1恢复现场中断返回3.3.2流程图开 始开外部中断点亮所有发光二极管 图3 流程图3.3.3汇编程序软件程序: ORG 0000H LJMP MAIN ;主程序 ORG 0003H ;中断0的入口地址 LJMP LOOP ;跳转到loop ORG 0030H MAIN: MOV 30H,#0 SETB EA ;开启中断 SETB PX0 ;设外部中断0高优先级 SETB EX0 ;允许外部中断0中断 SETB IT0 SETB TR1 MOV 30H,#0 MOVR2,#00H;十位 MOVR1,#00H;个位 MAIN4: MOV A,30H ANL A,#0FH MOV R1,A MOV A,30H ANL A,#0F0H SWAP A MOV R2,A MAIN1: MOV A,R1MOVDPTR, #SGTB1MOVCA,A+DPTR ;取字符MOVSBUF,A;发送字符MOVA,SBUFJNBTI,$ ;等待串口发送完CLRTISETB IT0 SETB PX0 SETB EA SETB EX0MOVA,R2MOVCA,A+DPTRMOVSBUF,AJNBTI,$CLRTICALLDELAYCALLDELAYCALLDELAYCJNER1,#0AH,MAIN4MOV A,30H ANL A,#0F0H ADD A, #10H MOV 30H,ACJNER2,#0AH,MAIN4MOV A,30H ANL A,#0FH MOV 30H,A AJMP MAIN4DELAY:MOVR6,#250;延时DELAY1:MOVR7,#250DJNZR7,$DJNZR6,DELAY1RET LOOP: INC 30H ;30自加1 MOV A,30H ;30H给A MOV P0,A ;A给p0 RETI SGTB1:DB 03H ;0 DB 9FH ;1 DB 25H ;2 DB 0DH ;3 DB 99H ;4 DB 49H ;5 DB 41H ;6 DB 1FH ;7 DB 01H ;8 DB 09H ;9 END四、系统功能实现4.1 软件功能调试软件调试一般分为以下四个阶段:1、 编写程序并查错;2、 在汇编语言的编译系统中编译源程序3、对程序进行编译连接,并及时发现程序中存在的错误;4、改正错误。在软件调试过程中,最初程序编译出错,我经过认真的分析,发现中断服务子程序我又跳转到子程序,编译后又未得到正确周期指令数值。在一遍遍重新阅读程序后方知未我将循环弄成了死循环,将ajmp loop 删掉后,经改正终于调试成功,并很好的达到既定的设计效果。 此系统还可改进实现电子计数器、跑马灯等功能,这是一个比较难的挑战。4.2硬件功能测试此次课程设计主要利用中断方法,运用循环调用的方法,简单的说是000000,通过改变脉冲的次数运用计数器,按一次改变为000001。用为每一个灯的接口端不同,不同的BCD码控制不同的灯,用灯的亮与灭来达到计数的效果。;第二层循环通过计数器T1计数实现;通过给T1赋初值0FFH,当它开始溢出时即达亮。计数器到则置P0.0为低电平,灯则亮,灭,在给脉冲后再置P0.0为低电平,红灯亮,如此循环。此次课程设计在实际操作过程中,由于按键及代码执行所需时间的影响,设计后的效果并不精准,还有改进的空间。五、实验总结与心得体会 单片机原理及其接口技术是我们电子信息科学与技术的专业课,因为我们之前做过单片机原理实验课也对MF2KP软件有了一定的了解。经过一学期老师的谆谆教导和自己的努力学习,对单片机原理课程也有了更深入的认识,通过这次的课程设计,我收获了很多,对各个指令以及语句有了进一步的了解,对各个语句的功能有了更深刻的认识和体会,平时上课的理论知识只是停留在理论概念的层面,而通过了这次的课程设计才真正的体会到,也做到了理论概念和汇编实际的相结合,使理论知识真正运用到了实用中去,还能学到一些软件的运用,结合一些其他课程,汇编语言程序软件,通过互相结合,互相渗透,来得到我所需的数据与结论。通过查阅了相关书籍才得知取时间的调用指令。也深刻理解了CPU暂停现行程序的运行而转为意外事件或特殊请求服务的过程这句中断的概念。通过对程序不停地修改、测试,终于将程序调试成功,能够满足设计要求。我觉的通过这次课程设计,我学到了好多东西,不仅仅是书本上的知识,因为这次课程设计老师给我们分了几个小组,每组有每组的问题,当我们这组拿到题目时还不知道如何下手,通过组员的互相探讨,共同研究,最终设计好流程图,得出结果,让我懂得什么是团队合作,以后我们不管干什么都要持之以恒,坚持不懈,困难并不可怕,可怕的是我们面对困难是的态度, 加油,我为自己代言!六、参考文献1 李建忠,单片机原理及应用.西安电子科技大学出版

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论