51单片机用计数器中断实现100以内的按键计数,汇编语言程序是怎样的,能帮忙一下么,谢谢啦。。。

51单片机用计数器中断实现100以内的按键计数,汇编语言程序是怎样的,能帮忙一下么,谢谢啦。。。,第1张

ORG 0000H

LJMP MAIN

ORG 0003H

LJMP EXTINT0

ORG 0030H

MAIN:

MOV SP,#5FH ;堆栈顶设为5FH

SETB EA ;开中断

SETB IT0 ;外部中断0沿触发

SETB EX0 ;开外部中断0

MOV 30H,#0 ;计数初值为0

SJMP $ ;死循环

EXTINT0:

INC 30H ;计数器加1

RETI ;中断返回

END

//晶振12M

KEY  BIT  P32   ;按键接P32

LED_bits BIT P31;个位显示控制端

LED_ten  BIT  P30;十位显示控制端

DATA_bits   DATA    30H;个位

DATA_ten    DATA    31H;十位

ORG   00H

LJMP  MAIN

ORG  30H

MAIN: ;主程序

SETB LED_bits

SETB LED_ten

SETB KEY

MOV DATA_bits,#0

MOV DATA_ten,#0

LOOP:

ACALL DISPLAY;显示

ACALL KEY_COUNT;键控

LJMP LOOP

KEY_COUNT:;键控计数

JB KEY, KEY_END

ACALL DELAY10MS

JNB  KEY,$

ACALL COUNT

KEY_END:

RET

COUNT:  ;计数

INC DATA_bits

MOV A,DATA_bits

CJNE A,#10,COUNT_END

MOV DATA_bits,#0

INC DATA_ten

MOV A,DATA_ten

CJNE A,#10,COUNT_END

MOV DATA_ten,#0

COUNT_END:

RET

DISPLAY: ;显示

MOV A,DATA_bits

MOV DPTR,#LEDSHOW

MOVC A,@A+DPTR

MOV P2,A

CLR LED_bits

ACALL DELAY1MS

SETB LED_bits

MOV A,DATA_ten

MOV DPTR,#LEDSHOW

MOVC A,@A+DPTR

MOV P2,A

CLR LED_ten

ACALL DELAY1MS

SETB LED_ten

RET

DELAY10MS:   ;误差 0us

MOV R7,#01H

DL1:

MOV R6,#26H

DL0:

MOV R5,#82H

DJNZ R5,$

DJNZ R6,DL0

DJNZ R7,DL1

RET

DELAY1MS:   ;误差 0us

MOV R7,#01H

DL3:

MOV R6,#8EH

DL2:

MOV R5,#02H

DJNZ R5,$

DJNZ R6,DL2

DJNZ R7,DL3

RET

LEDSHOW:

DB        03FH;0

DB        006H;1

DB        05BH;2

DB        04FH;3

DB        066H;4

DB        06DH;5

DB        07DH;6

DB        007H;7

DB        07FH;8

DB        06FH;9

END

在按键按下后,用循环语句,等待抬起计数

if(按键按下)

{

    延时;

    if(按键按下)

    {

        while(按键没有松开); //如果按键没有松开,程序会停在这里

        count++; //按键松开后,程序会运行到这里,计数值加1

    }

}

以上就是关于51单片机用计数器中断实现100以内的按键计数,汇编语言程序是怎样的,能帮忙一下么,谢谢啦。。。全部的内容,包括:51单片机用计数器中断实现100以内的按键计数,汇编语言程序是怎样的,能帮忙一下么,谢谢啦。。。、汇编语言编程,一个按键,一个2位数码管,实现按键计数显示在数码管上。、51单片机 按键按下去 计数一次 程序应该怎么写等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9444091.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存