


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、微机原理及应用实验报告班级:机械1301班:黄佳清学号: 0801130117座位号:中南大学机电工程学院设置为keil为纯软件仿真INC R0INC DPTRDJNZ R2,A2MOV R0,#030H ;断点,观察并记录!MOV DPTR,#7000HMOV R2,#0FHA3:MOVX A,DPTRMOVX R0,AINC R0INC DPTRDJNZ R2,A3DO: LJMP DOEND ;部存储器数据块赋 值,搬运数据块到外部存储器,再搬运回部数据存储器。.实验目的1、熟悉MCS-51单片机仿真开发机和开发调试软件的操作使用和调整;2、学会编写和输入汇编语言源程序、对输入的源程序进
2、行汇编;3、掌握程序的调试和运行的各种方法。.实验设备台式微型计算机MCS-51仿真开发机THKSCM-2A三. 实验容及步骤(完成分值:60分)本实验秩序运行Keil uVersion2 程序,1. 新建工程项目2. 设置工程文件参数3. 编写新程序事例4. 调试程序直至能够运行出结果。四. 实验程序AJMP MAINORG 0030HMAIN: MOV R0,#20HMOV R2,#0FHMOV A,#00HA1: MOV R0,AINC R0INC ADJNZ R2,A1MOV R0,#20H;暂停,观察并记录!MOV DPTR,#7000HMOV R2,#0FHA2: MOV A,R0
3、MOVX DPTR,A五. 附加题1将光标移到想要暂停的地方,MOV R0,#20H所在行,选择 “执行到光标 处”功能,程序快速执行到光标所在行。观察运行情况,并记录下表。R0R2A20H21H22H23H24H25H0x2f0x000x0fOOH01H02H:03H04H05H26H27H28H29H2AH2BH2CH2DH2EHO6HO7H08H09HOAHOBHOCHODHOEH2.在MORO,#OAOH行设置断点,全速执行,暂停后观察并记录以下单元容RODPL7000H7001H7002H7003H7004H:7005H7006H 10X2FOFHOOH01H02H03H04H05H
4、06H :7007H7008H7009H700AH700BH700CH700DH700EH07H08H09HOAHOBHOCHODHOEH3.画出程序流程图开始赋值R0 20HR2 OFHA OOHY赋值RO 20HDPTR 7000HR2 OFH(A) (RO)(DPTR) (A)R0 RO+1DPTR DPTR+1R2 R2-1R2=O?Y赋值RO3OHR2OFHDPTR 7OOOH(A) (DPTR)(RO) (A)DPTRDPTR+1RO RO+1R2 R2-1R2=O?结束丨 4.修改程序,实现新功能实现倒序数据转移程序AJMPMAINORG 0030HMAIN: MOV R0,#4
5、0HMOV R2,#0FHMOV A,#00HA1:MOV R0,ADECR0INCADJNZR2,A1MOVR0,#30HMOVDPTR,#7000HMOVR2,#0FHA2:MOV A,R0MOVX DPTR,AINCR0INCDPTRDJNZR2,A2MOVR0,#030HMOVDPTR,#7000HMOVR2,#0FHA3:MOVX A,DPTRMOVX R0,AINCR0INCDPTRDJNZR2,A3DO:LJMP DOENDMOV A,R2MOV R4,ALOOP1: MOV A,R1CLR CSUBB A,BJC LOOP2 ;改为JNC即可逆 序排列MOV B,R1MOV A
6、,R1MOV R3,ALOOP2: INC R1DJNZ R4,L OOP1MOV A,R3MOV R1,AMOV A,R1XCH A,R0XCH A,R1INC R0DJNZ R2,L OOPRETENDORG 0100Hmain:MOV R0,#20H实验二程序设计一、实验目的1、掌握MCS-51单片机指令系统及用汇编语言编程技巧;2、了解和熟悉用MCS-51单片机仿真开发机调试程序的方法。二、实验容及步骤(完成分值:30分/单个程序)题目1、编写排序程序并上机调试通过。已知 8031 部 RAM60H69H单元中,依次存放了 0FH,09H,07H,0CH,03H,0DH,08H,0BH
7、,04H,01H共 10 个字节无符号数,编程将它 们规律排序,最大数放在60H中,最小数放在69H中。结果应该是 0FH,0DH,0CH,0BH,09H,08H,07H,04H,03H,01H题目2、编写多字节加法程序并上机调试通过。8031部RAM22HI21H 20H单元中,分别存放了 3字节无符号被加数0FFH 0FFH 0FFH(低字节在低地址),在32H 31H 30H单元中分别存放3字节无符 号加数22H 22H 22H(低字节在低地址),求两数之和,并将结果存入部RAM23H 22H、21H、20H单元中(低字节在低地址)。结果应该是01H 22H、22H 21Ho四、参考实验
8、程序 题目1ORG 0000HLJMP mainORG 0100Hmain:.将10个随机数送入部 RAM的 5059H单元NOP可在此处设置断点ACALL SELSORT调用排序子程序HERE:AJMP HERE;可在此处设置断点,观察每次排序结果NOP;排序子程序DAT EQU 60H;排序数据首地址N EQU 10;排序个数SELSORT: MOV R0,#DATMOV R2,#N-1LOOP: MOV B,R0MOV A,R0MOV R3,AINC AMOV R1,A题目2ORG 0000HLJMP mainMOV RO,#OFFHINC ROMOV RO,#OFFHINC ROMOV
9、 RO,#OFFHMOV RO,#3OHMOV RO,#22HINC ROMOV RO,#22HINC ROMOV RO,#22HACALL MULTADD;用多字节加法子 程序HERE:AJMP HERE ;可在此处设置断 点,观察结果NOP;N字节无符号数加法子程序(【R0+【R1)=(【R0】)附加题1. 画出题目1的程序流程图。开始;入口 :R0,R1,R2;占用资源:ACC,B;堆栈需求:2字节;出口 :R0 存放结果高地址MULTADD:MOV R0,#20H;地址 1MOV R1,#30H;地址 2MOV R2,#03H;加法字节数NSUB:CLR CNSUB1: MOV A,R
10、0ADDC A,R1MOV R0,AINC ROINC R1DJNZ R2,NSUB1CLR AADDC A, #00H ;把进位位C加到高8位去MOV RO, ARETEND存入数据到60H69HY ft结束LOOP3:INC R1CJNE R1,#6A H, LOOP2;INC R0MOV 51H,R02. 将题目1的排序算法进行改变,采用另一种排序算法进行排序。ORG 0000HLJMP mainORG 0100HMAIN:.; 将10个随机数送入LOOP2:MOV A,R0MOV 50H,R1CJNE A,50H,BIG ;做减法。BIG:JNC LESS ; 是 0 _则跳转LJMP
11、 LOOP3LESS:XCH A,R1 ;交换60与61中的容MOV R1,51HINC R1CJNE R0,#69 H, LOOP2 ;以此类推,直到剩最后两个数比较完。SJMP $ENDXCH A,R03. 画出题目2的程序流程图开始存入数据到20好22H,30H32HR020HR1 30HR23HC清零A (R0)+(R1) (R0) AR0 R0+1R1 R1 + 1R2 R2-1A A+C(R0) A结束4. 改为编写多字节减法程序ORG 0000HLJMP mainORG 0100Hmain:MOV R0,#20HMOV R0,#0FFHINC R0MOV R0,#0FFHINC
12、R0MOV R0,#0FFHMOV R0,#30HMOV R0,#22HINC R0MOV R0,#22HINC R0MOV R0,#22HACALL MULTADD;用多字节加法子 程序HERE:AJMP HERE;可在此处设置断点,观察结果NOP;N字节无符号数加法子程序(【R0+【R1)=(【R0】);入口 :R0,R1,R2;占用资源:ACC,B;堆栈需求:2字节;出口 :R0 存放结果高地址MULTADD:MOV R0,#20H;地址 1MOV R1,#30H;地址 2MOV R2,#03H;加法字节数NSUB:CLR CNSUB1: MOV A,R0ADDC A,R1MOV R0,
13、AINC R0INC R1DJNZ R2,NSUB1CLR AADDC A, #00H ;把进位位C加到高8位去MOV R0, ARETEND实验三定时/计数器实验一、实验目的1、掌握MCS-51单片机部定时/计数器的功能与特点,工作方式选择和编程方 法,中断功能的使用和中断服务程序的设计;2、了解和熟悉MCS-51单片机实验板的功能。二、实验容及步骤(完成分值:60分/单个程序)本实验需要用到单片机最小应用系统(F1区)和十六位逻辑电平显示模块 (14区)。用P1 口做输出口,接十六位逻辑电平显示,程序功能使发光二极管 从右到左轮流循环点亮。三、参考流程图、电路图、参考程序VCCRESETR
14、2F100C3F10uFP3.0P3.1P32-P33P3515P3计 P1.5movTH0, #T100us;100usmovTL0, #T100us;100us记数次数,5000 x 100us = 0.5s,十六进制#1388H时间常数(12MHz)记数单元,05H、06Horg 0000H Ijmp Start org 000BHLJMP T0IntORG 0100HStart:方式2,定时器时间常数(12MHz)时间常数(12MHz)mov IE, #10000010b; EA=1, IT0 = 1setb TR0;开始定时mov p1,#0FEH ;由于电路原因,输出高电平为灭灯。
15、mov C100us, #HIGH(Tick);05H-#13H,初始化 100us 记数单元mov C100us+1, #LOW(Tick);06H-#88H,初始化 100us 记数单元Loop:Ijmp LoopORG0300HT0Int: push movPSWa, C100us+1; 100us高位记数单元 06HjnzGoondecC100us; 100us低位记数单元05HGoon:decC100us+1mova, C100us; 100us低位记数单元05Horla, C100us+1jnzExit; 100us记数单元不为0,返回movC100us, #HIGH (T ick
16、);05H-#13H,100us记数单元为0则初始化100us记数单元movC100us+1, #L0W(Tick);06H-#88H,100us记数单元为0则初始化100us记数单元MOVA,P1;100us记数单元为0,位移!RLAMOV P1,AExit:pop PSW retiEnd五、附加题1修改程序,实现新功能奇数偶数交换点亮Tick equ 5000T0Int:T100us equ 156pushPSWC100usequ 5hmova, C100us+1org0000HjnzGoonljmpStartdecC100usorg000BHGoon:LJMP T0IntdecC100u
17、s+11mova, C100usorla, C100us+1ORG0100HjnzExitStart:movTMOD, #02hmovC100us, #HIG H( Tick)movTH0, #T100usmovC100us+1,movTL0, #T100us#LOW(Tick)movIE,#10000010bMOVA,P1setbTR0RLAmovp1,#0AAHMOV P1,AmovC100usExit:movC100us+1popPSWLoop:ljmp LoopretiORG0300HEnd2. 用MCS-5仲片机的部定时器定时中断,编写一段电子秒表程序, 在静态数码管上实现显示。TC
18、NTA EQU 30H;TCNTB EQU 31HSECEQU 32HKEYCNTEQU 33HMOV TH0,#06HINT_T0:SP1BIT P3.5MOV TL0,#06HINC TCNTAORG OOHMOV TCNTA,#00HMOV A,TCNTALJMP STARTMOV TCNTB,#00HCJNE A,#100,NEXTORG 0BHLJMP DKNMOV TCNTA,#00HLJMP INT_T0KN1: CJNE A,#02H,KN2INC TCNTBSTART:MOV KEYCNT,#00HCLR TR0MOV A,TCNTBMOV SEC,#00HLJMP DKNC
19、JNE A,#4,NEXTMOV A,SECKN2:CJNE A,#03HMOV TCNTB,#00HMOV B,#10MOV SEC,#00HINC SECDIV ABMOV A,SECMOV A,SECMOV DPTR,#TABLEMOV B,#10CJNE A,#100,DONEMOVC A,A+DPTRDIV ABMOV SEC,#00HMOV P0,AMOV DPTR,#TABLEDONE: MOV A,SECMOV A,BMOVC A,A+DPTRMOV B,#10MOV DPTR,#TABLEMOV P0,ADIV ABMOVC A,A+DPTRMOV A,BMOVDPTR,#T
20、ABLEMOV P2,AMOV DPTR,#TABLEMOVC A,A+DPTRMOVMOVC A,A+DPTRMOV P0,ATMOD,#02H;MOV P2,AMOV A,BSETB ET0MOV KEYCNT,#00HMOVDPTR,#TABLESETB EADKN: JNB SP1,$MOVC A,A+DPTRWT: JB SP1,WTLJMP WTMOV P2,ALCALL DELY10MSDELY10MS:NEXT: RETIJB SP1,WTMOV R6,#20TABLE:DBINC KEYCNTD1: MOV R7,#2483FH,06H,5BH,4FH,66H,6DH,7DH
21、,07H,7MOV A,KEYCNTDJNZ R7,$FH,6FHCJNE A,#01H,KN1DJNZ R6,D1ENDSETB TR0RET实验四动态显示实验一、实验目的1掌握七段LED数码管显示器工作原理,以及用动态扫描方法编程实现8位LED数码管显示的方法;2、进一步了解和熟悉MCS-51单片机实验板的功能。二、实验容及步骤(完成分值:60分/单个程序)本实验需要用到单片机最小应用系统(F1区)和动态扫描显示模块(12 区)。1. 用8P排线将单片机最小应用系统(F1区)的P2 口和动态扫描显示的 位选JD1I相连,用8P排线将单片机最小应用系统(F1区)的P0 口和动态扫 描显示模块
22、的段码JDOI相连。2. 用串行数据通信线连接计算机与仿真器,把仿真器插到模块的锁紧插座 中,请注意仿真器的方向:缺口朝上。3. 打开Keil uVision2 仿真软件,首先建立本实验的项目文件,接着添加 源程序,进行编译,直到编译无误。4. 全速运行程序,直至显示效果为稳定的“ 123456”四、参考流程图、电路图、实验程序o 1 2 3 4 5- B 7 P2P?S?P7P2P2P2P2电路接线图程序:ORG 0000HAJMP MAINORG 0080HMAIN:MOV P2,#0FFHMOV P0,#7DH ;显示 6CLR P2.0 ;选中第一个数码管LCALL DELAY ;调用
23、延时; MOV P0,#0FFH ;关显示 SETB P2.0MOV P0,#6DH ;显示 5CLR P2.1 ;选中第二个数码管LCALL DELAY; MOV P0,#0FFHSETB P2.1MOV P0,#066H ;显示 4CLR P2.2 ;选中第三个数码管LCALL DELAYMOV P0,#0FFHSETB P2.2MOV P0,#4FH ;显示 3CLR P2.3 ;选中第四个数码管LCALL DELAYMOV P0,#0FFHSETB P2.3MOV P0,#5BH ;显示 2CLR P2.4 ;选中第五个数码管LCALL DELAYMOV P0,#0FFHSETB P2
24、.4MOV PO,#OFFHMOV P0,#06H ;显示 1CLR P2.5 ;选中第六个数码管LCALL DELAY;MOV PO,#OFFHSETB P2.5;CLR P2.6 ;选中第七个数码管;MOV P0,#21H ;显示6;LCALL DELAY;MOV PO,#OFFH;SETB P2.6;CLR P2.7 ;选中第八个数码管;MOV P0,#7AH ;显示7;LCALL DELAY;SETB P2.7AJMP MAIN ;重新开始MOV R7,#20HD1:MOV R6,#30HD2:DJNZ R6,D2DJNZ R7,D1RETDELAY:;延时子程序;DISTAB: DB
25、 3FH,06H,5BH,4FH ;DB 66H,6DH,7DH,07H;DB 7FH,6FH,77H,7CH;DB 39H,5EH,79H,71HEND五、附加题(完成分值:20分/单个附加题,附加题要求当场给指导老师检查结 果,否则无效。)1.修改程序,稳定循环 显示“ GOOD、 “ HELLO、“ CSU、 “ D510” ,程序如何修改?ORG 0000HAJMP MAINORG 0080HMAIN:MOV R1,#7FHMOV R2,#7FHMOV R3,#7FHMOV R4,#7FHLOOP1:MOVP2,#OFFHMOV P0,#3FHCLR P2.0LCALL DELAY;
26、MOV PO,#OFFHSETB P2.0MOV P0,#3FHCLR P2.1 ;选中 第二个数码管LCALL DELAY; MOV PO,#OFFHSETB P2.1MOV P0,#03FHCLR P2.2 ;选中 第三个数码管LCALL DELAY; MOV PO,#OFFHSETB P2.2MOV P0,#7DH CLR P2.3 ;选中第四个数码管LCALL DELAY; MOV PO,#OFFHSETB P2.3DJNZ R1,LOOP1LOOP2:MOV P2,#0FFHMOV P0,#3FH CLR P2.0 ;选中第一个数码管LCALL DELAY ;调用延时; MOV PO
27、,#OFFH ;关显示SETB P2.0MOV P0,#38H CLR P2.1 ;选中第二个数码管LCALL DELAY; MOV PO,#OFFHSETB P2.1MOV P0,#038HCLR P2.2 ;选中第三个数码管LCALL DELAY; MOV PO,#OFFHSETB P2.2MOV P0,#79HCLR P2.3 ;选中 第四个数码管LCALL DELAY; MOV PO,#OFFHSETB P2.3MOV P0,#76HCLR P2.4 ;选中 第五个数码管LCALL DELAY; MOV PO,#OFFHSETB P2.4DJNZ R2,LOOP2LOOP3: MOV
28、P2,#0FFHMOV P0,#3EHCLR P2.0 ;选中第一个数码管LCALL DELAY ;调用延时; MOV PO,#OFFH ; 关显示SETB P2.0MOV P0,#6DHCLR P2.1 ;选中第二个数码管LCALL DELAYMOV PO,#OFFHSETB P2.1MOV P0,#039HCLR P2.2 ;选中 第三个数码管LCALL DELAY; MOV PO,#OFFHSETB P2.2DJNZ R3,LOOP3LOOP4: MOV P2,#0FFHMOV P0,#3FHCLR P2.0 ;选中第一个数码管LCALL DELAY ; 调用延时; MOV P0,#0F
29、FH ; 关显示SETB P2.0MOV P0,#6HCLR P2.1 ;选中第二个数码管LCALL DELAY; MOV P0,#0FFHSETB P2.1MOV P0,#06DHCLR P2.2 ;选中 第三个数码管LCALL DELAY; MOV P0,#0FFHSETB P2.2MOV P0,#39HCLR P2.3 ;选中 第四个数码管LCALL DELAY; MOV P0,#0FFHSETB P2.3DJNZ R4,L OOP4AJMPMAIN;重新开始DELAY:;延时子程序MOV R7,#20HD1: MOV R6,#30HD2: DJNZ R6,D2 DJNZ R7,D1 R
30、ET;DISTAB: DB 3FH,06H,5BH,4FH ; DB 66H,6DH,7DH,07H;DB7FH,6FH,77H,7CH;DB39H,5EH,79H,71HEND2修改程序,稳定 显示当前时间(如 AM 11:30 ),并且能模拟真实时钟走动。ORG 0000HAJMP MAINMOV P0,#04HCLR P2.2 ;选中LOOP2:MOV P2,#0FFHORG 0080H第三个数码管MOV P0,#6HMAIN:MOV R1,#7FHLCALL DELAYCLR P2.0 ;选中MOV R2,#7FH;MOV P0,#0FFH第一个数码管MOV R3,#7FHSETB P
31、2.2LCALL DELAY ;MOV R4,#7FH调用延时;MOV P0,#0FFHLOOP1:MOV P0,#06DH关显示MOVP2,#03FHCLR P2.3 ;选中SETB P2.0第四个数码管MOV P0,#3FHLCALL DELAYMOV P0,#3FHCLR P2.0;MOV P0,#0FFHCLR P2.1 ;选中LCALL DELAYSETB P2.3第二个数码管;MOV P0,#0FFHLCALL DELAYSETB P2.0MOV P0,#06H;MOV P0,#0FFHCLR P2.4 ;选中SETB P2.1MOV P0,#3FH第五个数码管CLR P2.1 ;选中LCALL DELAY第二个数码管;MOV P0,#0FFHMOV P0,#04HLCALL DELAYSETB P2.4CLR P2.2 ;选中;MOV P0,#0FFH第三个数码管SETB P2.1LCALL DELAYDJNZ R1,LOOP1;MO
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年初中生物学考试试题及答案
- 劳动教育融入研学旅行中的研究
- 市场推广及市场调研协议
- 教学进度管理规定
- 动物王国的童话读后感(15篇)
- 2025年采购师(初级)考试试卷:采购谈判与议价技巧
- 2025年电工中级职业技能考试真题卷-电路分析与应用试题
- 社区开发与农业产业化合作协议
- 2025年柔印CTP项目规划申请报告模板
- 春节里的趣事记事类话题作文13篇
- 高标准农田建设项目工程建设进度计划与措施
- 西方经济学-马工程重点教材-第16章
- 人工智能安全ppt
- 综述论文(肠内营养的临床应用及护理进展)
- 北京市工伤保险医疗费用手工报销申报表
- 2022-2023学年四川省成都市高新区八年级(下)期末语文试卷(含解析)
- 2023年厦门大学强基计划招生考试数学试题真题(含答案)
- 2023年职业技能-配网不停电带电作业考试参考题库(高频真题版)附答案
- O型密封圈的选型设计计算参考
- 食品供货方案(完整版)
- 抗日英雄王二小红色革命故事会通用ppt
评论
0/150
提交评论