12
返回列表 发新帖
楼主: 风不破

[已解决] arduino uno接口过少,怎么增加?

[复制链接]
  • TA的每日心情
    开心
    2019-3-10 00:26
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    发表于 2018-5-8 22:33 | 显示全部楼层
    外接595就好啦 3個DO就可以控制8個以上的DO
  • TA的每日心情
    开心
    2018-9-20 15:06
  • 签到天数: 279 天

    [LV.8]以坛为家I

    发表于 2018-5-8 22:46 | 显示全部楼层
    估计这哥们问的意思是接口扩展板的问题,意思一个接口只有一个插口,他可能想扩展~或者方便插线
    打赏一点,努力一点
  • TA的每日心情
    开心
    2019-1-15 21:20
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2019-1-2 15:20 | 显示全部楼层
    ki1381 发表于 2018-5-5 15:11
    没看懂”只有一个digital的接口“是啥意思。
    ==========================

    这个是正解。
    楼主问的想必也就是这个问题。赞。
  • TA的每日心情
    开心
    2017-10-6 17:41
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2019-1-9 01:15 来自手机 | 显示全部楼层
    加扩展板,探头一类的用I2c,要不换2560。
  • TA的每日心情
    开心
    2019-2-14 16:35
  • 签到天数: 7 天

    [LV.3]偶尔看看II

    发表于 2019-1-11 09:54 | 显示全部楼层
    可以考虑选mega板
  • TA的每日心情
    开心
    2019-1-15 21:20
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2019-1-20 00:13 | 显示全部楼层
    如何扩展Arduino UNO的GPIO,直白说就是PIN引脚不够用怎么办?

    1. 换板。按照有的网友说法,直接换 MEGA 2560。Arduino UNO共有13个I/O输入输出,在不使用模拟量输入的情况下,A0~A5也能借用作I/O输入输出。这样可以用的PIN总数是19个。而MEGA 2560总共有54个PIN(其中包含16个模拟量输入输出引脚A0~A15)。
    这是解决办法,我把它列在第一项里。但是这有点跑题,就好像楼主问如何用1万块钱穷游欧洲,结果有人回答,那你再去多挣5万就可以了。这是个解决问题的思路,但好像算不上解决问题的办法,至少不是满足提问者本意的答案。
    那接着看其他方法。



                          Arduino UNO                                                           



                         MEGA 2560


    2.借用模拟量引脚。如上面提到的,如果在项目中,没有被用到的模拟量引脚A0~A5都可以借用来作为I/O输入输出。对应的PIN号是14~19。这样还就算是在本版上挤牙膏,把脚用尽,接下来的方法就是扩展了。



    3.串转并(3换8,赚5个)。使用74HC959N芯片。它可以让我们用三个引脚控制8个I/O输出。三个引脚的功能,分别对应“资料块”,“活塞”和“大平台”。只要你了解了资料摆放顺序的规则,就可以按照自己的意愿,逐个将值为0或者1的“资料块”,推上大平台,全部摆放好后,控制大平台的引脚上点,把资料推倒74HC959N这个芯片里。也就是刷新了芯片的锁存器,从而改变了芯片各个引脚的电平状态。
    这种芯片的用法,在“天佑老师”的Arduino教学视频里有详细的讲解,图文并茂,易于理解。我在这里也借用了他对芯片几个功能引脚的创意命名。
    74HC959N还可以进行级联,这样就可以拓展更多引脚出来。我自己做了一个用该芯片控制1088AS共阴8*8LED点阵元件点亮的实例。欢迎大家交流。
    但是,这个芯片扩展引脚存在一个问题,就是扩展的PIN只是作为输出用。当然,用3个脚换了8个脚,扩展了输出,自然就腾出了板子上的PIN脚,可以更多用于输入。这个逻辑没问题。那么,有没有扩展出引脚既可以作为输出也可以作为输入呢?
    74HC595N.jpg


    4.IIC总线(2换16,赚14个)。答案是:使用MCP23017芯片。而且这个芯片最多可以8颗级联,使用的控制引脚依然是2个,那就等于2换128,赚126个引脚。算不算终极答案不知道,但应该够用了吧^_^。因为在书写这个答案的时候,我还没实践过这个MCP23017芯片,就在此抛砖引玉吧,希望有实践经验的网友,可以分享出简单易学的教程和实例。


    ---------------------------
    我的个人微信公众号: liudingxin
    您需要登录后才可以回帖 登录 | 立即注册  

    本版积分规则

    热门推荐

    BLE胸带+GPS墨水屏运动心率表
    BLE胸带+GPS墨水屏运动心
    参赛项目: BLE胸带+GPS墨水屏运动心率表 参赛组员: 沧海笑1122 项目简介: 我喜欢
    基于树莓派的水滴摄影控制器(更新中)
    基于树莓派的水滴摄影控制
    【项目名称】基于树莓派的水滴摄影控制器(更新中) 状态:已完成 资料正在整理更
    如何实现避障小车和机械臂的组合
    如何实现避障小车和机械臂
    学校有科创杯比赛,想出了一个题目,但是一直无法实现,想请教大神指点指点 想达成的
    arduino nano 上传出错保这个错怎么办呀
    arduino nano 上传出错保
    基于Esp8266的点阵时钟
    基于Esp8266的点阵时钟
    芯片是ESP8266 12F 配合点阵单元板(64*32,单色),实现自动对时,天气预报,农历,
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   ( 蜀ICP备14017632号-3 )
    快速回复 返回顶部 返回列表