Micro:bit的IO口,主要包括了GPIO,ADC,DAC,IIC,SPI,PWM等。
1.基本介绍
Micro:bit拥有边缘连接端子引出引脚,其引出的引脚如下图所示:
Micro:bit引出的引脚中,其引脚功能分类如下表所示:
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口可配置为输入与输出,当配置为输出的时候,可输出高低电平,当配置为输入的时候,可读取引脚输入电平,示例如下:
输出示例,对相应的引脚输出高低电平。
输入示例,读取引脚的电平状态。
2.2 ADC与DAC
在Micro:bit中,提供了ADC与DAC相关方法,下面将进行演示:
ADC示例,模拟读取引脚输入电压,并返回0-1024,:
并且,从图中可看出,仅有引脚P0,P1,P2,P3,P4,P10能够模拟读取电压,读取电压值(Volt)计算方法为,假设返回值为Value:
Volt = 3.3 * (Value/1024)
DAC示例,模拟输出电压,参数为0-1023:
同样地,仅有引脚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输出示例如下图所示:
由该示例可知,仅P0,P1,P2,P3,P4,P10支持PWM输出,并且,在该示例中:
向引脚P0模拟写入256表示从P0输出PWM,脉宽为(256/1024)*周期。
将引脚P0的模拟期间设置为(us)表示设置PWM的周期。
因此,在该示例程序中,设置的周期为20ms,脉宽为5ms,实际将示波器连接P0引脚观测得:
由示波器观测结果可知,该PWM的周期为20ms,脉宽为5ms,与预期一致。