好文档 - 专业文书写作范文服务资料分享网站

单片机汇编语言经典一百例

天下 分享 时间: 加入收藏 我要投稿 点赞

SETB ET1 ;开定时器1允许 LOOP: AJMP LOOP ;无限循环 DIN0: CPL P1.0 ;产生一个高电平,

下次来就是低电平(因为取反),一个高电平和一个低电平形成一个周期

MOV TH1,#0F6H

MOV TL1,#3BH ;重置频率产生时间 RETI ;返回 END

5.4 200——250HZ变化频率输出

程序介绍:利用定时器定时时间的变化,由P1.0 口 产生200——250HZ变化的频率。实际应用例如:传感器 前级推动、频率发生器。 程序实例(F250.ASM): ORG 0000H AJMP MAIN ORG 001BH AJMP DIN1 MAIN:

;定义频率200和300////////////////////////////////// F2H EQU 30H F2L EQU 31H F3H EQU 32H

F3L EQU 33H 14

;////////////////////////////////////////////////// ;定义频率保持初值////////////////////////////////// MOV R1,#50 MOV R2,#02H

;//////////////////////////////////////////////////

;

//////////////////////////////////////// MOV F2H,#0F6H MOV F2L,#3BH MOV F3H,#0F8H MOV F3L,#2FH

;////////////////////////////////////////////////// CLR P1.0 ;在P1.0口产生一个低 电平,一个脉冲是由一个高电平和一个低电平组成的 MOV TMOD,#00010000B ;定时器工作于方式1 MOV TH1,F2H

MOV TL1,F2L ;200HZ输出 SETB EA ;开总中断 SETB TR1 ;开定时器1运行 SETB ET1 ;开定时器1允许 LOOP: AJMP LOOP DIN1:

CPL P1.0 ;取反P1.0口,实际

是为了不断的将p1.0的电平关系转换,即产生了频率

;频率保持时间////////////////////////////////////// DJNZ R1,RE MOV R1,#50 DJNZ R2,RE MOV R2,#02H 15

;////////////////////////////////////////////////// MOV A,F2H CJNE A,F3H,XIA ;频率高位到300HZ 的高位了吗?

AJMP JIA ;频率高位没到

300HZ的高位值,直接将低位值加1 XIA: INC F2L MOV A,F2L CJNE A,#00H,RE INC F2H MOV A,F2H CJNE A,F3H,RE

;/////////////////////////////////////////////

;频率高位加到300HZ的高位值了,低位加一,到300HZ的低位值了吗,没到出去,到了关定时器 JIA:

INC F2L ;到了将200HZ频率的低位加1 MOV A,F2L

CJNE A,#F3L,RE CLR TR1

;///////////////////////////////////////////// RE:

MOV TH1,F2H MOV TL1,F2L RETI END 16 六、数显 0——9999显示

程序介绍:利用S51的串行口功能,实现数码管0— —9999 的循环显示。实际应用例如:电子计分牌。 程序实例(9999.ASM): ORG 0000H MAIN: GEE EQU 30H SHI EQU 31H BEI EQU 32H

QIAN EQU 33H ;定义个十百千 MOV GEE,#00H MOV SHI,#00H

MOV BEI,#00H

MOV QIAN,#00H ;赋初值

MOV SCON,#00H ;串行口工作于方式 0.同步移位

;显示个,十,百,千////////////////////////////////// DISPLAY: ACALL DELAY ;延时 MOV DPTR,#SETTAB MOV A,GEE

MOVC A,@A+DPTR MOV SBUF,A D1: JNB TI,D1 17 CLR TI

MOV DPTR,#SETTAB MOV A,SHI MOVC A,@A+DPTR MOV SBUF,A D2: JNB TI,D2 CLR TI

MOV DPTR,#SETTAB MOV A,BEI MOVC A,@A+DPTR MOV SBUF,A D3: JNB TI,D3 CLR TI

MOV DPTR,#SETTAB MOV A,QIAN MOVC A,@A+DPTR MOV SBUF,A D4: JNB TI,D4 CLR TI

单片机汇编语言经典一百例

SETBET1;开定时器1允许LOOP:AJMPLOOP;无限循环DIN0:CPLP1.0;产生一个高电平,下次来就是低电平(因为取反),一个高电平和一个低电平形成一个周期MOVTH1,#0F6HMOVTL1,#3BH;重置频率产生时间RETI;返回END5.4200——250HZ变化频率输出
推荐度:
点击下载文档文档为doc格式
7r6j465dop423gj8gje700kc5204u900kg2
领取福利

微信扫码领取福利

微信扫码分享