ARM32day4

1.思维导图

2.实现三个LED灯亮灭


.text 
.global _start
_start: 


 @使能GPIO外设时钟 
LDR R0,=0x50000A28
LDR R1,[R0]
 @使能GPIOE  
ORR R1,R1,#(0X1<<4)
 @使能GPIOF  
ORR R1,R1,#(0X1<<5)
STR R1,[R0]

@设置引脚状态
LDR R0,=0X50006000
LDR R1,[R0]
@设置PE10为输出
BIC R1,R1,#(0X3<<20)
ORR R1,R1,#(0X1<<20)
@设置PE8为输出
BIC R1,R1,#(0X3<<16)
ORR R1,R1,#(0X1<<16)
STR R1,[R0]

LDR R0,=0X50007000
LDR R1,[R0]
@设置PF10为输出
BIC R1,R1,#(0X3<<20)
ORR R1,R1,#(0X1<<20)
STR R1,[R0]

 @设置引脚输出模式
LDR R0,=0X50006004
LDR R1,[R0]
@设置PE10为推挽输出
BIC R1,R1,#(0X1<<10)
@设置PE8为推挽输出
BIC R1,R1,#(0X1<<8)
STR R1,[R0]
 
 LDR R0,=0X50007004
LDR R1,[R0]
@设置PF10为推挽输出
BIC R1,R1,#(0X1<<10)
STR R1,[R0]

@设置引脚速度
LDR R0,=0X50006008
LDR R1,[R0]
@设置PE10为低速输出
BIC R1,R1,#(0X3<<20)
@设置PE8为低速输出
BIC R1,R1,#(0X3<<16)
STR R1,[R0]

LDR R0,=0X50007008
LDR R1,[R0]
@设置PF10为低速输出
BIC R1,R1,#(0X3<<20)
STR R1,[R0]

@设置无上拉下拉电阻
LDR R0,=0X5000600C
LDR R1,[R0]
@设置PE10
BIC R1,R1,#(0X3<<20)
@设置PE8
BIC R1,R1,#(0X3<<16)
STR R1,[R0]

LDR R0,=0X5000700C
LDR R1,[R0]
@设置PF10
BIC R1,R1,#(0X3<<20)
STR R1,[R0]


loop:
BL LED1_ON
BL DELAY
BL LED2_ON
BL DELAY
BL LED3_ON
BL DELAY
BL LED1_OFF
BL DELAY
BL LED2_OFF
BL DELAY
BL LED3_OFF
BL DELAY
    b loop

LED1_ON:
LDR R0,=0x50006014
LDR R1,[R0]
ORR R1,R1,#(0X1<<10)
STR R1,[R0]
MOV PC,LR

LED1_OFF:
LDR R0,=0x50006014
LDR R1,[R0]
BIC R1,R1,#(0X1<<10)
STR R1,[R0]
MOV PC,LR

LED2_ON:
LDR R0,=0x50007014
LDR R1,[R0]
ORR R1,R1,#(0X1<<10)
STR R1,[R0]
MOV PC,LR

LED2_OFF:
LDR R0,=0x50007014
LDR R1,[R0]
BIC R1,R1,#(0X1<<10)
STR R1,[R0]
MOV PC,LR

LED3_ON:
LDR R0,=0x50006014
LDR R1,[R0]
ORR R1,R1,#(0X1<<8)
STR R1,[R0]
MOV PC,LR

LED3_OFF:
    LDR R0,=0x50006014
    LDR R1,[R0]
BIC R1,R1,#(0X1<<8)
STR R1,[R0]
MOV PC,LR

DELAY:
LDR R3,=0X10000000

MM:
CMP R3,#0
SUBNE R3,R3,#1
BNE MM
MOV PC,LR

.end

相关推荐

  1. <span style='color:red;'>ARM</span><span style='color:red;'>32</span><span style='color:red;'>day</span><span style='color:red;'>4</span>

    ARM32day4

    2024-03-20 05:20:13      37 阅读
  2. <span style='color:red;'>ARM</span> <span style='color:red;'>day</span><span style='color:red;'>4</span>

    ARM day4

    2024-03-20 05:20:13      60 阅读
  3. ARM day4

    2024-03-20 05:20:13       42 阅读
  4. ARM day4 代码

    2024-03-20 05:20:13       38 阅读
  5. ARM Day4

    2024-03-20 05:20:13       187 阅读
  6. 4.16 day7 ARM

    2024-03-20 05:20:13       36 阅读
  7. 4.17 day8 ARM

    2024-03-20 05:20:13       29 阅读
  8. 4.15 day6 ARM

    2024-03-20 05:20:13       41 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-20 05:20:13       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-20 05:20:13       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-20 05:20:13       82 阅读
  4. Python语言-面向对象

    2024-03-20 05:20:13       91 阅读

热门阅读

  1. 【ARM】FPU,VFP,ASE,NEON,SVE...是什么意思?

    2024-03-20 05:20:13       44 阅读
  2. 数据仓库的两种建模方法

    2024-03-20 05:20:13       32 阅读
  3. ARM day4

    2024-03-20 05:20:13       42 阅读
  4. linux环境部署

    2024-03-20 05:20:13       44 阅读
  5. 深度学习&PyTorch 之 transformer-中文多分类

    2024-03-20 05:20:13       41 阅读
  6. LLM的测试工具:LaVague平替成国内大模型

    2024-03-20 05:20:13       33 阅读
  7. SIFT和SURF的差异已经使用场景分析

    2024-03-20 05:20:13       34 阅读
  8. 图像分割在疾病诊断中的应用案例

    2024-03-20 05:20:13       41 阅读
  9. 深入了解提示词工程:原理、实践与应用

    2024-03-20 05:20:13       43 阅读
  10. 概率统计在AI中的作用

    2024-03-20 05:20:13       34 阅读
  11. 454.四数相加

    2024-03-20 05:20:13       45 阅读
  12. 保姆级离线环境安装docker和docker-compose

    2024-03-20 05:20:13       37 阅读