佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

12
返回列表 发新帖
楼主: angels1026

Arduino Dot Matrix 新人帖

[复制链接]
 楼主| 发表于 29-8-2013 10:30 PM | 显示全部楼层
西门庆33 发表于 29-8-2013 09:56 PM
你是使用公司名下申请的吗?之前很多马来西亚人溅用了此方便,TI 公司不允许(只限马来西亚) ...

对啊..我用公司的名下申请... 修车厂申请 LED driver 的东西.. 有点不对 但是他还是送过来了..  
回复

使用道具 举报


ADVERTISEMENT

发表于 23-9-2013 05:09 PM | 显示全部楼层
koksoon980 发表于 23-9-2013 12:06 PM
唔低得你有,
我又去申请

申请的是什么?看来我也要行动了。
回复

使用道具 举报

发表于 23-9-2013 05:40 PM | 显示全部楼层
西门庆33 发表于 23-9-2013 05:09 PM
你申请的是什么?看来我也要行动了。

三片这个http://imageshack.us/a/img827/3301/0072m.jpg

你又唔低得金鱼佬啊
回复

使用道具 举报

 楼主| 发表于 1-10-2013 11:03 PM | 显示全部楼层
koksoon980 发表于 23-9-2013 05:40 PM
三片这个http://imageshack.us/a/img827/3301/0072m.jpg

你又唔低得金鱼佬啊

哇塞我也要...
回复

使用道具 举报

 楼主| 发表于 1-10-2013 11:08 PM | 显示全部楼层
我想挑战 shift out 来做 dot matrix ... 就是说用 两个 595 第一个做 col 第二个做 row ... 第一个的 overflow 给第二个..
想请问大大有什么建议吗 ? wire 我接好了.. 只是编制...
回复

使用道具 举报

发表于 2-10-2013 08:41 PM | 显示全部楼层
angels1026 发表于 1-10-2013 11:08 PM
我想挑战 shift out 来做 dot matrix ... 就是说用 两个 595 第一个做 col 第二个做 row ... 第一个的 over ...

shiftout()必须每次发送16bits(2 bytes)

参考Arduino的Library,shiftout() 每次只发送8bits,所以你必须稍微更改shiftout()

如果我没有搞错,shiftout() 应该是编写在\hardware\arduino\cores\arduino\wiring_shift.c文件里,其代码如果下
  1. void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val)
  2. {
  3.         uint8_t i;

  4.         for (i = 0; i < 8; i++)  {
  5.                 if (bitOrder == LSBFIRST)
  6.                         digitalWrite(dataPin, !!(val & (1 << i)));
  7.                 else       
  8.                         digitalWrite(dataPin, !!(val & (1 << (7 - i))));
  9.                        
  10.                 digitalWrite(clockPin, HIGH);
  11.                 digitalWrite(clockPin, LOW);               
  12.         }
  13. }
复制代码
将8改成16及7改成15应该行吧。

当然最好不要修改wiring_shift.c文件。你只需要加一新的function在你的sketch里,比如称之为 shiftout16()



回复

使用道具 举报

Follow Us
发表于 4-10-2013 05:03 PM | 显示全部楼层
西门庆33 发表于 2-10-2013 08:41 PM
shiftout()必须每次发送16bits(2 bytes)

参考Arduino的Library,shiftout() 每次只发送8bits,所以你必 ...

测试了上一楼的代码,原来是不能正常操作
第看看这里,稍后再研究



回复

使用道具 举报

