0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何添加ArduinoUno的额外I/O引脚

454398 来源:wv 2019-09-23 08:44 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:购物清单

如何添加ArduinoUno的额外I/O引脚

要使此项目成功,您需要:

原型屏蔽

可堆叠插头或引脚插头

一些导线

电阻器LEDs

,最重要的是某些

MCP23017芯片

步骤2:焊接

现在是焊接的时候了。

看一下引脚图或完整的数据表

首先放置芯片(看图片,看看引脚在哪里)

然后焊接接地(棕线):将引脚10接地,然后将引脚15、16、17设置为地址(通过选择5v或gnd),如果打算添加,这次将它们全部接地。

然后焊接5v(橙色导线),最重要的一个是引脚9。图中的其余导线通到LED用来供电,而另一端则从引脚21供电(以表明它可以工作)。

最重要的是将SDA(引脚13)连接到A4(在arduino uno上)和SCL (针脚12)至A5(arduino uno)。对于其他arduino板,请阅读规格以找到SDA和SCL引脚。要添加的另一重要事项是SDA SCL和5v之间的两个电阻值分别在4.7k和10k之间(请参见原理图)。它不是必需的(因为arduino有一些上拉电阻,但不是很强),但是如果要使之可靠,我建议您添加它们。

现在您有16个额外的I/O(引脚1至8和21) 28)。

步骤3:编程时间

使用I2C需要线库(包含在标准arduino中) ),但它不是很容易使用。为了使其更简单,我使用IOsheld Library,它使易于使用的命令来控制您的项目。只需将其保存在库类别中。

并加载示例代码并完成。

//64shield库的示例代码

//在Arduino I2C端口上与Centipede Shield或MCP23017一起使用

#include

#include

/*可用命令

.digitalWrite([0 。.. 127],[LOW 。.. HIGH])-行为与普通digitalWrite

.digitalRead([0 。.. 127])-行为与普通digitalRead

.pinMode([0 。.. 127],[INPUT 。.. OUTPUT])-行为与普通pinMode

.portWrite ([0 。.. 7],[0 。.. 65535])-将16位值写入一个端口(芯片)

.portRead([0 。.. 7])-从16位值读取一个端口(芯片)

.portMode([0 。.. 7],[0 。.. 65535])-将I/O掩码写入一个端口(芯片)

.pinPullup([0 。.. 127],[LOW 。.. HIGH])-设置输入引脚上的上拉

.portPullup([0 。.. 7],[0 。.. 65535])-设置一个端口(芯片)上的上拉

.init()-将所有寄存器设置为初始值

示例

IO.init();

IO.pinMode(0,OUTPUT);

IO.digitalWrite(0,HIGH);

int recpin = IO.digitalRead(0);

IO.portMo de(0,0b0111111001111110);//0 =输出,1 =输入

IO.portWrite(0,0b1000000110000001);//0 = LOW,1 = HIGH

int报表= IO.portRead(0);

IO.pinPullup(1,HIGH);

IO.portPullup(0,0b0111111001111110);//0 =无上拉,1 =上拉

*/

IOshield IO;//创建64shield对象

void setup()

{

Wire.begin();//启动I2C

IO.initialize();//将所有寄存器设置为默认值

IO.portMode(0,0b0000000000000000);//将芯片0上的所有引脚设置为输出

//TWBR = 12;//对于400KHz I2C取消注释(在16MHz Arduino上)

}

void loop()

{

for(int i = 0; i 《15; i ++){

IO.digitalWrite( i,HIGH);

delay(10);

}

for(int i = 0; i 《15; i ++){

IO.digitalWrite(i,LOW);

delay (10);

}

}

如果您想要更多的销钉,请查看我的启动项目,以创建64个I/O Arduino屏蔽!是的,在正常大小的arduino防护罩上有64个额外的针脚……疯狂。。

步骤4:在Kickstarter上支持我们

