12.21 汇编点亮STM32MP157小灯

复制代码
.text 
.global _start
_start: 
    @时钟使能
    LDR r0,=0x50000A28
    LDR r1,[r0]
    ORR r1,r1,#(0x1<<4)
    ORR r1,r1,#(0x1<<5)
    ORR r1,r1,#(0x1<<1)
    STR r1,[r0]

    @配置GPIO模式
    LDR r0,=0x50006000
    LDR r1,[r0]
    BIC r1,r1,#(0x2<<20)
    ORR r1,r1,#(0x1<<20)
    BIC r1,r1,#(0x2<<16)
    ORR r1,r1,#(0x1<<16)
    STR r1,[r0]

    LDR r0,=0x50007000
    LDR r1,[r0]
    BIC r1,r1,#(0x2<<20)
    ORR r1,r1,#(0x1<<20)
    STR r1,[r0]


    @配置GPIO推挽输出模式
    LDR r0,=0x50006004
    LDR r1,[r0]
    BIC r1,r1,#(0x1<<10)
    BIC r1,r1,#(0x1<<8)
    STR r1,[r0]

    LDR r0,=0x50007004
    LDR r1,[r0]
    BIC r1,r1,#(0x1<<10)
    STR r1,[r0]


    @配置GPIO为低速输出
    LDR r0,=0x50006008
    LDR r1,[r0]
    BIC r1,r1,#(0x3<<20)
    BIC r1,r1,#(0x3<<16)
    STR r1,[r0]

    LDR r0,=0x50007008
    LDR r1,[r0]
    BIC r1,r1,#(0x3<<20)
    STR r1,[r0]


    @设置PE10和PE8为无上下拉电阻
    LDR r0,=0x5000600c
    LDR r1,[r0]
    BIC r1,r1,#(0x3<<20)
    BIC r1,r1,#(0x3<<16)
    STR r1,[r0]

    LDR r0,=0x5000700c
    LDR r1,[r0]
    BIC r1,r1,#(0x3<<20)
    STR r1,[r0]
    
loop:
    bl led_on
    bl delay
    bl led_off
    bl delay

    b loop
led_on:
    @设置小灯亮
    LDR r0,=0x50006014
    LDR r1,[r0]
    ORR r1,r1,#(0x1<<10)
    ORR r1,r1,#(0x1<<8)
    STR r1,[r0]

    LDR r0,=0x50007014
    LDR r1,[r0]
    ORR r1,r1,#(0x1<<10)
    STR r1,[r0]
    mov pc,lr

led_off:
    @设置小灯灭
    LDR r0,=0x50006014
    LDR r1,[r0]
    BIC r1,r1,#(0x1<<10)
    BIC r1,r1,#(0x1<<8)
    STR r1,[r0]

    LDR r0,=0x50007014
    LDR r1,[r0]
    BIC r1,r1,#(0x1<<10)
    STR r1,[r0]
    mov pc,lr

 delay:
    LDR  R3,=0x10000000
mm:
    cmp r3,#0
    subne r3,r3,#1
    bne mm
    mov pc,lr

.end
相关推荐
jacklood6 小时前
基于STM32的车载振动曲线摆件创意设计
stm32·单片机·嵌入式硬件
jomoly7 小时前
星闪NL002开发板测评+匆匆
单片机·嵌入式硬件
17(无规则自律)8 小时前
【Linux驱动实战】:标准的按键控制LED驱动写法
linux·驱动开发·嵌入式硬件
森利威尔电子-9 小时前
森利威尔SL3180替换LM5013 100V降压3.3V 5V 12V恒压芯片
单片机·嵌入式硬件·集成电路·芯片·电源芯片
小昭在路上……13 小时前
AHB和APB总线概念
单片机·嵌入式硬件
学嵌入式的小杨同学14 小时前
STM32 进阶封神之路(三十):IIC 通信深度实战 —— 软件模拟 IIC + 光照传感器(BH1750)全解析(底层时序 + 代码落地)
stm32·单片机·嵌入式硬件·mcu·硬件架构·硬件工程·智能硬件
jacklood14 小时前
使用STM32的迪文屏控制使用参考方式
前端·javascript·stm32
Zarek枫煜14 小时前
zig与C3的算法 -- 桶排序
c语言·嵌入式硬件·算法
我是一个对称矩阵15 小时前
Ubuntu安装WIFI适配器驱动
stm32·单片机·ubuntu
光子物联单片机15 小时前
STM32传感器模块编程实践(十九) 光子物联北斗GPS定位模块简介及驱动源码
stm32·单片机·嵌入式硬件·mcu