ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:116KB ,
资源ID:2040560      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2040560.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机实验指导书15.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机实验指导书15.docx

1、单片机实验指导书15实验一 KEIL软件的使用及P1口控制一 实验目的1、学习KEIL软件的使用方法及单片机实验平台 2、学习P1口的控制方法 3、学习延时子程序的编写和单片机延时计算方法二 实验原理 1、KEIL软件是德国Keil公司开发的基于Windows平台的单片机集成开发环境软件。KEIL软件包括编译器、连接器、库管理器和仿真调试器,通过集成开发环境(Vision)将这些部分组合在一起。2、P1口是一个八位的准双向I/O口,其中一位的内部结构如图所示,输出驱动电路有一只场效应管和一个上拉电阻组成。每一根口线都可以分别定义成输入或输出线。做输出线时,写入“1”,则Q为“0”,T1截止,P

2、1.X输出高电平,写入“0”,则Q为“1”,T1导通,P1.X输出低电平。做输入线时,必须先向该口线写“1”,使T1截止。3、程序延时分析方法:延时=指令个数X机器周期机器周期=12nMHZ n为单片机时钟频率三 实验要求与步骤实验(一):用P1口做输出口,接八位逻辑电平显示,程序功能使发光二极管从右到左轮流循环点亮。1、使用单片机最小应用系统1模块。关闭该模块电源,用扁平数据线连接单片机P1口与八位逻辑电平显示模块。(并口线与右侧的8个插孔是串联等效的。)2、用串行数据通信线连接计算机与仿真器,把仿真器插到模块的锁紧插座中,请注意仿真器的方向:缺口朝上。3、打开Keil uVision2仿真

3、软件,首先建立本实验的项目文件,接着添加P1_A.ASM源程序,进行编译,直到编译无误。4、进行软件设置,选择硬件仿真,选择串行口,设置波特率为38400。5、(先接通仿真器电源再开启试验箱电源)打开模块电源和总电源,点击开始调试按钮,点击RUN按钮运行程序,观察发光二极管显示情况。发光二极管单只从右到左轮流循环点亮。注:软件具体操作见附录实验(二):用P1.0、P1.1作输入接两个置位开关,P1.2、P1.3作输出接两个发光二极管。程序读取开关状态,并在发光二极管上显示出来。1、用导线分别连接P1.0、P1.1到两个置位开关,P1.2、P1.3到两个发光二极管。2、添加 P1_B.ASM源程

4、序,编译无误后,运行程序,拨动置位开关,观察发光二极管的亮灭情况。四 实验参考程序实验(一):ORG 0000HLJMP STARTORG 0030HSTART: MOV A, #0FEH MOV R2,#8OUTPUT: MOV P1,A RL A ACALL DELAY DJNZ R2,OUTPUT LJMP STARTDELAY: MOV R6,#0 MOV R7,#0DELAYLOOP: ;延时程序 DJNZ R6,DELAYLOOP DJNZ R7,DELAYLOOP RET END(二)实验二 仅供参考,需修正KEYLEFT BIT P1.0 ;定义 KEYRIGHT BIT P1

5、.1LEDLEFT BIT P1.2LEDRIGHT BIT P1.3ORG 0000HLJMP STARTORG 0030HSTART: MOV C,KEYLEFT MOV LEDLEFT,C MOV C,KEYRIGHT MOV LEDRIGHT,C LJMP START END五、附加要求 改变程序,使LED从左至右循环显示,并且使实验一中每个LED灯闪烁的间隔时间大约为5s左右。六、实验报告要求 1 对实验(一)程序抄写并注释 2 画出实验(一)程序流程图 3 找出实验(一)中延时子程序,并根据实验箱情况计算具体延时。实验二 外部中断实验一、实验目的1掌握外部中断技术的基本使用方法2掌

6、握中断处理程序的编写方法二、实验原理1外部中断的初始化设置的三项内容:中断总允许即EA=1,外部中断允许即EXi=1(i=0或1),中断方式设置。中断方式设置一般有两种方式:电平方式和脉冲方式.2中断服务的关键:(1)保护进入中断时的状态。堆栈有保护断点和保护现场的功能使用PUSH,在转中断服务程序之前把单片机中有关寄存单元的内容保护起来。注:中断程序自动保护PC,对其做入栈操作 (2)用POP指令恢复中断时的现场。(先进后出)3中断控制原理:中断控制是提供给用户使用的中断控制手段。实际上就是控制一些寄存器,51系列用于此目的的控制寄存器有四个:TCON 、IE 、SCON 及IP。TF1TR

7、1TF0TR0IE1IT1IE0IT0TCON格式(中断控制字)TF1、TF0:定时器/计数器T的溢出中断请求标志位;TR1、TR0:计数器控制位TR1(TR0)=1启动定时器TR1(TR0)=0停止计数器IE1:外部中断请求1标志位;IT1:选择外部请求1;IE0:外部中断请求0标志位;IT0:IT0=0为低电平触发IT0=1为负跳变有效;复位后TCON被清零,中断请求被禁止。SCON格式(触发方式中断控制字)TI:串行口的发送中断请求标志位。发送1帧串行数据后,硬件自动为TI置1。注:CPU不会为T1清零,需要在中断程序中用软件为TI清零RI:串行口接受中断请求标志位。接收完1帧串行数据后

