查看: 79|回复: 1

[原创] [Arduino STM32] 01:管脚编号 PIN_MAP

[复制链接]

33

主题

2

好友

5185

积分

状元

Rank: 6Rank: 6

  • TA的每日心情
    开心
    昨天 00:00
  • 签到天数: 1295 天

    [LV.10]以坛为家III

    爱板会员勋章 活跃会员勋章 在线达人勋章 在线之王勋章

    发表于 2016-11-16 09:10:44 |显示全部楼层
    对于 Arduino STM32 开发板上的管脚使用,在上一篇文章中的 Blink 程序我们是直接声明 LED 管脚为 MCU 的管脚:

    #define pinLED PC13

      pinMode(pinLED, OUTPUT);

      digitalWrite(pinLED, HIGH);

    然而在 Arduino 的程序里头我们是可以直接使用管脚的编号的:

    P01.JPG


    比如说:

    void setup() {
      // initialize digital pin 13 as an output.
      pinMode(13, OUTPUT);
    }

    假如我们在 Arduino STM32 板上也想要这么使用的话那我们该怎么知道管脚的编号呢?以上一个 Blink 程序来说,PC13 是对应到那一个编号呢?

    在下载到 Arduino IDE 的 STM32 程序插件底下的 board.h 文件里头有这样的枚举类别:

    // Note this needs to match with the PIN_MAP array in board.cpp
    enum {
        PA0, PA1, PA2, PA3, PA4, PA5, PA6, PA7, PA8, PA9, PA10, PA11, PA12, PA13,PA14,PA15,
        PB0, PB1, PB2, PB3, PB4, PB5, PB6, PB7, PB8, PB9, PB10, PB11, PB12, PB13,PB14,PB15,
        PC13, PC14,PC15
    };

    这个排列就是 STM32F103C8T6 的管脚编号了,PA0 是 0,而 PC13 就是 32,所以我们将上一个 Blink 程序里头的 PC13 改成 32,程序一样可以正常运行。

    #define pinLED 32


    这里我们使用管脚编号的方式来实现一个流水灯程序,LED 连接到板子底下的 A15 至 B9 共 8 支脚,而 LED 是低电位点亮的方式。

    P02.jpg


    管脚编号对应如下:

    A15 ->  15
    B3  ->  19
    B4  ->  20
    B5  ->  21
    B6  ->  22
    B7  ->  23
    B8  ->  24
    B9  ->  25

    程序如下:
    1. const byte LED[] = {15, 19, 20, 21, 22, 23, 24, 25};

    2. void setup() {
    3.   int x;
    4.   for(x=0; x<8; x++) {
    5.     pinMode(LED[x], OUTPUT);
    6.     digitalWrite(LED[x], HIGH);
    7.   }
    8. }

    9. void loop() {
    10.   int x;
    11.   for(x=0; x<8; x++) {
    12.     digitalWrite(LED[x], LOW);
    13.     delay(100);
    14.     digitalWrite(LED[x], HIGH);
    15.   }
    16. }
    复制代码
    运行结果:
    MOV.gif




    Arduino STM32 编程体验
    http://www.eeboard.com/bbs/thread-49468-1-1.html
    已有 1 人评分铜板 收起 理由
    噗噗熊 + 10 赞一个!

    总评分: 铜板 + 10   查看全部评分

    回复

    使用道具 举报

    112

    主题

    62

    好友

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    该用户从未签到

    分区版主职务勋章

    发表于 2016-11-16 09:46:30 |显示全部楼层
    技术帖必须有赏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    关闭

    站长推荐上一条 /6 下一条


    手机版|爱板网 |网站地图  

    GMT+8, 2016-12-8 00:39 , Processed in 0.210710 second(s), 12 queries , Memcache On.

    苏公网安备 32059002001056号

    Powered by Discuz!

    回顶部