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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

单片机应用系统实验.docx

1、单片机应用系统实验 Prepared on 22 November 2020单片机应用系统实验实验一 系统认识及基本程序设计实验一、实验目的 1. 学习Keil 集成开发环境的操作; 2. 熟悉TD-51 系统板的结构及使用,熟悉51指令系统; 3掌握不同进制数及编码相互转换的程序设计方法,加深对数码转换的理解;4学习查表程序的设计方法,进一步熟悉51 的指令系统。二、实验设备 PC机一台,TD-NMC+教学实验系统。三、实验步骤编写实验程序,经编译、链接无误后,启动调试功能;观察实验现象,并分析原因;按复位键退出调试状态。四、实验内容1. 将BCD 码整数0255 存入片内RAM 的20H、

2、21H、22H 中,然后转换为二进制整数00HFFH,保存到寄存器R4 中。修改20H、21H、22H 单元的内容,如:00H,05H,08H;观察实验结果。参考程序:;=; 文件名称: ; 功能描述: BCD整数转换为二进制整数(8位, 范围从00H-FFH);= ORG 0000H LJMP MAIN ORG 0100HMAIN: MOV R0, #20H ;BCD存放高位地址 MOV R7, #03H ;BCD码0-255, 最多3位 CLR A MOV R4, ALP1: MOV A, R4 MOV B, #0AH MUL AB ;乘10 ADD A, R0 ;加下一位的值 INC R

3、0 ;指向下一单元 MOV R4, A ;结果存入R4 DJNZ R7, LP1 ;转换未结束则继续 SJMP MAIN ;设置断点, 观察实验结果R4中的内容 END2. 将16 位二进制整数存入R3R4 寄存器中,转换为十进制整数,以组合BCD 形式存储在RAM 的20H、21H、22H 单元中。 参考程序:;=; 文件名称: ; 功能描述: 二进制整数(16位)转换为十进制整数(组合BCD);=; 0-FFFFH(R3R4)=0-65535 ORG 0000H LJMP MAIN ORG 0100HMAIN: MOV R0, #22H ;转换结果低位地址 MOV A, R0 PUSH A

4、CC ;ACC表示累加器A的直接地址 MOV R7, #03H CLR ALP1: MOV R0, A ;结果存储地址清零 DEC R0 DJNZ R7, LP1 POP ACC MOV R0, A MOV R7, #16 LP2: PUSH ACC CLR C MOV A, R4 ;R4中为二进制数的低位 RLC A MOV R4, A MOV A, R3 ;R3中为二进制数的高位 RLC A MOV R3, A MOV B, #03HLP3: MOV A, R0 ADDC A, R0 ;执行乘2操作 DA A ;十进制调整 MOV R0, A ;结果保存 DEC R0 DJNZ B, LP

5、3 POP ACC MOV R0, A DJNZ R7, LP2 LJMP MAIN ;设置断点观察结果, 可进行下一次转换 END3. 通过查表的方法将16 进制数转换为ASCII 码; 参考程序:;=; 文件名称: ; 功能描述: 查表程序设计, 将十六进制数0F通过查表的方法; 转换为ASCII码;= ORG 0000H LJMP MAIN ORG 0100HMAIN: MOV DPTR, #ASCTAB ;表格首地址送DPTR MOV A, R7 ;R7中为待转换的数 ANL A, #0FH ;取低4位 MOVC A, A+DPTR ;查表 MOV R5, A ;低4位转换结果送R1

6、MOV A, R7 ANL A, #0F0H ;取待转换数的高4位 SWAP A ;高4位与低4位交换 MOVC A, A+DPTR ;查表 MOV R6, A ;高4位转换结果送R2 SJMP MAIN ;设置断点观察结果ASCTAB: DB 30H, 31H, 32H, 33H, 34H DB 35H, 36H, 37H, 38H, 39H DB 41H, 42H, 43H, 44H, 45H, 46H END4. 通过查表的方法实现yx2,其中x为09 的十进制数,以BCD码表示,结果仍以BCD 码形式输出。 参考程序:;=; 文件名称: ; 功能描述: 查表程序, 用程序实现Y=X*X

