为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

C-51单片机实验汇编语言程序

2017-10-22 7页 doc 19KB 20阅读

用户头像

is_531654

暂无简介

举报
C-51单片机实验汇编语言程序C-51单片机实验汇编语言程序 (1):A/D转换 ORG 0000H MOV R1,#30H MOV DPTR,#0F7F8H ;DPTR指向#F7FAH通道 MOVX @DPTR,A ;启动A/D转换 MOV R2,#20H DLY:DJNZ R2,DLY ;若R2-1不等于0,等待 HF:JNB P1.0,HF ;等待转换结束 MOVX A,@DPTR ;读取A/D转换数据 MOV @R1,A ;存储数据到30H HD:SJMP HD ;等待 END (2)交通灯 ORG 0000H LJMP MAIN ...
C-51单片机实验汇编语言程序
C-51单片机实验汇编语言程序 (1):A/D转换 ORG 0000H MOV R1,#30H MOV DPTR,#0F7F8H ;DPTR指向#F7FAH通道 MOVX @DPTR,A ;启动A/D转换 MOV R2,#20H DLY:DJNZ R2,DLY ;若R2-1不等于0,等待 HF:JNB P1.0,HF ;等待转换结束 MOVX A,@DPTR ;读取A/D转换数据 MOV @R1,A ;存储数据到30H HD:SJMP HD ;等待 END (2)交通灯 ORG 0000H LJMP MAIN ORG 0003H LJMP INT0 ORG 000BH LJMP TIME ORG 0013H LJMP INT1 ORG 0100H MAIN:MOV TMOD,#01H ;初始化 MOV TH0,#3CH MOV TL0,#0B0H SETB EA SETB EX0 SETB EX1 SETB ET0 SETB IT0 SETB IT1 CLR P0.1 MOV R7,#20 SETB TR0 LOOP:MOV A,#21H CPL A MOV P1,A ;A绿B红 MOV R6 ,#10 LOOP1:JNB P0.1,LOOP1 CLR P0.1 DJNZ R6,LOOP1 ;判断10S定时到否 CLR TR0 ACALL SHAN1 ;调用A黄闪B红子程序 SETB TR0 MOV A,#0CH CPL A MOV P1,A ;A红B绿 MOV R6,#10 LOOP3:JNB P0.1,LOOP3 CLR P0.1 DJNZ R6,LOOP3 CLR TR0 ACALL SHAN2 ;调用B黄闪A红子程序 SETB TR0 AJMP LOOP SHAN1:MOV R5,#3 LOOP4:MOV A,#11H CPL A MOV P1,A ;A黄亮 ACALL TIME1 MOV A,#01H CPL A MOV P1,A ;A黄灭 ACALL TIME1 DJNZ R5,LOOP4 ;闪3次返回 RET (3)锯齿波 ORG 0000H START: MOV DPTR,#7FFFH ;输入寄存器地址 CLR A ;转换初值 LOOP:MOVX @DPTR,A ;D/A转换 INC A ;转换值增量 SJMP LOOP END (4)三角波 ORG 0000H MOV DPTR,#7FFFH ;输入寄存器地址 CLR A ;转换初值 DOWN:MOVX @DPTR,A ;D/A转换线性下降段 INC A ;转换值加1 CJNE A,#0FFH,DOWN UP:MOVX @DPTR,A ;D/A转换线性上升段 DEC A ;转换值减1 CJNE A,#00H,UP AJMP DOWN END (5)梯形波 ORG 0000H MOV DPTR,#7FFFH ;输入寄存器地址 MOV A,#0H ;赋初值 LL0:MOVX @DPTR,A ;D/A转换 INC A ;转换值加1 CJNE A,#0FAH,LL0 ACALL DELAY ;调用延时 LL1:MOVX @DPTR,A ;D/A转换 DEC A ;转换值减1 CJNE A,#05H,LL1 ACALL DELAY ;调用延时 AJMP LL0 DELAY:MOV R0,#05H ;延时子程序 DL0:MOV R1,#7FH DL1:DJNZ R1,DL1 DJNZ R0,DL0 RET END (6)外部中断 ORG 0000H LJMP MAIN ORG 0003H LJMP EX0_INT ORG 000BH LJMP TIMER0 MAIN: MOV SP,#30H MOV 20H,#00H MOV 21H,#00H MOV 23H,#0FEH ACALL INIT SJMP $ INIT: MOV TMOD,#01H MOV TH0,#00H MOV TL0,#00H SETB PT0 SETB IT0 SETB EX0 SETB ET0 SETB EA SETB TR0 RET TIMER0: INC 21H MOV TH0,#00H MOV TL0,#00H RETI EX0_INT: MOV A,21H INC A LOOP: CJNE A,21H,LOOP MOV C,P3.2 JC FLAG MOV A,23H MOV P1,A RL A MOV 23H,A INC 20H FLAG: RETI (7)钻孔头控制 ORG 0000H LJMP MAIN ORG 00BH LJMP TI0 ORG 0800H MAIN:MOV TMOD,#01H MOV TH0,#3CH MOV TL0,#0B0H MOV R2,#10H SETB EA SETB ET0 START:MOV P1,#0FFH MOV A,P1 ANL A,#3 CJNE A,#00,START;屏蔽高6位,保低2位 CLR P1.4 ;进入快进状态 ,等待 ST0: JB P1.2,ST0 ;X1未按下 CLR P1.5 ;进入工进 ST1:JB P1.3,ST1 ;X2未按下,等待 MOV R7,#10 DL1:MOV R6,#200 DL2:MOV R5,#250 DL3:DJNZ R5,DL3 DJNZ R6,DL2 DJNZ R7,DL1 SETB P1.4 ;进入快退 SETB P1.5 CLR P1.6 ;打开后退电磁阀 JB P1.1,$ ;未到达原位,等待 SETB P1.6 SJMP START TI0:DJNZ R2,EXIT CLR 20H MOV R2,#10 CLR TR0 EXIT:MOV TH0,#3CH MOV TL0,#0B0H RETI
/
本文档为【C-51单片机实验汇编语言程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索