Micro:bit系列教程24:MCP23017 IO Expansion Board

来自丢石头百科
Admin讨论 | 贡献2020年1月15日 (三) 16:16的版本 (创建页面,内容为“<p class="MsoNormal"><span style="font-size:12.0pt;font-family:宋体">本章将介绍<span lang="EN-US">Micro:bit</span>通过<span lang="EN-US">MCP23017 IO Expansi…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

本章将介绍Micro:bit通过MCP23017 IO Expansion Board进行GPIO扩展。

1.基本介绍

    MCP23017 IO Expansion Board是一款GPIO扩展板,如果遇到Micro:bitIO口不够使用的情况,可用该模块进行扩展,该模块采用I2C通信接口,可扩展16GPIO口。

2.硬件连接

    在硬件连接上,采用Micro:bitI2C接口与该模块连接,通过读写MCP23017寄存器,从而控制MCP23017的引脚电平,实现IO扩展。

Micro:bit

MCP23017 IO Expansion Board

VCC

VCC

GND

GND

SCL

SCL

SDA

SDA

具体硬件连接和BME280一致。

3.软件设计

  打开makecode,添加软件包,输入链接:

https://github.com/waveshare/CourseKit

添加软件包成功后,采用积木块编写以下程序:

Micro:bit系列教程24:MCP23017 IO Expansion Board扩展IO资源-0.png

  下载,点击显示数据(设备)按钮,将显示B组引脚高低电平状态的数据,如果让引脚悬空,由于将引脚内部连接了上拉电阻,则读取的输入状态为高电平,读取B组引脚电平状态的数据如下图所示:

Micro:bit系列教程24:MCP23017 IO Expansion Board扩展IO资源-1.png

  同时,PA7-PA0分别输出低-------高的电平状态,将A组引脚连接到LED可观察现象。