7、, X为0到9的十进制数,; 用BCD码(00H到09H)表示, 将X的平方, 即Y也以BCD码; 的形式保存到R1中.;= ORG 0000H LJMP MAIN ORG 0100HMAIN: MOV DPTR, #SQR ;取表格首地址 MOV A, R7 ;要计算的值 MOVC A, A+DPTR ;查表 MOV R6, A ;结果保存 SJMP MAINSQR: DB 00H, 01H, 04H, 09H, 16H DB 25H, 36H, 49H, 64H, 81H END实验二 片内I/O口及中断应用实验 一、实验目的 了解P1 口作为输入输出方式使用时,CPU 对P1 口的操作方

8、式。了解MCS-51 单片机的中断原理,掌握中断程序的设计方法。 二、实验设备 PC机一台,TD-NMC+教学实验系统,连接线若干三、实验步骤按实验内容要求完成硬件连线;编写实验程序,经编译、链接无误后,启动调试功能;观察实验现象,并分析原因;按复位键退出调试状态。 四、实验内容1. 片内I/O口应用实验P1 口是8 位准双向口,每一位均可独立定义为输入输出。编写实验程序,将P1 口的低4 位定义为输出,高4 位定义为输入,数字量从P1 口的高4 位输入,从P1 口的低4 位输出控制发光二极管的亮灭。 ;=; 文件名: ; 功能说明: 数字量输入输出实验, P1口高4位输入, 低4位输出;=

9、ORG 0000H LJMP START ORG 0100HSTART: ORL P1, #0F0H ;P1口高四位为输入 MOV A, P1 ;读P1口的值 SWAP A ;A中高,低4位交换 MOV P1, A ;输出到P1口 SJMP START END2. 片内中断系统实验 定时器中断单片机集成的定时器可以产生定时中断,利用定时器0 和定时器1,编写实验程序在及 引脚上输出方波信号,通过示波器观察实验现象并测量波形周期。改变计数值,重新运行程序,反复验证程序功能。参考程序:;=; 文件名: ; 功能说明: 采用定时器的中断, 在与引脚上输出周期波形.;= ORG 0000H LJMP

10、START ORG 000BH LJMP TIMER0 ORG 001BH LJMP TIMER1 ORG 0100HSTART: MOV P1, #0FFH MOV TH0, #0F8H ;初始化定时器0计数初值 MOV TL0, #00H MOV TH1, #0F8H ;初始化定时器1计数初值 MOV TL1, #00H MOV TMOD, #11H ;设置定时器工作模式为方式1 MOV TCON, #50H ;启动定时器 MOV IE, #8AH ;使能中断 SJMP $TIMER0: CPL ;定时器0中断服务程序, 对引脚取反 MOV TH0, #0F8H ;重新装入计数初值 MOV

11、 TL0, #00H RETI ;中断返回TIMER1: CPL ;定时器1中断服务程序 MOV TH1, #0F8H MOV TL1, #00H RETI END 外部中断手动扩展外部中断INT0、INT1,当INT0 产生中断时,使LED8 亮8 灭闪烁4 次;当INT1 产生中断时,使LED 由右向左流水显示,一次亮两个,循环4 次。先按KK1,观察实验现象,然后按KK2,观察实验现象。51 单片机加入了中断系统,从而提高了CPU 对外部事件的处理能力和响应速度。增强型单片机SST89E554RC 共有8 个中断源,即外部中断0(INT0)、定时器0(T0)、外部中断1(INT1)、定时

12、器1(T1)、串行中断(TI 和RI)、定时器2(T2)、PCA 中断和Brown-out 中断。参考程序:;=; 文件名: ; 功能说明: 外部中断INT0, INT1操作. ; 外部中断0: 使发光二极管闪烁4次.; 外部中断1: 使发光二极管由右向左流水显示, 一次亮两个LED.;= ORG 0000H LJMP START ORG 0003H LJMP EINT0 ORG 0013H LJMP EINT1START: MOV P1, #00H SETB IT0 ;定义外部中断0为边沿触发 SETB EX0 ;使能外部中断0 SETB IT1 ;定义外部中断1为边沿触发 SETB EX1

13、 ;使能外部中断1 SETB EA ;使能总中断 SJMP $EINT0: MOV R7, #04H ;外部中断0中断服务程序ELP0: MOV P1, #0FFH ACALL DELAY ;调用延时程序 MOV P1, #00H ACALL DELAY DJNZ R7, ELP0 RETIEINT1: MOV A, #03H ;外部中断1中断服务程序 MOV R7, #10HILP1: MOV P1, A RL A RL A ACALL DELAY DJNZ R7, ILP1 RETIDELAY: MOV R6, #0FFH ;延时子程序DLP1: MOV R5, #0FFHDLP2: DJ

