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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

最新版单片机实验报告1534399Word下载.docx

1、Output1: mov a, #0fEH mov r5, #8 loop1: 3 CLR C mov C,DIR JC Output2 mov P1, a rl a Acall Delay djnz r5, loop1 Sjmp Output1Output2: mov a, #07fHloop2: JNC Output1 rr a djnz r5,loop2 Sjmp Output2Delay: mov r6,#0 DelayLoop1: mov r7,#0DelayLoop2: NOP djnz r7,DelayLoop2 djnz r6,DelayLoop1 end 4八、实验现象:进行

2、全速运行后,跑跑马灯变亮,当拨动开关后,可以改变跑马灯的方向,实验结果与设计程序运行结果相符合,实验得到验证.九、实验分析:整体功能就是P3.0口相当于开关把值给了C,当在output1时C为0,如果在这时候按下开关以后。继续完成剩下的程序后就跳到0utput2进行这时跑马灯的方向反了,在调用delay的程序延时了时间=256*256*4*机器周期时间。十、实验总结:首次单片机实验是对于实验箱进行了解及熟悉单片机的编程软件。进行I/O口输入和输出的实验,通过8位电平的输出,用来控制跑马灯的方向。这是第一个实验,但是由于刚刚开始,还不回自己编写程序,所以只能照搬原有程序了,但是自己会努力的。 实

