狗趴(GodPub),开源硬件学习与实践

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 7715|回复: 1
打印 上一主题 下一主题

【JoyTag香蕉派学习】8X8 RGB LED取模工具

[复制链接]

84

主题

143

帖子

725

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
725
QQ
跳转到指定楼层
楼主
发表于 2015-1-15 21:17:18 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
关于点阵的介绍以及使用等,请参考前两篇帖子:

《【JoyTag香蕉派学习】8x8 RGB LED 笑脸 (C, 香蕉派)》
http://forum.godpub.com/thread-60-1-1.html

《【JoyTag香蕉派学习】8x8 RGB LED 跑马灯》
http://forum.godpub.com/thread-61-1-1.html

两个程序里边的字模都是直接从小伙伴的帖子中复制过来的,如果想做些特别的图形,就得去找取模软件了。
懒得去找软件再加之无聊,另外看小撸和二叔折腾LED点阵取模,折腾得起劲,于是也折腾一把。
他们用的C#,我没用过,就拿MFC来糊弄吧

一折腾起来,发现以前用着挺熟练的MFC,都不会用了
咋画框啊,咋填充啊,咋COPY啊,样样想不起来了。
最终结果就是代码乱得一团糟
看二叔小撸他们秀的C#,规规矩矩的,简直羞愧的无地自容。
好在功能还算可用。

然后小撸和二叔发现一些毛病,又改了一下
再加些AD上去,彻彻底底变成垃圾软件了,不过没木马就是了(有驴)。

不废话了,上图:






关于扫描码,我一直搞不清楚哪个是行那个是列
如果显示的图形不对,把脑袋转过来就可以了。

测试用的代码,使用了二叔这个帖子内的代码:
http://www.52pi.net/forum.php?mod=viewthread&tid=1328
把elscode[24] 里的内容,换成scancode里的内容即可:
  1. #include <wiringPi.h>
  2. #include <wiringPiSPI.h>

  3. unsigned char elscode[24] = {
  4.     0x30, 0x30, 0x30, 0x18, 0x18, 0x18,
  5.     0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0,
  6.     0x01, 0xc0, 0x81, 0x07, 0xe6, 0x81,
  7.     0x0f, 0x42, 0x21, 0x0f, 0x02, 0x71
  8. };
  9. unsigned char cleancode[4] = {0x00, 0x00, 0x00, 0x00};

  10. int main(void)
  11. {
  12.     int i,k;
  13.     unsigned char buffer[4] = {0x25, 0xFF, 0x7F, 0xF0};
  14.     wiringPiSetup();
  15.     wiringPiSPISetup(0, 1);

  16.     wiringPiSPIDataRW(0, cleancode, 4);
  17.     delay(1000);

  18.     while(1)
  19.     {
  20.         k=0;
  21.         for(i=1;i<256;i*=2)
  22.         {
  23.             buffer[0]=i;
  24.             buffer[1]=0xff-elscode[k+2];
  25.             buffer[2]=0xff;
  26.             buffer[3]=0xff;
  27.             wiringPiSPIDataRW(0, buffer, 4);
  28.             buffer[0]=i;
  29.             buffer[1]=0xff;
  30.             buffer[2]=0xff-elscode[k+1];
  31.             buffer[3]=0xff;
  32.             wiringPiSPIDataRW(0, buffer, 4);
  33.             buffer[0]=i;
  34.             buffer[1]=0xff;
  35.             buffer[2]=0xff;
  36.             buffer[3]=0xff-elscode[k+0];
  37.             wiringPiSPIDataRW(0, buffer, 4);
  38.             k+=3;
  39.         }
  40.     }
  41. }
复制代码
需要先执行来加载spi模块:
gpio load spi
编译:
gcc -Wall -o rgbspi rgbspi.c -lwiringPi
运行用.\rgbspi

程序我上传到:QQ群“Arduino学习与实践20085629”的群共享了
有愿意试试玩的,就去下吧
(点阵搞冒烟不要赖我啊~)

二叔说,这个点阵用在Arduino上效果更好:
《二叔科技】Arduino 之 8x8 RGB 点阵(color see see)》
http://forum.godpub.com/thread-62-1-1.html

另,小撸正在生成一款极其强大的类似工具,并且开源。
这个代码太垃圾就不开源了。省得丢人。
回头我加个注册码去卖,一份1元,如果卖出去1000000份,我就发家了。
不多说了,继续做梦去了。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
天理路上甚宽,稍游心,胸中便觉广大宏朗;
人欲路上甚窄,才寄迹,眼前俱是荆棘泥涂。

84

主题

143

帖子

725

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
725
QQ
沙发
 楼主| 发表于 2015-1-15 21:27:05 | 只看该作者
效果图和软件生成的点阵不是一个,这个拍得更好看,就发这个了。
懒得重新拍了。
天理路上甚宽,稍游心,胸中便觉广大宏朗;
人欲路上甚窄,才寄迹,眼前俱是荆棘泥涂。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|狗趴(GodPub) Arduino&Raspberry Pi开源硬件学习与实践[QQ群:20085629]  

GMT+8, 2024-4-19 12:30 , Processed in 0.037828 second(s), 31 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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