8、,硬件自动为RI置1。注:CPU不会为R1清零,需要在中断程序中用软件为RI清零三、实验内容参考实验程序(主程序为P1口输出跑马灯程序),编写中断子程序使得发生外部中断0,且为下降沿触发时,LED灯全亮。中断结束后LED继续接上次状态进行跑马灯闪烁。注:注意保护现场。且编译器不支持工作组寄存器名(R0-R7)入栈,需要对栈地址操作。例:PUSH 06H (累加器支持左移右移不支持压栈出栈; 工作组寄存器不支持左移右移支持压栈出栈);把R6入栈 等同 PHSHU R6四、实验步骤1使用单片机最小应用系统1模块,P1接发光二极管,INTO接单次脉冲输出端。2用串行数据通信线连接计算机与仿真器,把仿

9、真器插到模块的锁紧插座中,请注意仿真器的方向:缺口朝上。3打开Keil uVision2仿真软件,首先建立本实验的项目文件,接着添加*.ASM源程序,进行编译,直到编译无误。4打开模块电源和总电源,点击开始调试按钮,点击RUN按钮运行程序。五、参考程序ORG 0000HLJMP STARTORG 0003HLJMP INTORG 0030HINT: PUSH 05H PUSH 06H PUSH 07H MOV P1,#00H ACALL DELAYPOP 07H POP 06H POP 05H RETISTART: MOV IE,#81H MOV TCON,#01HMOV A, #0FEHOU

10、TPUT: MOV P1,A RL A ACALL DELAY LJMP OUTPUTDELAY: MOV R6,#0 MOV R7,#0 MOV R5,#5DELAYLOOP: ;延时程序 DJNZ R6,DELAYLOOP DJNZ R7,DELAYLOOP DJNZ R5,DELAYLOOP RET END六、附加要求: 将中断内容变为前五个灯进行一次跑马灯,然后中断结束。实验三 定时器/计数器一 实验目的1 学习定时器/计数器的工作原理2 掌握定时器/计数器的控制方法3 掌握定时器/计数器各种工作模式和工作方式下的编程方法二 实验原理MCS-51单片机内有两个可编程的定时器/计数器T0

11、、T1,可分别工作在定时器或计数器模式下。每种工作模式下有四种工作方式。1、计数器工作模式:外部脉冲进行计数,输入引脚(T0、T1即P3.4和P3.5)产生负跳变脉冲则计数器加12、定时器工作模式:内部脉冲计数,每个机器周期产生一个计数脉冲,如外接12MHZ时钟则每隔1s计数器加13、工作方式控制寄存器TMODD7D6D5D4D3D2D1D0GATEC/TM1M0GATEC/TM1M0 T1方式字段 T0方式字段 当INTX为高电平且RTRX为1时启动定时器/计数器GATE 只要 TR0 (或 TR1)置 1, 定时器/计数器就被选通 0为定时器模式C/T 1为计数器模式M1M0工作方式选择控

12、制4、定时器/计数器控制寄存器TCOND7D6D5D4D3D2D1D0TF1TR1TF0TR0IE1IT1IE0IT0ITX 外部中断请求触发方式选择0为电平触发1为负跳沿触发IEX 外部中断请求标志位TFX 定时器/计数器溢出标志位 1启动相应的定时器/计数器TRX 0停止相应的定时器/计数器注:上述X代表1或05、定时器/计数器控制寄存器IED7D6D5D4D3D2D1D0位标志EAET2ESET1EX1ET0EX0 其中与中断有关的控制位共7位:EA: 中断允许总控制位。EA=0时,中断总禁止,禁止一切中断;EA=1时,中断总允许,而每个中断源允许与禁止,分别由各自的允许位确定。EX0和

13、EX1:外部中断允许控制位。EX0(或EX1)=0,禁止外部中断(或);EX0(或EX1)=1,允许外部中断(或)。ET0和ET1:定时器中断允许控制位。ET0(ET1)=0,禁止定时器0(或定时器1)中断;ET0(ET1)=1,允许定时器0(或定时器1)中断。ES: 串行中断允许控制位。ES=0,禁止串行(TI或RI)中断;ES=1,允许串行(TI或RI)中断。ET2: 定时器2中断允许控制位。ET2=0,禁止定时器2(TF2或EXF2)中断;ET2=0,禁止定时器2(TF2或EXF2)中断;在单片机复位后,IE各位被复位成“0”状态,CPU处于关闭所有中断的状态。所以,在单片机复位以后,用

14、户必须通过程序中的指令来开放所需中断。6、各种工作方式最大定时时间(以6MHZ外接时钟频率计算) 方式0 最长定时16.384ms 方式1 最长定时 131.072ms 方式2 最长定时 512s 方式3 最长定时512s7、定时初始值计算n为不同工作方式计数器计数位数,A为机器周期所占时间,M为所需定时时间,X为对定时器/计数器所需设置的初始值例:工作方式1下外接6MHZ晶振,要定时100ms则初始值X为: X=15536=3CBOH TH0=3CH TL0=0B0H三 实验内容1、编程实现以定时器/计数器T0做为定时器,使得P1.0每隔一秒钟取反一次,并用LED灯显示。可参考实验程序(一)2、在内容1的基础上实现以T1做计数器,当P1.0取反20次后关闭所有中断,并点亮8个LED灯。四 实验步骤内容一,P1口连接8位逻辑电平输出.内容二,P1口连接8位逻辑电平输出,P1.0连接T1即P3.5.五 参考程序 说明:本程序以工作方式1定时50ms,定时中断20次为一秒为例。程序省略部分需补充才可完成实验要求。ORG 0000HLJMP

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1