1.BCM2835芯片手册

BCM2835是树莓派3B CPU的型号,是ARM-cotexA53架构,cpu Bus是地址总线,00000000-FFFFFFFF是CPU寻址的范围(4G)。DMA是高速拷贝单元,CPU可以发动DMA直接让DMA进行数据拷贝,直接内存访问单元。物理地址(PA)1G、虚拟地址(VA)4G若程序大于物理地址1G,是不是就跑不了了,不是的,它有个MMU的单元,把物理地址映射成虚拟地址,我们操作的代码基本上都是在虚拟地址。
地址总线 简单来说就是:cpu能够访问内存的范围。
CPU寻找外部的内存单元靠的是地址总线传输的数据。
GPIO有41个寄存器,所有访问都是32位的。
Description是寄存器的功能描述。
GPFSEL0(寄存器名)
GPIO Function Select 0(功能选择:输入或输出);GPSET0 (寄存器名)
GPIO Pin Output Set 0(将IO口置0);GPSET1(寄存器名)
GPIO Pin Output Set 1(将IO口置1);GPCLR0(寄存器名)
GPIO Pin Output Clear 0(清0)
下图的地址是:总线地址(并不是真正的物理地址)

下图给出第九个引脚的功能选择示例,对寄存器的29-27进行配置,进而设置相应的功能。根据图片下方的register 0表示0~9使用的是register 0这个寄存器。

文档中的功能说的非常清楚了,引脚输出是001,输入是000等等,我们的寄存器都是分组的,寄存器第0组是FESL0–9
上面的FSEL4代表的是树莓派底层的4引脚(BCM),而不是我们在调用树莓派库时常用的GPIO脚
</

最低0.47元/天 解锁文章
2223

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



