上QQ阅读APP看书,第一时间看更新
第3章 PIN设备驱动开发
PIN设备又称GPIO(General Purpose Input Output,通用输入/输出)设备,又简称为I/O口,指MCU上的I/O引脚。RT-Thread将通用I/O抽象为PIN设备,以实现通用I/O口的功能。MCU的通用I/O一般用于读取引脚的输入电平或者控制引脚的输出电平,进而控制MCU的外围电路。常用硬件连接图如图3-1所示,图中MCU外接的是LED和KEY。
图3-1 LED/KEY的硬件连接图
在图3-1中,LED_R/G/B、KEY0/1/2均直连MCU GPIO口。图3-1a所示为MCU输出高低电平,以控制LED亮灭;图3-1b所示为MCU检测高低电平,以判断按键是否按下。
RT-Thread的PIN设备抽象了I/O口的基本功能,而I/O口的基本功能如下。
1)通过读取引脚的电平检测引脚外部输入情况,输入情况分为输入浮空、输入上拉、输入下拉、模拟输入。
2)设置引脚输出电平,输出情况分为开漏输出、推挽式输出。
3)检测外部中断:当I/O外部输入的电平变化时,可以触发给I/O引脚设置的中断。
以上I/O基本操作均被抽象为P I N设备。除了通用I/O之外,片上外设复用功能被RT-Thread抽象为其他外设,如第2章的UART设备,以及后续章节讲解的其他外设。