找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2376|回复: 0
打印 上一主题 下一主题
收起左侧

led灯以随机次数闪烁 单片机汇编语言程序

[复制链接]
跳转到指定楼层
楼主
ID:591025 发表于 2019-7-27 09:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
8盏led灯以随机数点亮

单片机源程序如下:
  1. ;===============================================================================
  2. ;                   Key-LED
  3. ;                   AT89C2051,12Mhz,1 Key,1 LED
  4. ;===============================================================================
  5. KeyPort             Bit    P3.0                   ;0:Pressed
  6. LEDPort             EQU   P1
  7. ;===============================================================================
  8. ;===============================================================================
  9. ;===============================================================================
  10.                     Org    0000H
  11.                     AJmp   Main
  12. ;===============================================================================
  13. Delay:              Mov    R6,#0
  14. Delay1:             Mov    R7,#0
  15.                     Djnz   R7,$
  16.                     Djnz   R6,Delay1
  17.                     Ret
  18. ;-------------------------------------------------------------------------------
  19. FlashLED:           
  20.                                         
  21.                             mov    LedPort,B
  22.                     
  23.                             ;Clr    LEDPort                ;Light up
  24.                     ACall  Delay
  25.                     
  26.                             Mov    A,B
  27.                             Cpl    A
  28.                             mov    LedPort,A
  29.                     
  30.                             ;Setb   LEDPort                ;Dark
  31.                     ACall  Delay
  32.                     Ret
  33. ;===============================================================================
  34. Main:               Mov    Sp,#07H

  35.                     Mov    A,#1

  36. ;                    Mov    LedPort,#00000001b
  37. ;                             Mov    A,LedPort
  38. ;-------------------------------------------------------------------------------
  39. MainLoop:           Jb     KeyPort,loop
  40.                     Acall  Delay
  41.                             Inc    A                      ;add the number of lighting
  42.                     Acall  Delay
  43.                     ;Acall  Delay
  44.                             ;Acall  Delay
  45.                     
  46.                     CJNE   A,#15,Mainloop
  47. ;                    Acall  Delay
  48.                     
  49.                             clr    A
  50.                             sjmp   Mainloop
  51.                     
  52. loop:               ;Jb     KeyPort,MainLoop       ;No Key, Wait
  53.                     
  54.                     Mov    R5,A
  55.                     
  56.                             Mov    B,A
  57.                             Mov    A,LedPort
  58.                             Clr    A

  59.                     
  60. L:                  ACall  FlashLED
  61.                     Djnz   R5,L

  62.                     Jb    KeyPort,$
  63.                     SJmp   MainLoop
  64. ;===============================================================================
  65.                     End
复制代码

所有资料51hei提供下载:
拓展.zip (57.4 KB, 下载次数: 4)


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表