Akagi201
9/7/2014 - 1:26 PM

GPIO.md

GPIO sysfs

Specs

  • GPIO是一个芯片上的通用管脚, 它的行为(是作为输入引脚还是输出引脚)可以由程序在运行时来控制.

  • GPIO引脚没有被定义特殊用途, 并且默认是不使用的.

  • 关键在于系统集成商构建一整个系统使用芯片也许发现有许多额外的数字控制线是有用的, 并且从芯片上拥有这些可以节省很多麻烦来安排额外的电路来提供他们.

  • 例如, Realtek ALC260芯片(音频编解码) 有8个GPIO引脚, 默认没有使用. 一些系统集成商(system integrator)(像Acer Inc. laptops)利用ALC260使用第一个GPIO(GPIO0)来开启放大器(amplifier)用与笔记本内部的扬声器(speaker)和外部的耳机插孔(headphone jack).

Uses

  • 缺少引脚(with pin scarcity)的设备: 集成电路像SOC, 嵌入式和定制引脚, 可编程逻辑器件(例如, FPGA).

  • 多功能芯片: 电源管理器, 音频编解码器, 和视频卡.

  • 嵌入式应用(像Arduino, BeagleBone, Raspberry Pi)充分利用了GPIO来读许多环境传感器(红外, 视频, 温度, 三轴方向传感器, 加速度传感器), 输出直流电机(通过PWM), 音频, LCD显示, 或者LED表示状态.

Capas

  • GPIO可以被配置为输入或输出.
  • GPIO可以 enable/disable.
  • 输入值是可读的(典型的 high=1, low=0).
  • 输出值是可写/可读的.
  • 输入值通常可以被用于IRQs(典型用于唤醒事件).

GPIO外部设备变化范围非常广泛. 在一些情况下, 他们很简单, 一组可以被切换的引脚作为一组来或者输入或者输出. 在其他情况, 每个引脚可以被灵活的安排来接受或者发出不同的逻辑电平(logic voltage), 带有可配置的驱动强度和下拉/下拉(pull ups/down).通常但不是绝对, 输入和输出电压低于设备的供应电压, 当GPIO开启时, 可能在接入更高电压时损坏.

Ports

  • 一个GPIO port是一组GPIO引脚(通常8 GPIO引脚)安排在一组, 并且被看做一个单一的端口(port).

Refs