树莓派芯片手册阅读I/O口相关,实现编写驱动代码

本文介绍了如何通过阅读树莓派芯片手册,理解GPIO口的寄存器配置,如GPFSEL0、GPSET0和GPCLR0,以实现I/O口的输入输出控制。讲解了将GPIO引脚配置为输出,以及使用volatile关键字确保代码的实时性。同时,详细阐述了GPIO的物理地址和虚拟地址转换,并提到了ioremap和iounmap函数在驱动程序中的应用。
摘要由CSDN通过智能技术生成

一:阅读芯片手册

驱动的两大利器:

  • 电路图:通过电路图找到寄存器
  • 芯片手册:进行编写

对于I/O口无非是关心输入输出与输出1或者0问题

GPFSEL0 GPIO Function Select 0: //功能选择 输入/输出

        例如:把引脚4配置为输出引脚FSEL4 ,把4引脚的14-12位(总共32位)配置成001

                        001 = GPIO Pin 4 is an output

GPSET0 GPIO Pin Output Set 0 : //输出0
 GPSET1 GPIO Pin Output Set 1 : //输出1
 0 = No effect
 1 = Set GPIO pin n
 
GPCLR0 GPIO Pin Output Clear 0: //清零
 0 = No effect
 1 = Clear GPIO pin n
 GPCLR1 GPIO Pin Output Clear 1 ://清1

注意:我们配置的底层引脚对应得是BCM
寄存器第0组位FESL0–9
寄存器第1组位FSEL10–19

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值