14、NZ R5, DLP2 DJNZ R6, DLP1 RET END实验三 定时器/计数器应用实验一、实验目的 1了解MCS-51 单片机定/计数器的工作原理与工作方式; 2掌握定时/计数器T0 和T1 在定时器和计数器两种方式下的编程; 3学习定时/计数器T2 的可编程时钟输出功能。 二、实验设备 PC机一台,TD-NMC+教学实验系统,连接线若干三、实验步骤按实验内容要求完成硬件连线;编写实验程序,经编译、链接无误后,启动调试功能;观察实验现象,并分析原因;按复位键退出调试状态。 四、实验原理 通常,8051 单片机内部有2 个16 位定时/计数器,即定时器0(T0)和定时器1(T1)。增强

15、型单片机SST89E554RC 内部还有一个16 位定时器T2,与其相关的特殊功能寄存器有TL2、TH2、RCAP2L、RCAP2H、T2CON 等。 定时器/计数器2 控制寄存器(T2CON)各位的含义简述如下: TF2:定时器溢出标志,当定时器溢出时置位,必须由软件清除。当RCLK1 或TCLK1 时此位将不会被置位。 EXF2:定时器2 外部标志,当EXEN21 并且T2EX 引脚上出现负跳变引起捕捉或重载发生时此位置1。如果定时器2 中断使能,EXF21 会引起中断,此位必须软件清除。DCEN1 时,EXF2 不会引起中断。 RCLK:接收时钟标志,RCLK1,串行口使用T2 的溢出脉

16、冲作为方式1 和3 下的接收时钟;RCLK0,串行口使用T1 的溢出脉冲作为接收时钟。 TCLK:发送时钟标志,与RCLK 的作用相同。 EXEN2:定时器2 外部使能标志。EXEN21 且T2 未被用于串口时钟时,若T2EX 引脚上出现负跳变则出现捕捉或重载。EXEN20 时,T2 忽略T2EX 引脚上的变化。 TR2:启动/停止定时器2,为1 时启动定时器2。 C/T2:定时器/计数器选择。C/T21 为计数功能;C/T20 为定时功能。 CP/RL2:捕捉/重载标志。CP/RL21,当EXEN21 且T2EX 引脚上出现负跳变时捕捉发生。CP/RL20,T2 溢出时重载发生,或当EXEN

17、21 且T2EX 引脚上出现负跳变时重载发生。如果RCLK1 或TCLK1,此位会被忽略,T2 溢出时自动重载。 定时器/计数器2 模式寄存器(T2MOD)各位的含义简述如下: T2OE:定时器2 输出使能位。 DCEN:递减计数使能位。 五、实验内容1. 使用定时器0 与定时器1 进行定时,在 和 引脚上输出方波信号,通过示波器观察波形输出,测量并记录方波周期。 参考程序:;=; 文件名称: ; 功能说明: 使用定时器0和定时器1在与引脚上输出方波.;= ORG 0000H LJMP START ORG 0100HSTART: MOV TMOD, #11H ;设置定时器工作方式为方式1 MO

18、V TH0, #0F8H ;装入定时器0的计数初值 MOV TL0, #00H MOV TH1, #0F8H ;装入定时器1的计数初值 MOV TL0, #00H SETB TR0 ;启动定时器 SETB TR1MLP1: JNB TF0, MLP2 ;判定时器0溢出标志 MOV TH0, #0F8H ;重装定时器0的计数初值 MOV TL0, #00H CPL CLR TF0 ;清溢出标志MLP2: JNB TF1, MLP1 ;判定时器1溢出标志 MOV TH1, #0F8H MOV TL1, #00H CPL CLR TF1 AJMP MLP1 END2. 将定时/计数器1 设定为计数器

19、方式,每次计数到10 在 引脚上取反一次,硬件连接如图所示,按单次脉冲KK1,观察发光管D0 的状态,每10 次变化一次。参考程序:;=; 文件名称: ; 功能描述: 利用计数器1, 在计数10次后对引脚取反一次;= ORG 0000H AJMP START ORG 0100HSTART: MOV TMOD, #60H ;设置定时器/计数器1为计数器方式, 且为方式2 MOV TH1, #0F6H ;装入计数初值 MOV TL1, #0F6H SETB TR1 ;启动计数MLP1: JNB TF1, MLP1 ;判溢出标志 CPL ;取反 CLR TF1 ;清溢出标志 AJMP MLP1 EN

