找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2892|回复: 4
收起左侧

51单片机控制LED流水效果的汇编例程

[复制链接]
回帖奖励 1 黑币 回复本帖可获得 1 黑币奖励! 每人限 1 次
ID:177900 发表于 2018-11-22 20:45 | 显示全部楼层 |阅读模式
    /*  51单片机汇编语言---控制LED流水效果   /*


/*
    按键功能:
    P3.3没按下,P3.2没按下,查TAB4
    P3.3没按下,P3.2按下  ,查TAB3
    P3.3按下    ,P3.2没按下,查TAB2
    P3.3按下    ,P3.2按下  , 查TAB1
   
    延时计算:
    晶振:22.1184Mhz
    一个机器周期时间为12/22.1184MHz即0.54uS
    计算公式:
*/

        ORG 0000H
        MOV P3,#0FFH     ;JB  满足P3.x=1,就跳转到LOOPx
START:  JB P3.3, LOOP1   ;P3.3没按下,执行LOOP1
        JB P3.2, LOOP2   ;
        MOV DPTR,#TAB1   ;送表首地址
        LCALL FLASH      ;LCALL-长调用,跳转到FLASH
        SJMP START       ;SJMP-转移到START
LOOP2:  MOV DPTR,#TAB2   ;P3.3按下,P3.2没按下,执行LOOP2
        LCALL FLASH
        SJMP START
LOOP1:  JB P3.2, LOOP3   ;P3.3没按下,P3.2没按下,执行LOOP3
        MOV DPTR,#TAB3   ;P3.3没按下,P3.2按下  ,查TAB3
        LCALL FLASH
        SJMP START
LOOP3:  MOV DPTR,#TAB4   ;P3.3没按下,P3.2没按下,执行LOOP3
        LCALL FLASH
        SJMP START
FLASH:  MOV R0,#00H
        MOV R1,#09H       ;FLASH和FLASH1构成for循环,循环八次,对应八个不同状态的灯
FLASH1: MOV A,R0
        MOVC A,@A+DPTR
        MOV P1,A
        LCALL DELAY       ;循环一次延时时间
        INC R0            ;INC   加1操作
        DJNZ R1,FLASH1    ;次数减1不等于0,循环
        RET

//剩下的看附件

仿真.zip

46.46 KB, 下载次数: 20, 下载积分: 黑币 -5

程序.zip

25.89 KB, 下载次数: 16, 下载积分: 黑币 -5

评分

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

查看全部评分

回复

使用道具 举报

ID:293762 发表于 2019-10-13 09:18 | 显示全部楼层
谢谢分享!!!
回复

使用道具 举报

ID:623749 发表于 2019-10-14 13:14 | 显示全部楼层
谢谢了
回复

使用道具 举报

ID:654554 发表于 2019-12-2 19:26 来自手机 | 显示全部楼层
大佬,我的仿真软件和你的不一样。图片显示不了。可以帮帮我吗
回复

使用道具 举报

ID:655665 发表于 2019-12-4 09:03 | 显示全部楼层

谢谢分享!!!
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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