完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
0.ASM0_LED_Flash:LED闪烁,3种方式
汇编代码: /** ****************************************************************************** * @file main.asm * @author Alex——小白 * @version V1.0 * @date 2019.9.1 * @brief 3种方法LED Flash 共阳极 * @store Proteus仿真店子 * @Link https://shop484534014.taobao.com/ * @Email 844545015@qq.com ****************************************************************************** * @attention All Rights Reserved **/ ORG 0000H ;程序执行的起始地址 LJMP Main ;跳转到main函数 ORG 0100H ;程序跳转到0100H开始执行 ;方法1: Main: ;最简单的LED闪烁 MOV P1,#0FEH ;11111110 LCALL Delay ;调用延时函数 MOV P1,#0FDH ;11111101 LCALL Delay ;调用延时函数 MOV P1,#0FBH ;11111011 LCALL Delay ;调用延时函数 MOV P1,#0F7H ;11110111 LCALL Delay ;调用延时函数 MOV P1,#0EFH ;11101111 LCALL Delay ;调用延时函数 MOV P1,#0DFH ;11011111 LCALL Delay ;调用延时函数 MOV P1,#0BFH ;10111111 LCALL Delay ;调用延时函数 MOV P1,#07FH ;01111111 LCALL Delay ;调用延时函数 SJMP Main ;跳转到main,死循环 ;方法2: ;通过数组的遍历取值来流水 ;方法3: ;通过左移流水灯,RR是右移 Delay: ;t=t1*8=1s,修改R5的值即可更改时间(不精准) MOV R5, #08H ;单周期,8次 D1: ;t1=t2*250=500*250=125000 MOV R6, #0FAH D2: MOV R7, #0FAH ;t2=250*2=500 D3: DJNZ R7, D3 ;R7=250自减,直到为0跳出循环,双周期 DJNZ R6, D2 ;R6=250自减,直到为0跳出循环,双周期 DJNZ R5, D1 ;R5=100自减,直到为0跳出循环,双周期 RET LED_table: DB 0FEH, 0FDH, 0FBH, 0F7H, 0EFH, 0DFH, 0BFH, 07FH END |
|
|
|
只有小组成员才能发言,加入小组>>
2549 浏览 0 评论
1152浏览 2评论
750浏览 1评论
503浏览 0评论
269浏览 0评论
432浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 00:42 , Processed in 1.665346 second(s), Total 78, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号