3、验二 外部中断实验2013年11月4日星期一三、 实验目的:学习外部中断技术的基本使用方法。INT0 端接单次脉冲发生器。按一次脉冲产生一次中断,CPU 使P1.0 状态发生一次反转,P1.0接LED 灯,以查看信号反转。1)系统各跳线器处在初始设置状态,用导线连接单次脉冲模块的输出端到CPU 模块的P32;CPU 模块的P10 接八位逻辑电平显示模块的灯。3)连续按动单次脉冲产生电路的按键,发光二极管L0 每按一次状态取反,即隔一次点亮。/* 导线连接单次脉冲模块的输出端到CPU模块的P32, CPU模块的P10接八位逻辑电平显示模块的L0灯。 LED BIT P1.0 LEDBuf BIT

4、 20H org 0 ljmp Start org 3Interrupt0: push PSW ; 保护现场 cpl LEDBuf ; 取反LED mov c, LEDBuf mov LED, c pop PSW ; 恢复现场 retiStart: clr LEDBuf clr LED mov TCON, #01h ; 外部中断0下降沿触发 mov IE, #81h ; 打开外部中断允许位(EX0)及总中断允许位(EA)OK: ljmp OK end全速运行程序, LED灯不亮,按下脉冲输入键 时,每按一次脉冲产生键时,LED灯的状态取反一次。 本实验将TCON置入#01H,选择了外部中断0下

5、降沿触发。又由于P3.2直接与单次脉冲模块的输出端相连,则按下一次单次脉冲产生电路的按键,产生一次外部中断。每产生一次中断,将LEDBuf取反一次,然后将LEDBuf内容放入进位标志位C,再将C内容放入20H,由于20H与LED灯相连,则每次按一下脉冲产生键,LED灯状态取反一次。本次实验,对于外部中断功能的实现有了一定的的认识。通过中断来对LED灯状态的不断取反,加深了对课本上中断这一章的理解层度。外部中断在实际应用中处于十分重要的地位,许多设计中都应用了外部中断。虽然这只是最基本的中断实验,在今后的学习中还会有更深的讲解,但是这却是目前最适合我们自己动手操作的实验,很有帮助。 6实验三 定

6、时/计数器实验2013年11月11日星期一三、 实验目的:学习MCS-51 内部计数器的使用和编程方法。使用MCS-51 内部定时/计数器,定时一秒钟,CPU 运用定时中断方式,实现每一秒钟输出状态发生一次反转,即发光管每隔一秒钟亮一次。1)系统各跳线器处在初始设置状态,用导线连接CPU 模块P10 到八位逻辑电平显示模块的L0。3)运行程序观察发光二极管隔一秒点亮一次,点亮时间为一秒。 导线连接CPU模块P10到八位逻辑电平显示模块的L0. Tick equ 10000 ; 10000 x 100us = 1s T100us equ 156 ; 100us时间常数(6M) C100us eq

7、u 30h ; 100us记数单元 7 LEDBuf bit 20h org 000bhT0Int: push PSW mov a, C100us+1 jnz Goon dec C100usGoon: dec C100us+1 mov a, C100us orl a, C100us+1 jnz Exit ; 100us 记数器不为0, 返回 mov C100us, #27H ; #high(Tick) mov C100us+1, #10H ; #low(Tick) 100us 记数器为0, 重置记数器 Exit: pop PSW mov TMOD, #02h ; 方式2, 定时器 mov TH

8、0, #t100us mov TL0, #t100us mov IE, #b ; EA=1, IT0 = 1 setb TR0 ; 开始定时 clr P1.0#high(Tick)#low(Tick)Loop: mov P1.0, c ljmp Loop 8 八、实验结果:全速运行并按下按钮后,发光二极管点亮,大约1秒后熄灭,又过1秒,再次点亮,之后又熄灭,如此循环下去。这里使用计时器T0进行1s中断然后使led灯1s亮1s灭,但是这里应为T0方式2记不到1s所以用C100us来做标记来使时间满足1s=10000*100us。本次实验让我学会了如何利用定时器定时时间长于该方式下的最大时间。而且

9、这次实验让我明白了等待中断有不只一条语句可以使用。 理论知识毕竟只是纸上谈兵,只有应用到实际操作中,才能收获价值。实验四 交通灯控制实验2013年11月18日星期一掌握十字路口交通灯控制方法。利用系统提供的双色LED 显示电路,和四位静态数码管显示电路模拟十字路口交通信号灯。4 位LED 数码管显示时间,LED 显示红绿灯状态。P10 同时接G1、G3;P11 同时接R1、R3;P1.2 同时接G2、G4;P1.3 同时接R2、R4;P1.6、P1.7 分别接静态数码显示的DIN、CLK。3)观察十字路口交通灯效果。/*接线:P1.0同时接G1、G3,P1.1接R1、R3,P1.2接G2、G4

10、,P1.3同时接R2、R4, P1.6、P1.7接静态数码显示的DIN、CLK。/* 10 SECOND1 EQU 30H ;东西秒寄存器 SECOND2 EQU 31H ;南北秒寄存器 DBUF EQU 40H ;显示缓冲1 TEMP EQU 44H ;显示缓冲2 LED_G1 BIT P1.0 ;东西绿灯 LED_R1 BIT P1.1 ;东西红灯 LED_G2 BIT P1.2 ;南北绿灯 LED_R2 BIT P1.3 ;南北红灯 Din BIT P1.6 ;串行显示数据 CLK BIT P1.7 ;串行显示时钟 ORG 0100H LCALL STATE0 ;调用状态0 LCALL

11、DELAY ;调用延时 MOV TMOD,#01H ;置T0工作方式1 MOV TH0, #3CH ;置T0定时初值50mS MOV TL0, #0B0H SETB TR0 ;启动T0 CLR EALOOP: MOV R2,#20 ;置1S计数初值 50mS*20=1S MOV R3,#20 ;红灯20S MOV SECOND1,#25 ;东西秒显示初值25S MOV SECOND2,#25 ;南北秒显示初值25S LCALL DISPLAY LCALL STATE1 ;调用状态1WAIT1: JNB TF0,WAIT1 ;查询50mS到否 CLR TF0恢复T0定时初值50mS启动T0 DJ

12、NZ R2,WAIT1 ;判1S到否?未到继续状态1置50mS计数初值 10 DEC SECOND1 ;东西秒显示减一 DEC SECOND2 ;南北秒显示减一 DJNZ R3,WAIT1 ;状态1维持20S* MOV R2,#5 ;置50mS计数初值 5*4=20 MOV R3,#3 ;绿灯闪3S MOV R4,#4 ;闪烁间隔200mS MOV SECOND1,#5 ;东西秒显示初值5S MOV SECOND2,#5 ;南北秒显示初值5SWAIT2: LCALL STATE2 ;调用状态2 JNB TF0,WAIT2 ; DJNZ R4,WAIT2 ;判200mS到否?未到继续状态2 CP

13、L LED_G1 ;东西绿灯闪 DJNZ R2,WAIT2 ;置50mS计数初值 DJNZ R3,WAIT2 ;状态2维持3S MOV R3,#2 ;黄灯2S MOV SECOND1,#2 ;东西秒显示初值2S MOV SECOND2,#2 ;南北秒显示初值2SWAIT3: LCALL STATE3 ;调用状态3 JNB TF0,WAIT3 ;查询30mS到否 DJNZ R2,WAIT3 ;未到继续状态3置50mS计数初值 11 DJNZ R3,WAIT3 ;状态3维持2SWAIT4: LCALL STATE4 ;调用状态4 JNB TF0,WAIT4 ; DJNZ R2,WAIT4 ;未到继

14、续状态4 DJNZ R3,WAIT4 ;状态4维持20SWAIT5: LCALL STATE5 ;调用状态5 JNB TF0,WAIT5 ;恢复T0定时初值100mS DJNZ R4,WAIT5 ;未到继续状态5 CPL LED_G2 ;南北绿灯闪闪烁200mS DJNZ R2,WAIT5 ;置100mS计数初值 12 DJNZ R3,WAIT5 ;状态5维持3SWAIT6: LCALL STATE6 ;调用状态6 JNB TF0,WAIT6 ;查询100mS到否 DJNZ R2,WAIT6 ;未到继续状态6置100mS计数初值 DJNZ R3,WAIT6 ;状态6维持2S LJMP LOOP

15、 ;大循环STATE0:状态0 MOV P1,#0 CLR LED_G1 SETB LED_R1 ;东西红灯亮 CLR LED_G2 SETB LED_R2 ;南北红灯亮 RETSTATE1:状态1 SETB LED_G1 ;东西绿灯亮 CLR LED_R1STATE2:状态2 CLR LED_G2 13STATE3:状态3 SETB LED_G1东西黄灯亮STATE4:状态4 SETB LED_G2 ;南北绿灯亮 CLR LED_R2STATE5:状态5STATE6:状态6 SETB LED_G2南北黄灯亮DISPLAY:数码显示 MOV A, SECOND1 ; MOV B, #10 ;1

16、6进制数拆成两个10进制数 DIV AB MOV DBUF+1,A MOV A,B MOV DBUF, A MOV A, SECOND2 ; MOV DBUF+3, A MOV DBUF+2, A MOV R0,#DBUF MOV R1,#TEMP MOV R7,#4DP10: MOV DPTR,#LEDMAP MOV MOVC +DPTR MOV R1,A INC R0 INC R1 DJNZ R7,DP10 MOV R0,#TEMP MOV R1,#4DP12: MOV R7,#8DP13: RLC A MOV DIN,C CLR CLK SETB CLK DJNZ R7,DP13 DJN

17、Z R1,DP12LEDMAP: DB 3FH,6,5BH,4FH,66H,6DH ;0,1,2,3,4,5 DB 7DH,7,7FH,6FH,77H,7CH ;6,7,8,9,A,B DB 58H,5EH,7BH,71H,0,40H ;C,D,E,F, , - mov r5, #5DLoop0:mov r6, #0DLoop1:mov r7, #0DLoop2: NOP djnz r7, DLoop2 djnz r6, DLoop1 djnz r5, DLoop0 ret END全速运行后,东西路口的绿灯亮,南北红灯亮,20秒后东西绿灯闪烁,3秒后熄灭,同时黄灯亮,维持2秒后熄灭,红灯亮,同

18、时南北红灯熄灭,南北绿灯亮,20秒后绿灯闪亮,3秒后熄灭,同时黄灯亮,又过2秒熄灭,同时红灯亮,东西红灯熄灭,东西绿灯亮,如此循环。完成了上述所需的交通灯的要求,而且数码管可以正确的显示所处的时间。九、实验总结:这次实验即交通灯的实验可能是本学期实验中程序最复杂的一个了,但是也是最接近生活的一个实验。通过这次实验我体会到了一个大的程序都需要很多程序结合在一起最后才能完成所需的任务,这里就是把交通灯的每个状态分开然后一个一个编译,而且也用到了数码管显示程序。只有注意每一个小的细节,才能最后综合在一起,形成一个大的复杂的整体,学习也应如此。 实验五 串转并与并转串实验2013年11月25日星期一1掌握使用74LS164 扩展输出方法。2掌握使用74LS165 扩展输入的方法。使用74LS165 扩展输入数据,使用74LS164 扩展输出数据。74LS165 的并行口接八位逻辑电平输出(开关),CPU 使用P1.0、P1.1 和P1.2 串行读入开关状态;74LS164 的并行口接一只数码管,CPU 使用P1.3 和P1.4 串行输出刚读入的开关状态,使之在数码管上显示出来。五、

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

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