20、D3. 定时器2 可以作为时钟发生器使用,并在 引脚上输出占空比为50的方波。编程定时器2,使用示波器测量输出时钟,测量时钟周期;假定需要输出1MHz 的方波信号,试修改程序,并使用示波器测量,验证程序的正确性。 引脚 与T2 复用,除作为普通I/O 引脚外,还有两个功能,即为定时/计数器2 输入外部时钟,输出占空比为50的周期时钟。 如果将T2 配置为时钟发生器,那么必须将C/T2设置为0,将T2OE 设置为1,并设置TR2 为1 以启动定时器。输出时钟的频率取决于晶振频率以及捕捉寄存器的重载值,公式如下: 输出频率晶振频率n(65536RCAP2H,RCAP2L)其中n2(6 时钟模式)或

21、n4(12 时钟模式) 晶振频率为,工作于12 时钟模式下,输出频率的范围为:42Hz。 参考程序:;=; 文件名称: ; 功能描述: 使用定时器2作为时钟发生器, 测量引脚输出, 测量周期.;=T2CON EQU 0C8H ;定义特殊功能寄存器T2MOD EQU 0C9HRCAP2L EQU 0CAHRCAP2H EQU 0CBH ORG 0000H AJMP START ORG 0100HSTART: MOV RCAP2H, #0FFH ;改变RCAP2H,RCAP2L中的值可以改变时钟频率 MOV RCAP2L, #00H MOV T2MOD, #02H ;设置T2工作于时钟输出模式下

22、MOV T2CON, #04H ;启动定时器T2 SJMP $ END实验四 看门狗实验一、实验目的 了解看门狗的工作原理,学习看门狗的编程方法。 二、实验设备 PC机一台,TD-NMC+教学实验系统,连接线若干三、实验步骤 按图连接实验电路图; 编写实验程序,编译、链接无误后启动调试; 允许实验程序,LED 闪烁; 按单次脉冲KK1,对WDT 停止刷新; 经过大概3 秒钟,可观察软件界面,产生复位,程序停止运行(注意界面变化); 改变WDT 的超时周期,反复实验几次,验证看门狗功能。 每次重新运行程序前,都应该先停止调试,然后重新启动调试,这样方可保证系统正常工作。 四、实验原理SST89E

23、554RC 提供了一个可编程看门狗定时器(WDT),可以防止软件跑飞并自动恢复, 提高系统的可靠性。 用户程序中如果使用了看门狗,那么必须在用户自己定义的时间内刷新WDT,亦称“喂狗”。若在规定的时间内没有刷新WDT,则产生内部硬件复位。WDT 以系统时钟(XTAL1)作为自己的时基,WDT 寄存器每隔344064 个时钟加1,时基寄存器(WDTD)的高8 位被用作WDT 的重载寄存器。WDT 的结构框图如图3-4-1 所示。WDT 超时周期计算如下: 周期(255WDTD)344064fCLK(XTAL1) 看门狗定时器控制寄存器(WDTC) 各位说明如下: WDOUT: 看门狗输出允许 0

24、:看门狗复位不在复位引脚上输出 1:如果看门狗复位允许位WDRE1,看门狗复位将在复位脚上输出复位信号32 个时钟 WDRE: 看门狗定时器复位允许 0:禁止看门狗定时器复位 1:允许看门狗定时器复位 WDTS: 看门狗定时器复位标志 0:外部硬件复位或上电会清除此位,向此位写1 会清除此位,若由于看门狗引起的复位将不影响此位。 1:看门狗溢出,此位置1 WDT 看门狗定时器刷新 0:刷新完成,硬件复位此位。 1:软件设置此位以强迫看门狗刷新,俗称“喂狗”。 SWDT 启动看门狗定时器 0:停止WDT 1:启动WDT 看门狗定时器数据/重载寄存器(WDTD) 五、实验内容学习SST89E554RC 的看门狗功能模块,编写实验程序,程序正常运行时8 个LED 闪烁, 通过按键使看门狗产生超时,引起系统复位。 参考程序:;=; 文件名称: ; 功能描述: 看门狗实验, 程序运行时LED闪烁. 使用按键使看门狗产生; 超时, 引起系统复位. 系统复位, 软件停止按钮变灰.;=WDTD EQU 85H ;看门狗定时器数据/重载寄存器WDTC EQU 0C0HWDT BIT 0C1H ;看门狗定时器刷新位 ORG 0000H AJMP START ORG 0003H AJMP EINT0

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

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