RP2040硬件编程与PIO处理器应用指南
1. 编程PAD与初始化SIO
1.1 编程PAD
APB通过PAD与外部世界相连,PAD提供电气隔离并控制电压和电流水平。需要对其进行编程以开启输入和输出功能。以下是配置PAD的代码示例:
LDR R2, padsbank0
LSL R3, R0, #2 @ pin * 4 for register address
ADD R2, R3 @ Actual set of registers for pin
MOV R1, #PADS_BANK0_GPIO0_IE_BITS
LDR R4, setoffset
ORR R2, R4
STR R1, [R2, #PADS_BANK0_GPIO0_OFFSET]
...
padsbank0: .word PADS_BANK0_BASE
setoffset: .word REG_ALIAS_SET_BITS
此代码通过加载 padsbank0 的地址,加上GPIO引脚的偏移量,然后进行按位或操作,最终配置PAD。
1.2 初始化SIO
初始化SIO设备,准备引脚用于输出并将其关闭(以防之前已开启)。外部有26个引脚(引脚0到28,不包括23到25),可通过在32位寄存器中放置一个1并将其左移引脚编号来访问。初始化SIO引脚的步骤如下:
1. 向输出使能设置寄存器中引脚的位置写入1,将其配置为输出。
2. 向输出清除寄存器写入相同的值,关闭引脚。
以下是配置SIO引
超级会员免费看
订阅专栏 解锁全文
220

被折叠的 条评论
为什么被折叠?



