Micro:bit系列教程10:功能引脚介绍

来自丢石头百科


本章将介绍Micro:bit的IO口,主要包括了GPIO,ADC,DAC,IIC,SPI,PWM等。


1.基本介绍

    Micro:bit拥有边缘连接端子引出引脚,其引出的引脚如下图所示:



103131wb7guw97i1n78nyy.jpg


    Micro:bit引出的引脚中,其引脚功能分类如下表所示:


<tbody> </tbody>

GPIO


P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P19,P20


ADC/DAC


P0,P1,P2,P3,P4,P10


IIC


P19(SCL),P20(SDA)


SPI


P13(SCK),P14(MISO),P15(MOSI)


PWM


P0,P1,P2,P3,P4,P10


已占用


P3(LED

 Col1),P4(LED Col2),


P5(BUTTON

 A),P6(LED Col9),


P7(LED

 Col8),P9(LED Col7),


P10(LED

 Col3),P11(Button B),


2.Micro:bit各功能引脚的使用

2.1 GPIO

    在Micro:bit中,P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P19,P20口可配置为输入与输出,当配置为输出的时候,可输出高低电平,当配置为输入的时候,可读取引脚输入电平,示例如下:


    输出示例,对相应的引脚输出高低电平。



103132tr6mkncrr9ne75cp.png


    输入示例,读取引脚的电平状态。



103132i2ng24tl5zlcpdap.png

2.2 ADC与DAC

    在Micro:bit中,提供了ADC与DAC相关方法,下面将进行演示:


    ADC示例,模拟读取引脚输入电压,并返回0-1024,:



103132p8ba416k84oribsu.png


并且,从图中可看出,仅有引脚P0,P1,P2,P3,P4,P10能够模拟读取电压,读取电压值(Volt)计算方法为,假设返回值为Value:


Volt = 3.3 * (Value/1024)


    DAC示例,模拟输出电压,参数为0-1023:



103133hm420m24hehsmgzk.png


同样地,仅有引脚P0,P1,P2,P3,P4,P10能够进行模拟输出。


输出电压值(Volt)为,假设写入的值为Value:


Volt = 3.3 * (Value/1024)


2.3 IIC与SPI

在Micro:bit中,提供了IIC与SPI等接口,可以很方便地与外围设备进行通信。


其中,IIC接口为P19,P20引脚,P19可配置成I2C的时钟线,P20可配置为I2C的数据线;SPI接口为P13,P14,P15引脚,P13可配置成SCK,P14可配置成MISO,P15可配置成MOSI。


在本教程中,直接连接相关引脚即可,相关使用已封装在软件包中。


2.4 PWM

    在Micro:bit中,通过相关引脚,可直接输出PWM。


PWM输出示例如下图所示:



103133aq7kq3o7h6o1hrn7.png

由该示例可知,仅P0,P1,P2,P3,P4,P10支持PWM输出,并且,在该示例中:


向引脚P0模拟写入256表示从P0输出PWM,脉宽为(256/1024)*周期。


将引脚P0的模拟期间设置为(us)表示设置PWM的周期。


    因此,在该示例程序中,设置的周期为20ms,脉宽为5ms,实际将示波器连接P0引脚观测得:



103137w804lg8xd8w6u4gd.png

    由示波器观测结果可知,该PWM的周期为20ms,脉宽为5ms,与预期一致。