stepctrol.s

来自「440B 环境ADS 1.2包括很多实验代码」· S 代码 · 共 30 行

S
30
字号
       AREA  STEP,CODE,READONLY
       EXPORT STEPCTROL                              
STEPCTROL 
                               
START  MOV R0,#0
       ADR R2,TABLE         ;将表头地址存到R2中
loop   LDR R5,=0x0a000000   ;bank5
       LDRB R1,[R2],#1		;注意这里是先将R2中的数据(一个字节)送入R1后R2的地址再加1
       STRB R1,[R5]         ;将R1中的数据送入R5中的数据所表示的地址中
         
       MOV R1,#0            ;从本句开始到DELAYOVER为两极循环嵌套延时
REPEAT ADD R1,R1,#1			;将R1中的值加1再送入R1中
       CMP R1,#400          ;[R1]和400比较
       BNE NEXT1            ;如果上面的比较结果是不等则跳转
       B   DELAYOVER          
NEXT1  MOV R3,#0  
NEXT2  ADD R3,R3,#1
       CMP R3,#40           ;将R3中的数据和40进行比较,不等则
       BNE NEXT2			;跳转
       B   REPEAT           
DELAYOVER  

       ADD R0,R0,#1         ;控制循环八次  
       CMP R0,#8
       BNE   loop
       B   START
   
TABLE   
       DCB 0x10,0x30,0x20,0x60,0x40,0xc0,0x80,0x90
       END

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?