单片机的PIN有2个基本功能:GPIO和AFIO,其中gpio的常用功能:

1 输入:上拉、下拉、模拟、浮动

2 输出:上拉、下拉、推挽、开漏

3 中断:上升沿、下降沿、双沿、高电平、低电平触发

RTT是将GPIO重新编号,然后根据唯一编号进行控制:有2种方式可以获取引脚编号:使用宏定义或者查看PIN 驱动文件

void rt_pin_mode(rt_base_t pin, rt_base_t mode);
void rt_pin_write(rt_base_t pin, rt_base_t value);PIN_LOW 低电平,PIN_HIGH 高电平
int rt_pin_read(rt_base_t pin);
rt_err_t rt_pin_attach_irq(rt_int32_t pin, rt_uint32_t mode, void (*hdr)(void *args), void *args);
rt_err_t rt_pin_irq_enable(rt_base_t pin, rt_uint32_t enabled);
rt_err_t rt_pin_detach_irq(rt_int32_t pin);
#define LED0_PIN        GET_PIN(F,  9) // 通过GET_PIN(F, 9)获得编号
查看 PIN 驱动代码 drv_gpio.c 文件确认引脚编号。此文件里有一个数组存放了每个 PIN 脚对应的编号信息,如下所示:
static const rt_uint16_t pins[] =
{
__STM32_PIN_DEFAULT,
__STM32_PIN_DEFAULT,
__STM32_PIN(2, A, 15),
__STM32_PIN(3, B, 5),
__STM32_PIN(4, B, 8),
__STM32_PIN_DEFAULT,
__STM32_PIN_DEFAULT,
__STM32_PIN_DEFAULT,
__STM32_PIN(8, A, 14),
__STM32_PIN(9, B, 6),
... ...
}
__STM32_PIN(2, A, 15)为例,2 为 RT-Thread 使用的引脚编号,A 为端口号,15 为引脚号,所以 PA15 对应的引脚编号为 2。

最新文章

  1. 自己用C语言写单片机PIC16 serial bootloader
  2. 个性二维码开源专题<替换元素点>
  3. Oracle dmp文件导入(还原)到不同的表空间和不同的用户下
  4. javaSE第八天
  5. You must SET PASSWORD before executing this statement解决
  6. PPT美化大师
  7. mongodb查询之模糊查询
  8. PyQt实现图片中心旋转
  9. 盘点国内外那些有野心的BI公司
  10. POJ-3069 Saruman's Army---区间选点
  11. 【原创】大叔经验分享(25)hive通过外部表读写hbase数据
  12. 关于js事件执行顺序
  13. Oracle 分区表 收集统计信息 参数granularity
  14. 【JVM】内存分析<一>工具的使用
  15. virtualbox 采用 NAT 还是 BRIDGE
  16. 解题:NOI 2009 诗人小G
  17. 对Property进行RACObserve
  18. 记一次MyEclipse闪退的解决方法
  19. python2.7下同步华为云照片的爬虫程序实现
  20. P4711 「化学」相对分子质量

热门文章

  1. Entity Framework Tutorial Basics(20):Persistence in Entity Framework
  2. Socket编程--TCP粘包问题
  3. C++笔记--抽象机制
  4. JavaScript知识体系索引
  5. Bat 多个执行操作选择
  6. Codeforces Global Round 1D(DP,思维)
  7. weekly contest 115
  8. 爬取腾讯课堂IT-互联网分类的的课程信息存入csv文件
  9. yyyyMMdd必须严格遵守大小写规范
  10. git 日常使用从入门到真香