单片机
返回首页

用51单片机汇编语言,编写“键控加减一”的程序

2018-05-08 来源:eefocus

程序要求:开始时LED显示0、K1具有增数功能、K2具有减数功能。
若LED显示为0,按下K1,则显示为1、再按下K1,显示为2.....,若显示为9,再按下则显示为0;
若LED显示为0,按下K2,则显示为9、再按下K2,显示为8.....,直至显示为1。再一次循环。
显示部分采用硬件译码器,电路给出如下。
悬赏分:50 | 解决时间:2011-6-14 09:11
;===========================================
最佳答案:

程序仿真通过,仿真电路如下:用51单片机汇编语言,编写“键控加减一”的程序 - 非著名博主 - 电子信息角落

程序:
      ORG   0000H
      LJMP  START
      ORG   0040H      ;从40H地址开始.
START:
      MOV   A, #0      ;开始显示的初值.
      SETB  P2.0       ;开始置0,
      SETB  P2.1       ;开始置0,
;------------------------
LOOP:
      MOV   P0, A      ;显示寄存器A中的内容.
      JNB   P2.0, INCR ;K1开,跳转到INCR
      JNB   P2.1, DECR ;K2开,跳转到DECR
      JMP   LOOP 
;------------------------
INCR:
      JNB   P2.0,INCR  ;按键按下后是否松开.
      ADD   A,  #1     ;A加1
      DA    A          ;A内容进行BCD调整.
      JMP   LOOP
;------------------------
DECR:
      JNB   P2.1, DECR ;按键按下后是否松开.
      ADD   A,  #99H   ;A减1
      DA    A          ;A内容进行BCD调整.
      JMP   LOOP
;------------------------
      END


进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • 基于IC555的可变PWM振荡器电路

  • 优化电路板布局的简单方法

  • 如何使用LED驱动器LM3915制作振动计

  • 分享一个电网倾角计电路

  • 电谐波图形均衡器示意图

  • 一种构建12V和230V双直流电源的简单方法

    相关电子头条文章