64个IO盾启动突击战

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 引脚
    +关注

    关注

    16

    文章

    2097

    浏览量

    55155
  • Arduino
    +关注

    关注

    190

    文章

    6515

    浏览量

    195990
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    飞凌嵌入式ElfBoard-文件I/O的深入学习之异步I/O

    /O,但可以使用fcntl函数配置对应的文件描述符。添加O_ASYNC标志使能异步I/O:int flag;flag = fcntl(0,
    发表于 12-05 11:23

    飞凌嵌入式ElfBoard-文件I/O的深入学习之I/O多路复用

    I/O多路复用(IO multiplexing)通过一种机制,可以监视多个文件描述符,一旦某个文件描述符(也就是某个文件)可以执行I/O操作时,能够通知应用程序进行相应的读写操作。
    发表于 12-05 11:18

    浅谈光学I/O模块的热挑战

    服务器和机架式网络基础设施系统内的光学 I/O 模块通常接受主动冷却系统的直接冷却,特别是来自机架式设备前面板的强制风冷。机架式设备的散热设计需要平衡 I/O 模块的热管理与处理器或
    的头像 发表于 11-03 09:32 464次阅读
    浅谈光学<b class='flag-5'>I</b>/<b class='flag-5'>O</b>模块的热挑战

    如何解决I/O时钟布局器错误

    I/O 时钟布局器阶段可能会发生错误,指出该工具无法对该时钟结构进行布局,直至最后 BUFG 仍然无法完成布局。
    的头像 发表于 09-23 16:05 612次阅读

    TCA9536 4位I2C/SMBus I/O扩展器技术解析

    Texas Instruments TCA9536 4位I/O扩展器用于I^2^C总线,可在1.65V至 5.5V的V~CC~ 下运行。它可通过I^2^C接口为大多数微控制器系列提供通
    的头像 发表于 09-19 14:45 499次阅读
    TCA9536 4位<b class='flag-5'>I</b>2C/SMBus <b class='flag-5'>I</b>/<b class='flag-5'>O</b>扩展器技术解析

    TCA9537远程4位I²C/SMBus I/O扩展器技术解析与应用指南

    Texas Instruments TCA9537远程4位I^2^C和SMBus I/O扩展器在1.65V至5.5V V~CC~电压下运行,可通过I²C接口实现通用远程
    的头像 发表于 09-15 16:00 663次阅读
    TCA9537远程4位<b class='flag-5'>I</b>²C/SMBus <b class='flag-5'>I</b>/<b class='flag-5'>O</b>扩展器技术解析与应用指南

    TCAL9539 I2C总线I/O扩展器技术解析与应用指南

    需要额外I/O时,TCAL9539/TCAL9539-Q1这样的I/O扩展器提供了一个简单的解决方案。
    的头像 发表于 08-08 11:49 948次阅读
    TCAL9539 <b class='flag-5'>I</b>2C总线<b class='flag-5'>I</b>/<b class='flag-5'>O</b>扩展器技术解析与应用指南

    MAX7325 I²C端口扩展器,提供8路推挽式I/O和8个漏极开路I/O技术手册

    MAX7325 2线串行接口外设具有16路I/O端口。其中8路为推挽输出,另外8路为I/O端口,带有可选择的内部上拉和瞬态检测功能。8路I/
    的头像 发表于 05-22 15:27 688次阅读
    MAX7325 <b class='flag-5'>I</b>²C端口扩展器,提供8路推挽式<b class='flag-5'>I</b>/<b class='flag-5'>O</b>和8个漏极开路<b class='flag-5'>I</b>/<b class='flag-5'>O</b>技术手册

    ADP5588移动I/O扩展器和QWERTY键盘控制器技术手册

    ADP5588是一款I/O端口扩展器和键盘矩阵,适用于需要大型键盘矩阵和扩展I/O线路的QWERTY型电话。I/
    的头像 发表于 05-22 11:37 696次阅读
    ADP5588移动<b class='flag-5'>I</b>/<b class='flag-5'>O</b>扩展器和QWERTY键盘控制器技术手册

    ADP5585键盘解码器和I/O扩展器技术手册

    ADP5585是一款10I/O端口扩展器,内置键盘矩阵解码器、可编程逻辑、复位发生器和PWM发生器。I/O扩展器IC适用于便携式设备(手机、遥控器和相机)及非便携式应用(医疗保健、工业
    的头像 发表于 05-22 09:21 744次阅读
    ADP5585键盘解码器和<b class='flag-5'>I</b>/<b class='flag-5'>O</b>扩展器技术手册

    怎样使用无线 I/O 网关搭建物联网系统

    使用无线I/O网关搭建物联网系统是一个复杂但有序的过程,以下是一个基本的搭建步骤指南: 一、明确需求与规划 1. 确定应用场景:    ● 分析物联网网关将部署在哪些环境中,例如工业自动化、智能家居
    的头像 发表于 04-13 07:35 772次阅读
    怎样使用无线 <b class='flag-5'>I</b>/<b class='flag-5'>O</b> 网关搭建物联网系统

    评估I/O引脚切换时,为什么NXP S32K344板变砖了?

    我需要帮助,在评估 I/O 引脚切换时,我不知何故将我的 NXP S32K344板变砖了。 我使用 JLink Debug Adapter,它收到消息 my device is locked。我猜我
    发表于 04-08 07:50

    DLPC900需要额外添加散热装备吗?

    老师好 我有一套系统,型号为: 控制卡 DLPC900 , dmd 两个 ,分别是 : DLP6500FYE DLP6500FLQ 请问,需要额外添加散热装备吗?
    发表于 02-24 07:19

    I/O接口与I/O端口的区别

    在计算机系统中,I/O接口与I/O端口是实现CPU与外部设备数据交换的关键组件,它们在功能、结构、作用及运作机制上均存在显著差异,却又相互协同工作,共同构建起CPU与外部设备之间的桥梁
    的头像 发表于 02-02 16:00 2851次阅读

    单片机I/O接口的传输方式

    单片机(Microcontroller Unit,MCU)作为嵌入式系统的核心部件,其输入输出(Input/Output,I/O)接口是实现与外部设备数据交换的关键。I/O接口不仅承担
    的头像 发表于 02-02 15:56 1656次阅读