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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

单片机实验报告1lbsv20.docx

1、单片机实验报告1lbsv20东南大学仪器科学与工程学院学院实 验 报 告课程名: 单片机应用系统设计 实验名称: 单片机课程设计实验报告(一) 院 (系): 仪器科学与工程学院 专 业: 测控技术与仪器 评定成绩: 审阅教师: 目 录一、 软件实验一 数据传送实验3二、 软件实验二 多字节十进制加法实验5三、 软件实验三 多字节十进制加法实验8四、 硬件实验一 I/O口输入/输出及控制实验11五、 硬件实验二 数据输入/输出口扩展实验20软件实验一 数据传送实验一、实验目的1. 熟悉单片机仿真开发器的使用2. 掌握编程方法;掌握8051内部RAM的数据操作二、内容内部RAM 40H到4FH单元

2、置数 A0H到AFH,然后将40H到4FH中内容送到内部RAM 50H到5FH中。编辑、编译、运行程序,检查内部RAM中的结果。三、程序代码 ORG 0000HRESET: AJMP MAIN ORG 003FHMAIN: MOV R0, #40H MOV R2, #10H MOV A, #0A0HA1: MOV R0, A INC R0 INC A DJNZ R2, A1 MOV R0, #40H MOV R1, #50H MOV R2, #10HA2: MOV A, R0 MOV R1, A INC R0 INC R1 DJNZ R2, A2A3: SJMP A3四、分析以上程序,运行程序

3、后(暂停),检查并记录相关单元内容。答: 运行程序后,内部RAM 40H到4FH单元中的存储内容 A0HAFH,被传送到了内部RAM 50H到5FH中。五、修改程序,将所置的数改为00H到1FH,置数单元和传送单元为别改为内部RAM的40H到5FH和60H到7FH答: 实验修改程序如下: ORG 0000HRESET: AJMP MAIN ORG 003FHMAIN: MOV R0, #40H MOV R2, #20H ;修改 MOV A, #00H ;修改A1: MOV R0, A INC R0 INC A DJNZ R2, A1 MOV R0, #40H MOV R1, #60H ;修改

4、MOV R2, #20H ;修改A2: MOV A, R0 MOV R1, A INC R0 INC R1 DJNZ R2, A2A3: SJMP A3软件实验二 多字节十进制加法实验一、实验目的掌握MCS-51汇编语言程序设计方法二、内容多字节十进制加法。加数存储单元首地址由R0指出,被加数和结果的存储单元首地址由R1指出,字节数由R2指出。编辑、编译、运行程序,检查内部RAM中的结果。三、程序代码 加数存储单元为:31H、30H,被加数存储单元为:21H、20H,结果存储单元为22H、21H、20H。ORG 0000HRESET: AJMP MAIN ORG 0100HMAIN: MOV

5、SP, #60H MOV R0, #31H MOV R0, #22H DEC R0 MOV R0, #33H MOV R1, #21H MOV R1, #44H DEC R1 MOV R1, #55H MOV R2, #02H ACALL DACEHERE: SJMP HEREDACE: CLR CDAL: MOV A, R0 ADDC A, R1 DA A MOV R1, A INC R0 INC R1 DJNZ R2, DAL CLR A MOV ACC.0, C MOV R1,A RET四、分析以上程序五、运行程序后暂停,检查并记录加数存储单元为:31H、30H,被加数存储单元为:21H

6、、20H,结果存储单元为22H、21H、20H。六、修改加数和被加数(十进制),重复以上过程 ORG 0000HRESET: AJMP MAIN ORG 0100HMAIN: MOV SP, #60H MOV R0, #31H MOV R0, #40H ;修改 DEC R0 MOV R0, #30H ;修改 MOV R1, #21H MOV R1, #20H ;修改 DEC R1 MOV R1, #10H ;修改 MOV R2, #02H ACALL DACEHERE: SJMP HEREDACE: CLR CDAL: MOV A, R0 ADDC A, R1 DA A MOV R1, A I

7、NC R0 INC R1 DJNZ R2, DAL CLR A MOV ACC.0, C MOV R1,A RET七、填写下列单元地址及内容加数单元地址 (31H)(30H) 加数单元地址 (21H)(20H)结果单元地址 (22H)(21H)(20H)加数数值 (22H)(33H) 加数数值 (44H)(55H)结果数值 (00H)(66H)(88H)八、按以上步骤,验证作业中程序设计的习题运行结果见修改程序后。加数单元地址 (31H)(30H) 加数单元地址 (21H)(20H)结果单元地址 (22H)(21H)(20H)加数数值 (40H)(30H) 加数数值 (20H)(10H)结果数

