版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上精选优质文档-倾情为你奉上专心-专注-专业专心-专注-专业精选优质文档-倾情为你奉上专心-专注-专业实验一系统认识及基本程序设计实验一、实验目的 1. 学习Keil 集成开发环境的操作; 2. 熟悉TD-51 系统板的结构及使用,熟悉51指令系统; 3掌握不同进制数及编码相互转换的程序设计方法,加深对数码转换的理解;4学习查表程序的设计方法,进一步熟悉51 的指令系统。二、实验设备 PC机一台,TD-NMC+教学实验系统。三、实验步骤编写实验程序,经编译、链接无误后,启动调试功能;观察实验现象,并分析原因;按复位键退出调试状态。四、实验内容1. 将BCD 码整数025
2、5 存入片内RAM 的20H、21H、22H 中,然后转换为二进制整数00HFFH,保存到寄存器R4 中。修改20H、21H、22H 单元的内容,如:00H,05H,08H;观察实验结果。参考程序:;=; 文件名称: Asm2-1.asm; 功能描述: BCD整数转换为二进制整数(8位, 范围从00H-FFH);=ORG 0000HLJMP MAINORG 0100HMAIN:MOV R0, #20H;BCD存放高位地址MOV R7, #03H;BCD码0-255, 最多3位 CLR AMOV R4, ALP1:MOV A, R4MOV B, #0AHMUL AB;乘10ADD A, R0;加
3、下一位的值INC R0;指向下一单元MOV R4, A;结果存入R4DJNZ R7, LP1;转换未结束则继续SJMP MAIN;设置断点, 观察实验结果R4中的内容END2. 将16 位二进制整数存入R3R4 寄存器中,转换为十进制整数,以组合BCD 形式存储在RAM 的20H、21H、22H 单元中。 参考程序:;=; 文件名称: Asm2-2.asm; 功能描述: 二进制整数(16位)转换为十进制整数(组合BCD);=; 0-FFFFH(R3R4)=0-65535ORG 0000HLJMP MAINORG 0100HMAIN:MOV R0, #22H;转换结果低位地址MOV A, R0P
4、USH ACC;ACC表示累加器A的直接地址MOV R7, #03HCLR ALP1:MOV R0, A;结果存储地址清零DEC R0DJNZ R7, LP1POP ACCMOV R0, AMOV R7, #16LP2:PUSH ACCCLR CMOV A, R4;R4中为二进制数的低位RLC AMOV R4, AMOV A, R3;R3中为二进制数的高位RLC AMOV R3, AMOV B, #03HLP3:MOV A, R0ADDC A, R0;执行乘2操作DA A;十进制调整MOV R0, A;结果保存DEC R0DJNZ B, LP3POP ACCMOV R0, ADJNZ R7,
5、LP2LJMP MAIN;设置断点观察结果, 可进行下一次转换END3. 通过查表的方法将16 进制数转换为ASCII 码; 参考程序:;=; 文件名称: Asm4-1.asm; 功能描述: 查表程序设计, 将十六进制数0F通过查表的方法; 转换为ASCII码;=ORG 0000HLJMP MAINORG 0100HMAIN:MOV DPTR, #ASCTAB;表格首地址送DPTRMOV A, R7;R7中为待转换的数ANL A, #0FH;取低4位MOVC A, A+DPTR;查表MOV R5, A;低4位转换结果送R1MOV A, R7ANL A, #0F0H;取待转换数的高4位SWAP
6、A;高4位与低4位交换MOVC A, A+DPTR;查表MOV R6, A;高4位转换结果送R2SJMP MAIN;设置断点观察结果ASCTAB:DB 30H, 31H, 32H, 33H, 34HDB 35H, 36H, 37H, 38H, 39HDB 41H, 42H, 43H, 44H, 45H, 46HEND4. 通过查表的方法实现yx2,其中x为09 的十进制数,以BCD码表示,结果仍以BCD 码形式输出。 参考程序:;=; 文件名称: Asm4-2.asm; 功能描述: 查表程序, 用程序实现Y=X*X, X为0到9的十进制数,; 用BCD码(00H到09H)表示, 将X的平方,
7、即Y也以BCD码; 的形式保存到R1中.;=ORG 0000HLJMP MAINORG 0100HMAIN:MOV DPTR, #SQR;取表格首地址MOV A, R7;要计算的值MOVC A, A+DPTR;查表MOV R6, A;结果保存SJMP MAINSQR:DB 00H, 01H, 04H, 09H, 16HDB 25H, 36H, 49H, 64H, 81HEND实验二片内I/O口及中断应用实验 一、实验目的 了解P1 口作为输入输出方式使用时,CPU 对P1 口的操作方式。了解MCS-51 单片机的中断原理,掌握中断程序的设计方法。 二、实验设备 PC机一台,TD-NMC+教学实
8、验系统,连接线若干三、实验步骤按实验内容要求完成硬件连线;编写实验程序,经编译、链接无误后,启动调试功能;观察实验现象,并分析原因;按复位键退出调试状态。 四、实验内容1.片内I/O口应用实验P1 口是8 位准双向口,每一位均可独立定义为输入输出。编写实验程序,将P1 口的低4 位定义为输出,高4 位定义为输入,数字量从P1 口的高4 位输入,从P1 口的低4 位输出控制发光二极管的亮灭。 ;=; 文件名: DigitIO.ASM; 功能说明: 数字量输入输出实验, P1口高4位输入, 低4位输出;=ORG 0000HLJMP STARTORG 0100HSTART:ORL P1, #0F0H
9、;P1口高四位为输入MOV A, P1;读P1口的值SWAP A;A中高,低4位交换MOV P1, A;输出到P1口SJMP STARTEND2. 片内中断系统实验定时器中断单片机集成的定时器可以产生定时中断,利用定时器0 和定时器1,编写实验程序在P1.0及P1.1 引脚上输出方波信号,通过示波器观察实验现象并测量波形周期。改变计数值,重新运行程序,反复验证程序功能。参考程序:;=; 文件名: INT1.ASM; 功能说明: 采用定时器的中断, 在P1.0与P1.1引脚上输出周期波形.;=ORG 0000HLJMP STARTORG 000BHLJMP TIMER0ORG 001BHLJMP
10、 TIMER1ORG 0100HSTART:MOV P1, #0FFHMOV TH0, #0F8H;初始化定时器0计数初值MOV TL0, #00HMOV TH1, #0F8H;初始化定时器1计数初值MOV TL1, #00HMOV TMOD, #11H;设置定时器工作模式为方式1MOV TCON, #50H;启动定时器MOV IE, #8AH;使能中断SJMP $TIMER0:CPL P1.0;定时器0中断服务程序, 对P1.0引脚取反MOV TH0, #0F8H;重新装入计数初值MOV TL0, #00HRETI;中断返回TIMER1: CPL P1.1;定时器1中断服务程序MOV TH1
11、, #0F8HMOV TL1, #00HRETIEND 外部中断手动扩展外部中断INT0、INT1,当INT0 产生中断时,使LED8 亮8 灭闪烁4 次;当INT1 产生中断时,使LED 由右向左流水显示,一次亮两个,循环4 次。先按KK1,观察实验现象,然后按KK2,观察实验现象。51 单片机加入了中断系统,从而提高了CPU 对外部事件的处理能力和响应速度。增强型单片机SST89E554RC 共有8 个中断源,即外部中断0(INT0)、定时器0(T0)、外部中断1(INT1)、定时器1(T1)、串行中断(TI 和RI)、定时器2(T2)、PCA 中断和Brown-out 中断。参考程序:;
12、=; 文件名: INT2.ASM; 功能说明: 外部中断INT0, INT1操作. ; 外部中断0: 使发光二极管闪烁4次.; 外部中断1: 使发光二极管由右向左流水显示, 一次亮两个LED.;=ORG 0000HLJMP STARTORG 0003HLJMP EINT0ORG 0013HLJMP EINT1START:MOV P1, #00HSETB IT0;定义外部中断0为边沿触发SETB EX0;使能外部中断0SETB IT1;定义外部中断1为边沿触发SETB EX1;使能外部中断1SETB EA;使能总中断SJMP $EINT0:MOV R7, #04H;外部中断0中断服务程序ELP0
13、:MOV P1, #0FFHACALL DELAY;调用延时程序MOV P1, #00HACALL DELAYDJNZ R7, ELP0RETIEINT1:MOV A, #03H;外部中断1中断服务程序MOV R7, #10HILP1:MOV P1, ARL ARL AACALL DELAYDJNZ R7, ILP1RETIDELAY:MOV R6, #0FFH;延时子程序DLP1:MOV R5, #0FFHDLP2:DJNZ R5, DLP2DJNZ R6, DLP1RETEND实验三定时器/计数器应用实验一、实验目的 1了解MCS-51 单片机定/计数器的工作原理与工作方式; 2掌握定时/
14、计数器T0 和T1 在定时器和计数器两种方式下的编程; 3学习定时/计数器T2 的可编程时钟输出功能。 二、实验设备 PC机一台,TD-NMC+教学实验系统,连接线若干三、实验步骤按实验内容要求完成硬件连线;编写实验程序,经编译、链接无误后,启动调试功能;观察实验现象,并分析原因;按复位键退出调试状态。 四、实验原理通常,8051 单片机内部有2 个16 位定时/计数器,即定时器0(T0)和定时器1(T1)。增强型单片机SST89E554RC 内部还有一个16 位定时器T2,与其相关的特殊功能寄存器有TL2、TH2、RCAP2L、RCAP2H、T2CON 等。 定时器/计数器2 控制寄存器(T
15、2CON)各位的含义简述如下: TF2:定时器溢出标志,当定时器溢出时置位,必须由软件清除。当RCLK1 或TCLK1 时此位将不会被置位。 EXF2:定时器2 外部标志,当EXEN21 并且T2EX 引脚上出现负跳变引起捕捉或重载发生时此位置1。如果定时器2 中断使能,EXF21 会引起中断,此位必须软件清除。DCEN1 时,EXF2 不会引起中断。 RCLK:接收时钟标志,RCLK1,串行口使用T2 的溢出脉冲作为方式1 和3 下的接收时钟;RCLK0,串行口使用T1 的溢出脉冲作为接收时钟。 TCLK:发送时钟标志,与RCLK 的作用相同。 EXEN2:定时器2 外部使能标志。EXEN2
16、1 且T2 未被用于串口时钟时,若T2EX 引脚上出现负跳变则出现捕捉或重载。EXEN20 时,T2 忽略T2EX 引脚上的变化。 TR2:启动/停止定时器2,为1 时启动定时器2。 C/T2:定时器/计数器选择。C/T21 为计数功能;C/T20 为定时功能。 CP/RL2:捕捉/重载标志。CP/RL21,当EXEN21 且T2EX 引脚上出现负跳变时捕捉发生。CP/RL20,T2 溢出时重载发生,或当EXEN21 且T2EX 引脚上出现负跳变时重载发生。如果RCLK1 或TCLK1,此位会被忽略,T2 溢出时自动重载。 定时器/计数器2 模式寄存器(T2MOD)各位的含义简述如下: T2O
17、E:定时器2 输出使能位。 DCEN:递减计数使能位。 五、实验内容1. 使用定时器0 与定时器1 进行定时,在P1.0 和P1.1 引脚上输出方波信号,通过示波器观察波形输出,测量并记录方波周期。 参考程序:;=; 文件名称: Timer.ASM; 功能说明: 使用定时器0和定时器1在P1.0与P1.1引脚上输出方波.;=ORG 0000HLJMP STARTORG 0100HSTART:MOV TMOD, #11H;设置定时器工作方式为方式1MOV TH0, #0F8H;装入定时器0的计数初值MOV TL0, #00HMOV TH1, #0F8H;装入定时器1的计数初值MOV TL0, #
18、00HSETB TR0;启动定时器SETB TR1MLP1:JNB TF0, MLP2;判定时器0溢出标志MOV TH0, #0F8H;重装定时器0的计数初值MOV TL0, #00HCPL P1.0CLR TF0;清溢出标志MLP2:JNB TF1, MLP1;判定时器1溢出标志MOV TH1, #0F8HMOV TL1, #00HCPL P1.1CLR TF1AJMP MLP1END2. 将定时/计数器1 设定为计数器方式,每次计数到10 在P1.0 引脚上取反一次,硬件连接如图所示,按单次脉冲KK1,观察发光管D0 的状态,每10 次变化一次。参考程序:;=; 文件名称: COUNT.A
19、SM; 功能描述: 利用计数器1, 在计数10次后对P1.0引脚取反一次;=ORG 0000HAJMP STARTORG 0100HSTART:MOV TMOD, #60H;设置定时器/计数器1为计数器方式, 且为方式2MOV TH1, #0F6H;装入计数初值MOV TL1, #0F6HSETB TR1;启动计数MLP1:JNB TF1, MLP1;判溢出标志CPL P1.0;取反P1.0CLR TF1;清溢出标志AJMP MLP1END3. 定时器2 可以作为时钟发生器使用,并在P1.0 引脚上输出占空比为50的方波。编程定时器2,使用示波器测量输出时钟,测量时钟周期;假定需要输出1MHz
20、 的方波信号,试修改程序,并使用示波器测量,验证程序的正确性。 引脚P1.0 与T2 复用,除作为普通I/O 引脚外,还有两个功能,即为定时/计数器2 输入外部时钟,输出占空比为50的周期时钟。 如果将T2 配置为时钟发生器,那么必须将C/T2设置为0,将T2OE 设置为1,并设置TR2 为1 以启动定时器。输出时钟的频率取决于晶振频率以及捕捉寄存器的重载值,公式如下: 输出频率晶振频率n(65536RCAP2H,RCAP2L)其中n2(6 时钟模式)或n4(12 时钟模式) 晶振频率为11.0592MHz,工作于12 时钟模式下,输出频率的范围为:42Hz2.76MHz。 参考程序:;=;
21、文件名称: ClkOut.ASM; 功能描述: 使用定时器2作为时钟发生器, 测量P1.0引脚输出, 测量周期.;=T2CONEQU 0C8H;定义特殊功能寄存器T2MODEQU 0C9HRCAP2LEQU 0CAHRCAP2HEQU 0CBHORG 0000HAJMP STARTORG 0100HSTART:MOV RCAP2H, #0FFH;改变RCAP2H,RCAP2L中的值可以改变时钟频率MOV RCAP2L, #00HMOV T2MOD, #02H;设置T2工作于时钟输出模式下MOV T2CON, #04H;启动定时器T2SJMP $END实验四看门狗实验一、实验目的 了解看门狗的工
22、作原理,学习看门狗的编程方法。 二、实验设备 PC机一台,TD-NMC+教学实验系统,连接线若干三、实验步骤按图连接实验电路图; 编写实验程序,编译、链接无误后启动调试; 允许实验程序,LED 闪烁; 按单次脉冲KK1,对WDT 停止刷新; 经过大概3 秒钟,可观察软件界面,产生复位,程序停止运行(注意界面变化); 改变WDT 的超时周期,反复实验几次,验证看门狗功能。 每次重新运行程序前,都应该先停止调试,然后重新启动调试,这样方可保证系统正常工作。 四、实验原理SST89E554RC 提供了一个可编程看门狗定时器(WDT),可以防止软件跑飞并自动恢复, 提高系统的可靠性。 用户程序中如果使
23、用了看门狗,那么必须在用户自己定义的时间内刷新WDT,亦称“喂狗”。若在规定的时间内没有刷新WDT,则产生内部硬件复位。WDT 以系统时钟(XTAL1)作为自己的时基,WDT 寄存器每隔 个时钟加1,时基寄存器(WDTD)的高8 位被用作WDT 的重载寄存器。WDT 的结构框图如图3-4-1 所示。WDT 超时周期计算如下: 周期(255WDTD)fCLK(XTAL1) 看门狗定时器控制寄存器(WDTC) 各位说明如下: WDOUT: 看门狗输出允许 0:看门狗复位不在复位引脚上输出 1:如果看门狗复位允许位WDRE1,看门狗复位将在复位脚上输出复位信号32 个时钟 WDRE: 看门狗定时器复
24、位允许 0:禁止看门狗定时器复位 1:允许看门狗定时器复位 WDTS: 看门狗定时器复位标志 0:外部硬件复位或上电会清除此位,向此位写1 会清除此位,若由于看门狗引起的复位将不影响此位。 1:看门狗溢出,此位置1 WDT 看门狗定时器刷新 0:刷新完成,硬件复位此位。 1:软件设置此位以强迫看门狗刷新,俗称“喂狗”。 SWDT 启动看门狗定时器 0:停止WDT 1:启动WDT 看门狗定时器数据/重载寄存器(WDTD) 五、实验内容学习SST89E554RC 的看门狗功能模块,编写实验程序,程序正常运行时8 个LED 闪烁, 通过按键使看门狗产生超时,引起系统复位。 参考程序:;=; 文件名称
25、: WDT.C; 功能描述: 看门狗实验, 程序运行时LED闪烁. 使用按键使看门狗产生; 超时, 引起系统复位. 系统复位, 软件停止按钮变灰.;=WDTDEQU 85H;看门狗定时器数据/重载寄存器WDTCEQU 0C0HWDTBIT 0C1H;看门狗定时器刷新位ORG 0000HAJMP STARTORG 0003HAJMP EINT0ORG 0100HSTART:MOV WDTD, #9FH;看门狗定时MOV WDTC, #1FH;看门狗控制SETB F0;设置标志SETB IT0;外部中断0触发方式SETB EX0;外部中断0使能SETB EA;全局中断使能MLP1:JNB F0,
26、MLP2;判标志MOV P1, #0FFHACALL DELAYMOV P1, #00HACALL DELAYSETB WDT;喂狗AJMP MLP1MLP2:SJMP $EINT0:MOV P1, #00HCLR F0;清标志RETIDELAY:MOV R7, #0FFH;延时DLP1:MOV R6, #0FFHDLP2:NOPNOPDJNZ R6, DLP2DJNZ R7, DLP1RETEND实验五串口通讯实验一、实验目的 1. 学习MCS-51 单片机串口的工作原理及程序设计; 2. 了解使用SSTEasyIAP11F.EXE 软件实现程序脱机运行的方法; 3. 熟悉启动加载代码与So
27、ftICE 相互切换的方法。 二、实验设备 PC机一台,TD-NMC+教学实验系统。三、实验步骤(1)串口通讯实验电路如图3-7-2 所示; (2)编写实验程序,经编译、链接无误后启动调试; (3)进入调试界面,点击命令,打开串口1 监视窗口; (4)运行实验程序,观察此时有如图3-7-2 所示输出; (5)阅读1.7 节的内容,首先将系统程序由SoftICE 切换到启动加载程序; (6)将编译生成的Hex 文件通过SSTEasyIAP11F.EXE 软件下载到单片机内部Flash 中; (7)复位单片机,打开超级终端或串口调试软件,将端口号及波特率等设置好,观察PC 显示,如图3-7-3 和
28、图3-7-4 所示; (8)实验结束,重新将SoftICE 下载到单片机系统区替换启动加载程序。 四、实验原理MCS-51 单片机内部的全双工串行接口部分,包含有串行接收器和串行发送器。有两个物理上独立的接收缓冲器和发送缓冲器。接收缓冲器只能读出接收的数据,但不能写入。发送缓冲器只能写入发送的数据,但不能读出。因此可以同时收、发数据,实现全双工通讯。两个缓冲器是特殊功能寄存器SBUF,它们公用地址为99H,SBUF 是不可位寻址的。此外,还有两个寄存器SCON 和PCON 分别用于控制串行口的工作方式以及波特率,定时器T1 可以用作波特率发生器。 SST89E554RC 提供了增强型全双工串行
29、接口,具有帧错误检测和自动地址识别的功能。 由于SST89E554RC 的串口用作调试目的,所以Keil C51 软件提供了串口模拟窗口,可以借助此窗口调试串口通讯程序。也可以将程序编译生成目标代码(.HEX),脱机运行。 五、实验内容编写实验程序,每隔一定的时间单片机向串口发送一次数据“Xian Tangdu Corp.”。 ;=; 文件名称: Serial.ASM; 功能说明: 串口输出实验, 定时向串口发送数据Xian Tangdu Corp.; 在串口观察窗1中可以观察数据.;=ORG 0000HLJMP STARTORG 0100HSTART:LCALL INITCOM;初始化串口M
30、LP1:MOV DPTR, #SENDDATA;数据起始地址MLP2:MOV A, #00HMOVC A, A+DPTRCJNE A, #00H, MLP3AJMP MLP5MLP3:MOV SBUF, A;发送数据到串口MLP4:JNB TI, MLP4;判发送结束否?CLR TI;清发送标志INC DPLAJMP MLP2MLP5:LCALL DELAYAJMP MLP1; Xi an TangduSENDDATA: DB 58H,69H,60H,61H,6EH,20H,54H,61H,6EH,67H,64H,75H DB 20H,43H,6FH,72H,70H,2EH,0DH,0AH,0
31、0H ; Corp .INITCOM:MOV SCON, #50H;串口初始化MOV TMOD, #20H;波特率设置为19200bpsMOV PCON, #80HMOV TH1, #0FDHSETB TR1CLR ES;不启动串口中断RETDELAY:MOV R7, #0FFHDLP1:MOV R6, #0FFHDLP2:NOPNOPNOPDJNZ R6, DLP2DJNZ R7, DLP1RETEND实验六静态存储器扩展实验一、实验目的 1. 掌握单片机系统中存储器扩展的方法; 2. 掌握单片机内部RAM 和外部RAM 之间数据传送的特点。 二、实验设备 PC机一台,TD-NMC+教学实验
32、系统。三、实验步骤1. 按图连接使用电路; 2. 按实验内容编写实验程序,经编译、链接无误后启动调试; 3. 打开存储器观察窗口,在存储器1 的Address 中输入D:0 x30,在存储器2 的Address 中输入X:0 x0000 来监视存储器空间; 4. 可单步运行程序,观察存储器内容的变化,或在while(1)语句行设置断点再运行程序, 验证实验功能。 四、实验原理存储器是用来存储信息的部件,是计算机的重要组成部分,静态RAM 是由MOS 管组成的触发器电路,每个触发器可以存放1 位信息。只要不掉电,所储存的信息就不会丢失。因此,静态RAM 工作稳定,不要外加刷新电路,使用方便。但一般SRAM 的每一个触发器是由6 个晶体管组成,SRAM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 布草购货合同
- 表见代理空白合同书
- 北京市电力设施保护安全管理协议书(试行)
- 浙江省金华市义乌市七校联考2024-2025学年九年级上学期11月期中数学试题(含答案)
- 内蒙古赤峰市名校2024-2025学年高一上学期期中联考语文试题(含答案)
- 黑龙江省齐齐哈尔市富裕县第一中学2024-2025学年八年级上学期11月期中阶段质量检测道德与法治试题(含答案)
- 【初中地理】湘教版2024-2025学年七年级上册期中模拟地理试题2
- 15 C波的干涉 提升版2025新课改-高中物理-选修第1册(21讲)
- 规划人生主题
- 血液系统用药相关项目投资计划书
- 五年级【语文】交流平台初试身手2课件
- 成都达州商会筹备方案
- 工程材料-构配件设备-报审表+数量清单
- 教师教育教学质量提升措施
- 肺结核归口管理培训课件
- 中国画中的线描艺术
- 医药经理的资源整合能力
- 噪声的基本知识和光电探测器简介
- 《神秘的楼兰古国》课件
- 航空主题酒店策划方案
- 《销售10大军规》课件
评论
0/150
提交评论