单片机实验文档.doc_第1页
单片机实验文档.doc_第2页
单片机实验文档.doc_第3页
单片机实验文档.doc_第4页
单片机实验文档.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验一 清零程序一、实验目的掌握汇编语言设计和调试方法,熟悉键盘操作。二、实验内容把2000H20FFH的内容清零三、程序框图四、实验步骤 以0640H为起始地址用连续或单步方式运行程序,检查2000H20FFH中执行程序前后的内容变化。五、思考假使把2000H20FFH中的内容改成FFh,如何修改程序。六、参考程序ORG 0640HSE01: MOV R0,#00H MOV DPTR,#2000H ;(2000H)送DPTR MOV A ,#00HLOO1: MOVX DPTR,A ;0送(DPTR) INC DPTR ;DPTR+1 INC R0 ;字节数加1 CJNE R0,#FFH,LOO1 ;不到FF个字节再清 SJMP $ END实验二 P1口转弯灯实验一、实验目的进一步了解P1口的使用,学习汇编语言编程方法与调试技巧。二、实验内容P1.0开关接5V时,右转弯灯闪亮,P1.1开关接5V时左转弯灯闪亮, P1.0、P1.1开关同时接5V或接地时,转弯灯均不闪亮。三、程序框图四、实验步骤 P1.0接K1 P1.1接K2 P1.4P1.7接L1 L5 L9 L13连续运行本程序,应看到转弯灯正确闪亮,在用单步方式调试本程序时需修改延时子程序(例可把延时程序第一个字节改成返回指令22H),以便观察。五、实验电路六、参考程序ORG 0640HSE01: MOV R0,#00H MOV DPTR,#2000H ;(2000H)送DPTRLOO1: MOVX DPTR,A ;0送(DPTR) INC DPTR ;DPTR+1 INC R0 ;字节数加1 CJNE R0,#00H,LOO1 ;不到FF个字节再清 SJMP $ ENDORG 0C30HPX00: MOV P1,#0FFH ;初始化PX03: MOV A,P1 MOV B,A ANL A,#03H CJNE A,#01H,PX01 ;满足只是P1.0为高条件吗? JB 00H,PX04 ;闪烁标志位 CLR P1.4 CLR P1.5 ;开右灯 SETB P1.6 SETB P1.7 ;关左灯 MOV R2,#20H LCALL DELY ;延时 SETB 00H ;置标志位 LJMP PX03 ;继续查状态PX04: SETB P1.4 SETB P1.5 SETB P1.6 ;关灯 SETB P1.7 MOV R2,#20H LCALL DELY ;延时 CLR 00H ;清标志位 AJMP PX03 ;继续查状态PX01: CJNE A,#02H,PX02 ;满足只是P1.1为高条件吗? JB 01H,PX05 ;判标志位 SETB P1.4 SETB P1.5 ;开左灯 CLR P1.6 CLR P1.7 ;关右灯 MOV R2,#20H ;延时 LCALL DELY SETB 01H ;置标志位 LJMP PX03 ;继续查状态PX05: SETB P1.4 SETB P1.5 SETB P1.6 ;关灯 SETB P1.7 MOV R2,#20H LCALL DELY ;延时 CLR 01H ;清标志位 LJMP PX03 ;继续查状态PX02: SETB P1.4 SETB P1.5 SETB P1.6 ;关灯 SETB P1.7 LJMP PX03 ;继续;-DELY: PUSH 02HDEL2: PUSH 02HDEL3: PUSH 02H ;延时DEL4: DJNZ R2,DEL4 POP 02H DJNZ R2,DEL3 POP 02H DJNZ R2,DEL2 POP 02H DJNZ R2,DELY RET;- END实验三 工业顺序控制(中断控制)一、实验目的掌握工业顺序控制程序的简单编程:中断的使用。二、实验预备知识在工业控制中,象冲压、注塑、轻纺、制瓶等生产过程,都是一些继续生产过程,按某种顺序有规律地完成预定的动作,对这类继续生产过程的控制称顺序控制,倒注塑机工艺过程大致按“合模注射延时开模产伸产退”顺序动作,用单片机最易实现。三、实验内容8032 P1.0P1.6控制注塑机的七道工序,现模拟控制七只发光二极管的点亮,低电平有效,设定每道工序时间转换为延时,P3.4为开工启动开关,高电平启动。P3.3为外部故 障输入模拟开关,低电平报警,P1.7为报警声音输出,设定6道工序只有一位输出,第七道工序三位有输出。四、程序框图四、实验步骤 P3.4连K1,P3.3连K2,P1.0P1.6分别连到L1L7,P1.7连SIN(电子音响输入端)。K1、K2开关拨在高电平“H”位置。用连续方式从起始地址0580H开始运行程序,此时应在等待开工状态。K1拨至低电平“L”位置,各道工序应正常运行。K2拨至低电平“L”位置,应有声音报警(人为设置故障)。K2拨至高电平“H”位置,即排除故障,程序应从报警的那道工序继续执行。五、实验电路五、思考修改程序,使每道工序中有多位输出。六、参考程序ORG 0000H LJMP PO10 ORG 0013H LJMP PO16;- ORG 0190HPO10: MOV P1,#7FH ORL P3,#00HPO11: JNB P3.4,PO11 ;开工吗? ORL IE,#84H ORL IP,#01H MOV PSW,#00H ;初始化 MOV SP,#53HPO12: MOV P1,#7EH ;第一道工序 ACALL PO1B MOV P1,#7DH ;第二道工序 ACALL PO1B MOV P1,#7BH ;第三道工序 ACALL PO1B MOV P1,#77H ;第四道工序 ACALL PO1B MOV P1,#6FH ;第五道工序 ACALL PO1B MOV P1,#5FH ;第六道工序 ACALL PO1B MOV P1,#0FH ;第七道工序 ACALL PO1B SJMP PO12;-PO16: MOV B,R2 ;保护现场PO17: MOV P1,#7FH ;关输出 MOV 20H,#0A0H ;振荡次数PO18: SETB P1.7 ;振荡 ACALL PO1A ;延时 CLR P1.7 ;停振 ACALL PO1A ;延时 DJNZ 20H,PO18 ;不为0转 CLR P1.7 ACALL PO1A ;停振 JNB P3.3,PO17 ;故障消除吗? MOV R2,B ;恢复现场 RETIPO1A: MOV R2,#06H ACALL DELY ;延时 RETPO1B: MOV R2,#30H ACALL DELY ;延时 RET;-DELY: PUSH 02HDEL2: PUSH 02HDEL3: PUSH 02H ;延时DEL4: DJNZ R2,DEL4 POP 02H DJNZ R2,DEL3 POP 02H DJNZ R2,DEL2 POP 02H DJNZ R2,DELY RET END实验四 电脑时钟(定时器、中断综合实验)一、实验目的熟悉MCS-51定时器,串行口和中断初始化编程方法,了解定时器的应用实时程序的设计与调试技巧。二、实验内容编写程序,从本实验系统键盘上输入时间初值,用定时器产生0.1S定时中断,对时钟计数器计数,并将数值实时地送数码管显示。三、程序框图四、实验步骤 以0030H为起始地址连续运行程序,在键盘上输入时间初值,按执行键EXEC执行,数码管上实时显示时间值。五、思考电子钟走时精度和程序中那些常数有关? 修改程序使定时器工作方式改变,调节有关参数,进一步提高精度。六、参考程序ORG 0000H SJMP CHK00 ORG 000BH LJMP CLOCK;INT_T0 ORG 0030HCHK00: MOV SP,#60H LCALL LEDPCHK0: LCALL LCK0 ;键扫,显示子程序 LCALL PTDS0 ;显示缓冲区放数子程序 MOV TMOD,#01H ORL IE,#82H MOV TL0,#0B7H MOV TH0,#3CH ;定时中断初始化 MOV 23H,#00H SETB TR0 ;开定时LOO5: LCALL DIS;SSEE ;显示 LCALL PTDS0 SJMP LOO5PTDS0: MOV R0,#79H MOV A,22H ACALL PTDS MOV A,21H ACALL PTDS MOV A,20H ACALL PTDS RET;-PTDS: MOV R1,A ;拆送显示缓冲区 ACALL PTDS1 MOV A,R1 SWAP APTDS1: ANL A,#0FH MOV R0,A INC R0 RET;-CLOCK: MOV TL0,#0B7H MOV TH0,#3CH ;恢复初值 PUSH PSW PUSH ACC SETB 0D3H ;保护 INC 23H ;0.1秒加1 MOV A,23H CJNE A,#0AH,DONE ;1秒到吗? MOV 23H,#00H ;清0.1秒单元 MOV A,22H INC A ;秒加1 DA A MOV 22H,A ;十进制调整 CJNE A,#60H,DONE ;60秒到吗? MOV 22H,#00H ;秒单元清零 MOV A,21H INC A DA A ;分加1.十进制调整 MOV 21H,A CJNE A,#60H,DONE ;60分到吗? MOV 21H,#00H ;分单元清零 MOV A,20H INC A DA A ;时加1.十进制调整 MOV 20H,A CJNE A,#24H,DONE ;24小时到吗? MOV 20H,#00H ;时单元清零DONE: POP ACC ;退栈 POP PSW RETI;-SSEE: SETB RS1 ;换工作区 MOV R5,#05HSSE2: MOV 30H,#20H MOV 31H,#7EH MOV R7,#06HSSE1: MOV R1,#0DDH MOV A,30H MOVX R1,A ;字位送入 MOV R0,31H MOV A,R0 MOV DPTR,#DDFF MOVC A,A+DPTR ;取字形代码 MOV R1,#0DCH MOVX R1,A ;字形送入 MOV A,30H ;右移 RR A MOV 30H,A DEC 31H MOV A,#0FFH MOVX R1,A ;关显示 DJNZ R7,SSE1 ;6位显示完了吗? DJNZ R5,SSE2 ;5次显示完了吗? CLR RS1 RET;-DDFF: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H DB 88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,0DEH;-X3: MOV R4,A MOV R0,#50H MOV A,R0 MOV R1,A MOV A,R4 MOV R1,A CLR A POP DPH POP DPL MOVC A,A+DPTR INC DPTR CJNE A,01H,X30 dec r1 clr a MOVC A,A+DPTRX31: MOV R0,A INC DPTR PUSH DPL PUSH DPH RETX30: DEC R1 MOV A,R1 SJMP X31;-X2: MOV R6,#50HX0: ACALL XLE JNB ACC.5,XX0 DJNZ R6,X0 MOV R6,#20H MOV R0,#50H MOV A,R0 MOV R0,A MOV A,R0 MOV R7,A MOV A,#10H MOV R0,AX1: ACALL XLE JNB ACC.5,XX1 DJNZ R6,X1 MOV A,R7 MOV R0,A SJMP X2XX1: MOV R6,A MOV A,R7 MOV R0,A MOV A,R6XX0: RET;-XLE: ACALL DIS ACALL KEY MOV R4,A MOV R1,#48H MOV A,R1 MOV R2,A INC R1 MOV A,R1 MOV R3,A MOV A,R4 XRL A,R3 MOV R3,04H MOV R4,02H JZ X10 MOV R2,#88H MOV R4,#88HX10: DEC R4 MOV A,R4 XRL A,#82H JZ X11 MOV A,R4 XRL A,#0EH JZ X11 MOV A,R4 JZ X12 MOV R4,#20H DEC R2 SJMP X13X12: MOV R4,#0FHX11: MOV R2,04H NOP NOP MOV R4,03HX13: MOV R1,#48H MOV A,R2 MOV R1,A INC R1 MOV A,R3 MOV R1,A MOV A,R4 JB ACC.5,X113 JB ACC.4,X113 MOV DPTR,#LS3 MOVC A,A+DPTRX113: RET;-LS3: DB 07H,04H,08H,05H,09H,06H,0AH DB 0BH,01H,00H,02H,0FH,03H,0EH DB 0CH,0DH;-DIS: PUSH DPH PUSH DPL SETB RS1 MOV R0,#7EH MOV R2,#20H MOV R3,#00H MOV DPTR,#LS0LS2: MOV A,R0 MOVC A,A+DPTR MOV R1,#0DCH MOVX R1,A MOV A,R2 inc R1 MOVX R1,ALS1: DJNZ R3,LS1 CLR C RRC A MOV R2,A DEC R0 JNZ LS2 movx r0,a dec r0 cpl a movx r0,a CLR RS1 POP DPL POP DPH RET;-LS0: DB 0C0H,0F9H,0A4H,0B0H,99H,92H DB 82H,0F8H,80H,90H,88H,83H,0C6H DB 0A1H,86H,8EH,0FFH,0CH,89H,7FH,0BFH;-KEY: SETB RS1 MOV R2,#0FEH MOV R3,#08H MOV R0,#00HLP1: MOV R1,#0DDH MOV A,R2 MOVX R1,A RL A MOV R2,A inc r1 MOVX A,R1 CPL A ANL A,#0FH JNZ LP0 INC R0 DJNZ R3,LP1XP33: MOV A,#20HXP3: mov r2,a clr a mov r1,#0ddh movx r1,a mov a,r2 CLR RS1 RET;-LP0: CPL A JB ACC.0,XP0 MOV A,#00H SJMP LPPXP0: JB ACC.1,XP1 MOV A,#08H SJMP L

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论