 
					
				②闪烁灯(实现P1口八个 LED闪烁)
相关代码
void Main(void)
{
 P1 = 0xff;
 P2 = 0x00;
 P0 = 0x00;                            //P1打开,P0 .P2口关闭;
 while(1)
 {
  /*下面四行用于控制LED每隔一个亮*/
  P1 = 0xaa;   
  Delay(50);
  P1 = 0x55;  
  Delay(50);
  /*下面四行用于控制LED每隔一个亮*/
  P1 = 0xcc;
  Delay(50);
  P1 = 0x33;
  Delay(50);
  /*下面四行用于控制LED 高四位 或者 低四位亮*/
  P1 = 0x0f;
  Delay(50);
  P1 = 0xf0;
  Delay(50);
  /*下面八行用于控制LED的两次全亮 全灭*/
  P1 = 0x00;
  Delay(25);
  P1 = 0xff;
  Delay(25);
  P1 = 0x00;
  Delay(25);
  P1 = 0xff;
  Delay(25);
  Delay(200);  //延时两秒
 }
}
视频上传了结果转码失败~~~~

 
					
				 
					
				③八位跑马灯(采用了寄存器存中间数)
                 org  0000h
                 ajmp start
                 org 0030h
start:
                mov a,#0ffh ;
                   clr c  ;
                 mov r2,#08h ;循环八次。
loop: rlc a  ;带进位左移。
               mov p1,a ;输出到P1口。
               call delay ;延时一段时间
              djnz r2,loop ;反复循环
               mov r2,#07h ;再往回循环。
loop1: rrc a  ;带进位右移
              mov p1,a ;输出到P1口。
               call delay ;延时一段时间
             djnz r2,loop1 ;反复循环
              jmp start ;重新开始
delay: mov r3,#20 ;延时子程序
            d1: mov r4,#20
            d2: mov r5,#248
                  djnz r5,$
                  djnz r4,d2
                  djnz r3,d1
                     ret
                     end
回复
| 有奖活动 | |
|---|---|
| 硬核工程师专属补给计划——填盲盒 | |
| “我踩过的那些坑”主题活动——第002期 | |
| 【EEPW电子工程师创研计划】技术变现通道已开启~ | |
| 发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
| 【EEPW在线】E起听工程师的声音! | |
| 高校联络员开始招募啦!有惊喜!! | |
| 【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
| 送您一块开发板,2025年“我要开发板活动”又开始了! | |

 
			
			
			
						
			 
					
				 
										 我要赚赏金
 我要赚赏金 STM32
STM32 MCU
MCU 通讯及无线技术
通讯及无线技术 物联网技术
物联网技术 电子DIY
电子DIY 板卡试用
板卡试用 基础知识
基础知识 软件与操作系统
软件与操作系统 我爱生活
我爱生活 小e食堂
小e食堂

