上QQ阅读APP看书,第一时间看更新
第3章 树莓派GPIO的使用
3.1 GPIO的概念及相关库的使用方法
GPIO(General Purpose Input/Output,通用输入/输出)功能类似8051的P0~P3,其引脚可以供使用者通过程序控制并自由使用,引脚可作为通用输入(GPI)或通用输出(GPO)或通用输入/输出(GPIO),例如作为CLK时钟生成器、片选等,甚至有的引脚可以实现PWM(Pulse Width Modulation,脉冲宽度调制),简称脉宽调制。
PWM是将模拟信号转换为脉冲波的一种技术,一般转换后脉冲波的周期固定,但脉冲波的工作周期会依模拟信号的大小而改变。在日常的生活中会在很多场合用到PWM技术,小到声音的控制,大到工业系统,抑或是电信和数据通信电源等。常见的呼吸灯的控制、电机的速度控制都可以完美地使用PWM来实现。
树莓派的40针的引脚就是可以与外部物理设备通信的GPIO引脚,而且每个引脚都有特定的功能,早期的树莓派使用的是CMOS电平,GPIO引脚可以容忍5V的电压。而新型树莓派的GPIO引脚是TTL协议的引脚,就意味着GPIO引脚的电平是3.3V,只能支持3.3V的外设,一部分外设信号电压为5V的设备就需要接电阻分压后接入GPIO引脚。例如超声波传感器的引脚就是5V电平的,如果直接接入树莓派,有可能会烧毁树莓派的引脚,并且树莓派引脚的扇出能力很弱,不要接驳大功率负载设备,例如大功率的电机、舵机等。
在树莓派上使用GPIO有很多种方法,其中wiringPi的库使用比较方便。