树莓派数据手册(BCM2835)GPIO剖析
树莓派简介
Raspberry Pi(中文名为“树莓派”,简写为RPi,(或者RasPi / RPI) [1] 是为学习计算机编程教育而设计),只有信用卡大小的微型电脑,其系统基于Linux。 [2] 随着Windows 10 IoT的发布,我们也将可以用上运行Windows的树莓派。 [3]
自问世以来,受众多计算机发烧友和创客的追捧,曾经一“派”难求。别看其外表“娇小”,内“芯”却很强大,视频、音频等功能通通皆有,可谓是“麻雀虽小,五脏俱全”。 [4]
数据手册目录


1.资源介绍
BCM2835包含下面的外围设备访问
• Timers
• Interrupt controller
• GPIO
• USB
• PCM / I2S
• DMA controller
• I2C master
• I2C / SPI slave
• SPI0, SPI1, SPI2
• PWM
• UART0, UART1

这个图是针对与Linux而言:
由 ARM 内核作为虚拟地址发出
• 由 ARM MMU 映射到物理地址
• 由 ARM 映射 MMU 映射到总线地址,
• 用于选择适当的外设或 RAM 中的位置。
GPIO引脚功能模式选择大全


咱们可以看到,这上面一共有53个引脚,每个引脚上都有七种功能的选择,我们可以根据需要来配置选择不同的功能
GPIO引脚图


GPIO Function Select Registers (GPFSELn)
这个寄存器可以理解为对gpio0-gpio9进行gpio的模式选择,我们可以看到,每三位控制一个gpio引脚,我们通过设置不同的位可以配置成7种不同的模式

引脚功能输出设置
树莓派和一般的开发板gpio寄存器不太一样,他是通过两个寄存器单独对输出的高低电平进行设置的,GPIO Pin Output Set Registers (GPSETn),这个寄存器是设置所有GPIO引脚的输出电平,选择1为设置,0则不理睬

寄存器引脚输出清除
这个寄存器是把输出的引脚状态清除,我的理解是设置为0

获取引脚的电平状态
这个寄存器是获取引脚的电平状态,如果返回0为低电平,1为高电平

其他寄存器
大致看了一下,有检测该引脚事件的寄存器,有设置上升沿和下降沿中断使能的寄存器;有检测上升沿和下降沿中断产生的寄存器,还有一些设置gpio上\下拉的寄存器;gpio上下拉的时钟配置寄存器,这两个寄存器要一起使用
更多推荐
所有评论(0)