发表于 4-10-2013 07:45 PM | 显示全部楼层
大功告成
第一颗74HC595是data,第二颗74HC595用于扫描(一至八不停的顺序接通)
ShftOut_Schm2.gif
  1. const byte COL_COUNT = 8;
  2. const byte ROW_COUNT = 3;

  3. //array to hold the data
  4. unsigned char sequence[ROW_COUNT][COL_COUNT] = {
  5. B00000001, B00000010, B00000100, B00001000, B00010000, B00100000, B01000000, B10000000,
  6. B00000001, B00000011, B00000111, B00001111, B00011111, B00111111, B01111111, B11111111,
  7. B11111110, B11111101, B11111011, B11110111, B11101111, B11011111, B10111111, B01111111
  8. };

  9. //Define which pins will be used for the shift register control
  10. //can be any digital pin on the Arduino
  11. int latchPin = 8;  //Pin connected to ST_CP(pin 12) of 74HC595
  12. int clockPin = 12; //Pin connected to SH_CP(pin 11) of 74HC595
  13. int dataPin = 11;  //Pin connected to DS(pin 14) of 74HC595

  14. int row;

  15. void setup() {   
  16.   Serial.begin(9600);
  17.   pinMode(latchPin, OUTPUT);
  18.   pinMode(clockPin, OUTPUT);
  19.   pinMode(dataPin, OUTPUT);
  20. }

  21. void loop()
  22. {
  23.     row = 0; col_display(); //display first row data
  24.     row = 1; col_display(); //display second row data
  25.     row = 2; col_display(); //display third row data
  26. }

  27. void col_display()
  28. {
  29.     for (int i = 0; i < COL_COUNT; i++)
  30.     {
  31.       int col = 1 << i+8;
  32.       int data = sequence[row][i] + col;
  33.       digitalWrite(latchPin, LOW);
  34.       shiftOut(dataPin, clockPin, MSBFIRST, (data >> 8));  // shift out highbyte
  35.       shiftOut(dataPin, clockPin, MSBFIRST,data);      // shift out lowbyte
  36.       digitalWrite(latchPin, HIGH);
  37.       delay(200);
  38.     }  
  39. }
复制代码
当真正用在矩阵(快速)显示时,请更正delay(200)

回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 11-10-2013 12:10 AM | 显示全部楼层
koksoon980 发表于 23-9-2013 05:40 PM
三片这个http://imageshack.us/a/img827/3301/0072m.jpg

你又唔低得金鱼佬啊

大哥我 order 和你一样的东西.. 那个什么 LM 3886 用来做 amp 的... 你有它的电路设计吗 ? 我也想要来玩玩...


回复

使用道具 举报

发表于 12-10-2013 03:29 AM | 显示全部楼层
angels1026 发表于 11-10-2013 12:10 AM
大哥我 order 和你一样的东西.. 那个什么 LM 3886 用来做 amp 的... 你有它的电路设计吗 ? 我也想要来玩玩 ...

http://www.ti.com/lit/ds/symlink/lm3886.pdf
回复

使用道具 举报

发表于 12-10-2013 03:53 AM | 显示全部楼层
angels1026 发表于 11-10-2013 12:10 AM
大哥我 order 和你一样的东西.. 那个什么 LM 3886 用来做 amp 的... 你有它的电路设计吗 ? 我也想要来玩玩 ...

你又申请样品啊?
回复

使用道具 举报

 楼主| 发表于 12-10-2013 08:50 AM 来自手机 | 显示全部楼层
koksoon980 发表于 12-10-2013 03:53 AM
你又申请样品啊?

.... 你知道的... lol..
回复

使用道具 举报

 楼主| 发表于 25-10-2013 12:14 AM | 显示全部楼层
西门庆33 发表于 4-10-2013 07:45 PM
大功告成
第一颗74HC595是data,第二颗74HC595用于扫描(一至八不停的顺序接通)
当真正用在矩阵(快速) ...

大哥我又来了...
想借问下大哥小弟的电路可以跑吗   

DOT Matrix.png

这个是小弟第一个画的哦.. 想要来个 8x8 dot matrix 只是玩玩而已
回复

使用道具 举报

发表于 26-10-2013 03:58 PM | 显示全部楼层
angels1026 发表于 25-10-2013 12:14 AM
大哥我又来了...
想借问下大哥小弟的电路可以跑吗   

应该没问题。要注意是,其中row或column必须inverse输出


回复

使用道具 举报

发表于 26-10-2013 04:29 PM | 显示全部楼层
angels1026 发表于 25-10-2013 12:14 AM
大哥我又来了...
想借问下大哥小弟的电路可以跑吗   

还要注意的是如果八粒led同时亮着,TLC59025可以支撑吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 19-4-2024 07:35 AM , Processed in 0.049955 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表