8、值 (00H)(60H)(40H)软件实验三 十进制数排序实验一、目的掌握十进制数排序方法二、内容本程序用的是“冒泡排序”法,是将一个数与后面的数相比较,如果比后面的数大,则交换,如此将所有的数比较一遍后,最大的数就会在数列的最后面。再进行下一轮比较,找出第二大数据,知道全部数据有序,即从小到大排序。三、程序代码 SIZE EQU 10 ARRAY EQU 50H MOV 50H, #9 MOV 51H, #7 MOV 52H, #2 MOV 53H, #8 MOV 54H, #4 MOV 55H, #6 MOV 56H, #0 MOV 57H, #3 MOV 58H, #1 MOV 59H,

9、 #5 CHANCE EQU 0SORT: MOV R0, #ARRAY MOV R7, #SIZE-1 CLR CHANCEGOOD: MOV A, R0 MOV R2, A INC R0 MOV B, R0 CJNE A, B, NOTEQUAL SJMP NEXTNOTEQUAL: JC NEXT SETB CHANCE XCH A,R0 DEC R0 XCH A, R0 INC R0NEXT: DJNZ R7, GOOD JB CHANCE, SORT LJMP $ END四、分析以上程序五、运行程序后(暂停),检查并记录相关单元内容程序运行后结果为00,01,02,03,04,05,

10、06,07,08,09从小到大排序。六、修改需排序的十进制数,重复以上过程将数据修改为:02,04,08,09,12,14,16,13,89,77后,运行程序,结果为 02 ,04,08,09,12,13,14 ,16,77 ,89。 七、修改程序,按照从大到小的顺序排序答: 将原程序中的“JNC NEXT”修改为 “JNC NEXT” SIZE EQU 10 ARRAY EQU 50H MOV 50H,#9 MOV 51H,#7 MOV 52H,#2 MOV 53H,#8 MOV 54H,#4 MOV 55H,#6 MOV 56H,#0 MOV 57H,#3 MOV 58H,#1 MOV 5

11、9H,#5 CHANCE EQU 0SORT: MOV R0, #ARRAY MOV R7, #SIZE-1 CLR CHANCEGOOD: MOV A, R0 MOV R2, A INC R0 MOV B, R0 CJNE A, B, NOTEQUAL SJMP NEXTNOTEQUAL: JNC NEXT ;修改 SETB CHANCE XCH A,R0 DEC R0 XCH A, R0 INC R0NEXT: DJNZ R7, GOOD JB CHANCE, SORT LJMP $ END 程序运行后结果为09,08,07,06,05,04,03,02,01,00,从大到小排序。硬件实验

12、一 I/O口输入/输出及控制实验、I/O口输入/输出实验一、 目的:学习单片机I/O口的使用方法;学习延时子程序的编写和使用二、 内容1. I/O口输出:P1口做输出口,接八只发光二极管,编写程序使发光二极管循环点亮。2. I/O口输入/输出:P1.0、P1.1作输入口接两个拨动开关;P1.2、P1.3作输出口,接两个发光二极管。编写程序读取开关状态,将此状态在发光二极管显示出来。编写程序时应注意P1.0、P1.1作为输入口是应先置1,才能正确读入值。三、 实验步骤1、 I/O口输出硬件连接连线连接孔1连接孔21P1.0L02P1.1L13P1.2L24P1.3L35P1.4L46P1.5L5

13、7P1.6L68P1.7L7MCS51的P1口循环点灯2、 I/O口输入/输出硬件连接连线连接孔1连接孔21K4P1.02K5P1.13P1.3L44P1.3L4MCS51的P1口输入/输出3. 实验说明(1)对于MCS51,P1是准双向口。它作为输出口时与一般的双向口使用方法相同;但准双向口用作输入口时,因其结构特点必须先对它置“1”,否则读入的数据容易产生错误。(2)8051的延时子程序的延时计算问题,对于程序Delay: MOV R6, #0H MOV R7, #0HDelayLoop: DJNZ R6, DelayLoop DJNZ R7, DelayLoop RET 查指令表可知MOV和DJNZ指令均需要两个机器周期,在12MHz晶振时,一个机器周期时间为:12/12MHz=1ms,该延时子程序延时:(256*255+2)*2*12/12130ms。4. 分别连接硬件并执行相关程序,记录结果。四、 提高要求修改I/O口输出程序,改成先1,3,5,7灯亮,再2,4,6,8灯亮。五、 程序框图 六、 程序代码1. I/O口输出(P1口循环点灯) 汇编版.asmLOOP: MOV A, #01H MOV R2, #8OUTPUT: MOV P1, A RL A CALL DELAY DJNZ R2, OUTPUT LJ

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

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