V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
tywtyw2002
V2EX  ›  程序员

关于 Arduino 的一些问题

  •  
  •   tywtyw2002 · 2014-03-10 07:11:07 +08:00 · 4161 次点击
    这是一个创建于 3904 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近想去用arduino去搞一些好玩的东西,但是不知道如何去入手。

    本人程序员出身,以前接触过,逻辑电路(纯模拟器logisim),和lego的机器人套件。
    但是对于实际的电路,单片机是没怎么接触过。

    lego的机器人套件主要是编程为主,输入、输出都是模块化的。
    不知道arduino是否也是模块化输入、输入呢?

    比如一个简单的现实天气的程序,用一个温度传感器+一个LED点阵屏。
    5*7的LED点阵屏,需要五个7bits的数据输入,但是这个5*7bits的信号如何去输出呢? 而且在做真实的电路时也需要加一些电阻吧。
    如果需要多个5*7的led点阵,那么arduino有那么多输出针脚吗?
    20 条回复    2014-11-04 17:25:38 +08:00
    pfitseng
        1
    pfitseng  
       2014-03-10 07:30:08 +08:00 via Android
    应该是模块化的吧,我用过还是比较简单的,电阻唯一的作用是调节LED亮度
    zkd8907
        2
    zkd8907  
       2014-03-10 07:54:43 +08:00
    7个bits的话可以从7个IO口引出去,然后控制通断。Arduino的低层基本上都封装起来了。
    P233
        3
    P233  
       2014-03-10 07:58:56 +08:00 via Android
    0x61
        4
    0x61  
       2014-03-10 08:07:29 +08:00
    首先5*7的LED点阵并不是占用35个IO,而是12个,LED点阵分共阴和共阳两种。
    电阻肯定是需要接的,单片机每个IO最大的输出电流和灌电流是有上限的,超过上限会烧掉,电阻值的选择和led的驱动电压和电流有关,需要计算,驱动led通常采用灌的方式,即输出低电平的时候灯亮。
    当IO口不够用的时候可以使用一些移位寄存器或者串行转并行的芯片来扩展,通常大家都使用74HC595,这个芯片可以级联。

    有其他疑问欢迎继续提问。
    circsqua
        5
    circsqua  
       2014-03-10 08:38:27 +08:00 via Android
    arduino可以做到模块化的,但和实际电路有关系,需要修订库的头文件的宏定义。

    或者用断码屏,12864之类的好些,电路会简单些。
    jkneedout
        6
    jkneedout  
       2014-03-10 08:59:37 +08:00
    不建议玩点阵,直接上一个12864的屏,按照屏幕的参数直接可以搜到一堆电路图和代码,自己移植下就行。 点阵的可玩性不高,而且驱动起来也比较的麻烦,且非常的耗IO. 自己玩的东西用屏幕最靠谱,写完天气,顺道再写写时钟,游戏什么的。
    tywtyw2002
        7
    tywtyw2002  
    OP
       2014-03-10 09:02:15 +08:00
    @0x61 像你说的这样需要一个驱动去控制吧?
    其实我对电路不怎么懂,我所想的led点阵的控制是在编程里面的,就是给这个端口来一个 0x00000的output。
    如果需要级联,多个led 点阵,那么直接找个带有驱动板子的 led点阵就好了?

    ps。是否有一些东西能让硬件的搭建尽量的简化呢? 插上就可以用就好了。
    面向硬件的编程是否就是 include 驱动的库 然后根据他的api去output呢?
    tywtyw2002
        8
    tywtyw2002  
    OP
       2014-03-10 09:06:35 +08:00
    @jkneedout 屏幕在夜间和远处 看不清楚呀。。。。。。 尤其是我这样近视300 散光50得
    sunocean
        9
    sunocean  
       2014-03-10 09:49:39 +08:00
    给你点资料吧
    http://ishare.iask.sina.com.cn/f/62015918.html
    要是有什么不明白的可以问我,邮箱为witdepot#outlook.com
    sivacohan
        10
    sivacohan  
       2014-03-10 10:07:41 +08:00
    @circsqua
    @jkneedout
    不推荐12864.这货一个要将近40元。再加一点可以买TFT了。
    推荐买5110,一个才10~12元。84*48点阵的。工作电压 3~5V。
    circsqua
        11
    circsqua  
       2014-03-10 10:30:19 +08:00
    @sivacohan 5110当然也可以,不过看LZ后来提的需求,要上点阵LED单元才行:
    http://detail.tmall.com/item.htm?spm=a230r.1.14.62.usK9at&id=21285099758&_u=ajveoqb29ad
    0x61
        12
    0x61  
       2014-03-10 10:35:02 +08:00
    sivacohan
        13
    sivacohan  
       2014-03-10 11:34:55 +08:00
    @circsqua
    刚看见哈……
    300度近视 50度散光……
    实际上不管怎么的都得戴眼镜才能看清吧……
    不然就得搞超级大的LED点阵了
    jkneedout
        14
    jkneedout  
       2014-03-10 13:48:09 +08:00
    你这为了不带眼镜的话,必须超大才行, 真的只能搞个广告牌那种大小的点阵了。 但光线太强你睡觉睡得安心么,红光晚上太拉风了有木有? 如果再考虑做成定时点亮屏幕的,那就可能偏离楼主的原意了。
    tywtyw2002
        15
    tywtyw2002  
    OP
       2014-03-10 13:52:30 +08:00
    @jkneedout 其实也还好,晚上起床的时候过去看一眼, 平时都是去厨房喝水的时候看下微波炉上面的时钟。。。。
    jkneedout
        16
    jkneedout  
       2014-03-10 14:05:22 +08:00
    那你就搞个大点的现场的点阵,找人要现成的驱动代码,注意是供电方式,比较大的话功耗相对高,供电也是个麻烦的事。关键是找到楼主合适的size ,代码什么都简单。
    tywtyw2002
        17
    tywtyw2002  
    OP
       2014-03-10 14:52:45 +08:00
    @jkneedout 没这么复杂吧?

    我看淘宝上 MAX7219驱动的板子挺多的。
    也就是5个 8*8 级联吧。
    jkneedout
        18
    jkneedout  
       2014-03-10 16:18:52 +08:00
    五个你说的那种模块应该没压力的,楼主放手去做吧! 我怕你买11楼那种大号的! 想多了囧!
    sennes
        19
    sennes  
       2014-11-04 13:56:52 +08:00
    不知道楼主学得怎样了
    tywtyw2002
        20
    tywtyw2002  
    OP
       2014-11-04 17:25:38 +08:00
    @sennes 还好,目前没搞点阵,搞一些led灯条,做pwm调色。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2894 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 07:36 · PVG 15:36 · LAX 23:36 · JFK 02:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.