1830浏览
楼主: 驴友花雕

[项目] 【Arduino】168种传感器系列实验(176)---大尺寸8x8方格点阵...

[复制链接]

驴友花雕  高级技匠
 楼主|

发表于 2021-7-5 06:46:01

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百七十六:6mm大尺寸8x8LED方块方格点阵模块 可级联 红绿蓝白色 可选8级亮度
项目三十一:使用Matrix库的三色LED
实验开源代码

  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  3.   实验一百七十六:6mm大尺寸8x8LED方块方格点阵模块 可级联 红绿蓝白色 可选8级亮度
  4.   项目三十一:使用Matrix库的三色LED
  5.   接脚连线:
  6.   MAX7219       UNO
  7.   VCC  →→→→→ 5V
  8.   GND  →→→→→ GND
  9.   DIN  →→→→→ D12(数据,数据接收引脚)
  10.   CS   →→→→→ D11(负载,命令接收引脚)
  11.   CLK  →→→→→ D10(时钟,时钟引脚)
  12. */
  13. #include <Sprite.h>  // Sprite before Matrix
  14. #include <Matrix.h>
  15. //DIN, CLK, CS, #chips
  16. Matrix myLeds = Matrix(12, 10, 11, 3);
  17. Sprite letter_D = Sprite(6, 8,
  18.                          B111100,
  19.                          B111110,
  20.                          B110111,
  21.                          B110011,
  22.                          B110011,
  23.                          B110111,
  24.                          B111110,
  25.                          B111100
  26.                         );
  27. Sprite letter_E = Sprite(5, 8,
  28.                          B11111,
  29.                          B11111,
  30.                          B11000,
  31.                          B11110,
  32.                          B11110,
  33.                          B11000,
  34.                          B11111,
  35.                          B11111
  36.                         );
  37. Sprite letter_L = Sprite(5, 8,
  38.                          B11000,
  39.                          B11000,
  40.                          B11000,
  41.                          B11000,
  42.                          B11000,
  43.                          B11000,
  44.                          B11111,
  45.                          B11111
  46.                         );
  47. void setup() {
  48.   myLeds.setBrightness(0);
  49. }
  50. void loop() {
  51.   myLeds.clear();
  52.   delay(1000);
  53.   myLeds.write(17, 0, letter_L);
  54.   delay(1000);
  55.   myLeds.write(9, 0, letter_E);
  56.   delay(1000);
  57.   myLeds.write(1, 0, letter_D);
  58.   delay(1000);
  59. }
复制代码


回复

使用道具 举报

驴友花雕  高级技匠
 楼主|

发表于 2021-7-5 06:58:16

本帖最后由 驴友花雕 于 2021-8-21 13:33 编辑

                                            


【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百七十六:6mm大尺寸8x8LED方块方格点阵模块 可级联 红绿蓝白色 可选8级亮度
项目三十一:使用Matrix库的三色LED

实验场景图片 WeChat_20210705065550.gif


WeChat_20210821132158.gif
回复

使用道具 举报

驴友花雕  高级技匠
 楼主|

发表于 2021-7-5 07:00:48

Matrix库的几个函数

基本用法,仅限像素
Matrix myLeds = Matrix(DIN,CLK,LOAD,numChips);
使用您选择的名称创建Matrix对象的实例。DIN,CLK和LOAD是连接这些信号的引脚号。如果连接了多个单独连接的MAX7219芯片,则可以创建多个对象。

myLeds.clear();
清除整个显示屏。

myLeds.setBrightness(15);
设置显示亮度,从0到15(最亮)。

myLeds.write(x,y,value);
更改单个像素。对于关闭,值应为LOW,对于on,值应为HIGH。

基本用法,使用Sprite
Sprite myIcon = Sprite(宽度,高度,B11000,B11000,B11111,B11111);
创建一个精灵对象。您可以根据需要创建任意数量的精灵,每个精灵都有一个唯一的名称。宽度应与每个数据值中的位数匹配,高度应与数据值的数量匹配。

myLeds.write(x,y,myIcon);
在显示屏上绘制一个闪烁的精灵。


Sprite库允许创建与Matrix库一起使用的图像精灵

Sprite
启动LCD库。

width()
返回精灵的宽度(以像素为单位)。

height()
返回精灵的高度(以像素为单位)。

write()
将数据写入精灵的x,y位置。

read()
返回存储在sprite的x,y位置的数据。
回复

使用道具 举报

驴友花雕  高级技匠
 楼主|

发表于 2021-7-5 07:17:15

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百七十六:6mm大尺寸8x8LED方块方格点阵模块 可级联 红绿蓝白色 可选8级亮度
项目三十二:建立字母库,横式滚动文本显示(三级联)
实验开源代码

  1. /*
  2. 【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  3. 实验一百七十六:6mm大尺寸8x8LED方块方格点阵模块 可级联 红绿蓝白色 可选8级亮度
  4. 项目三十二:建立字母库,横式滚动文本显示(三级联)
  5. 接线接脚:
  6.   MAX7219       UNO
  7.   VCC  →→→→→ 5V
  8.   GND  →→→→→ GND
  9.   DIN  →→→→→ D12(数据,数据接收引脚)
  10.   CS   →→→→→ D11(负载,命令接收引脚)
  11.   CLK  →→→→→ D10(时钟,时钟引脚)
  12. */
  13. #include <MaxMatrix.h>
  14. #include <avr/pgmspace.h>
  15. PROGMEM const unsigned char CH[] = {
  16.   3, 8, B00000000, B00000000, B00000000, B00000000, B00000000, // space
  17.   1, 8, B01011111, B00000000, B00000000, B00000000, B00000000, // !
  18.   3, 8, B00000011, B00000000, B00000011, B00000000, B00000000, // "
  19.   5, 8, B00010100, B00111110, B00010100, B00111110, B00010100, // #
  20.   4, 8, B00100100, B01101010, B00101011, B00010010, B00000000, // $
  21.   5, 8, B01100011, B00010011, B00001000, B01100100, B01100011, // %
  22.   5, 8, B00110110, B01001001, B01010110, B00100000, B01010000, // &
  23.   1, 8, B00000011, B00000000, B00000000, B00000000, B00000000, // '
  24.   3, 8, B00011100, B00100010, B01000001, B00000000, B00000000, // (
  25.   3, 8, B01000001, B00100010, B00011100, B00000000, B00000000, // )
  26.   5, 8, B00101000, B00011000, B00001110, B00011000, B00101000, // *
  27.   5, 8, B00001000, B00001000, B00111110, B00001000, B00001000, // +
  28.   2, 8, B10110000, B01110000, B00000000, B00000000, B00000000, // ,
  29.   4, 8, B00001000, B00001000, B00001000, B00001000, B00000000, // -
  30.   2, 8, B01100000, B01100000, B00000000, B00000000, B00000000, // .
  31.   4, 8, B01100000, B00011000, B00000110, B00000001, B00000000, // /
  32.   4, 8, B00111110, B01000001, B01000001, B00111110, B00000000, // 0
  33.   3, 8, B01000010, B01111111, B01000000, B00000000, B00000000, // 1
  34.   4, 8, B01100010, B01010001, B01001001, B01000110, B00000000, // 2
  35.   4, 8, B00100010, B01000001, B01001001, B00110110, B00000000, // 3
  36.   4, 8, B00011000, B00010100, B00010010, B01111111, B00000000, // 4
  37.   4, 8, B00100111, B01000101, B01000101, B00111001, B00000000, // 5
  38.   4, 8, B00111110, B01001001, B01001001, B00110000, B00000000, // 6
  39.   4, 8, B01100001, B00010001, B00001001, B00000111, B00000000, // 7
  40.   4, 8, B00110110, B01001001, B01001001, B00110110, B00000000, // 8
  41.   4, 8, B00000110, B01001001, B01001001, B00111110, B00000000, // 9
  42.   2, 8, B01010000, B00000000, B00000000, B00000000, B00000000, // :
  43.   2, 8, B10000000, B01010000, B00000000, B00000000, B00000000, // ;
  44.   3, 8, B00010000, B00101000, B01000100, B00000000, B00000000, // <
  45.   3, 8, B00010100, B00010100, B00010100, B00000000, B00000000, // =
  46.   3, 8, B01000100, B00101000, B00010000, B00000000, B00000000, // >
  47.   4, 8, B00000010, B01011001, B00001001, B00000110, B00000000, // ?
  48.   5, 8, B00111110, B01001001, B01010101, B01011101, B00001110, // @
  49.   4, 8, B01111110, B00010001, B00010001, B01111110, B00000000, // A
  50.   4, 8, B01111111, B01001001, B01001001, B00110110, B00000000, // B
  51.   4, 8, B00111110, B01000001, B01000001, B00100010, B00000000, // C
  52.   4, 8, B01111111, B01000001, B01000001, B00111110, B00000000, // D
  53.   4, 8, B01111111, B01001001, B01001001, B01000001, B00000000, // E
  54.   4, 8, B01111111, B00001001, B00001001, B00000001, B00000000, // F
  55.   4, 8, B00111110, B01000001, B01001001, B01111010, B00000000, // G
  56.   4, 8, B01111111, B00001000, B00001000, B01111111, B00000000, // H
  57.   3, 8, B01000001, B01111111, B01000001, B00000000, B00000000, // I
  58.   4, 8, B00110000, B01000000, B01000001, B00111111, B00000000, // J
  59.   4, 8, B01111111, B00001000, B00010100, B01100011, B00000000, // K
  60.   4, 8, B01111111, B01000000, B01000000, B01000000, B00000000, // L
  61.   5, 8, B01111111, B00000010, B00001100, B00000010, B01111111, // M
  62.   5, 8, B01111111, B00000100, B00001000, B00010000, B01111111, // N
  63.   4, 8, B00111110, B01000001, B01000001, B00111110, B00000000, // O
  64.   4, 8, B01111111, B00001001, B00001001, B00000110, B00000000, // P
  65.   4, 8, B00111110, B01000001, B01000001, B10111110, B00000000, // Q
  66.   4, 8, B01111111, B00001001, B00001001, B01110110, B00000000, // R
  67.   4, 8, B01000110, B01001001, B01001001, B00110010, B00000000, // S
  68.   5, 8, B00000001, B00000001, B01111111, B00000001, B00000001, // T
  69.   4, 8, B00111111, B01000000, B01000000, B00111111, B00000000, // U
  70.   5, 8, B00001111, B00110000, B01000000, B00110000, B00001111, // V
  71.   5, 8, B00111111, B01000000, B00111000, B01000000, B00111111, // W
  72.   5, 8, B01100011, B00010100, B00001000, B00010100, B01100011, // X
  73.   5, 8, B00000111, B00001000, B01110000, B00001000, B00000111, // Y
  74.   4, 8, B01100001, B01010001, B01001001, B01000111, B00000000, // Z
  75.   2, 8, B01111111, B01000001, B00000000, B00000000, B00000000, // [
  76.   4, 8, B00000001, B00000110, B00011000, B01100000, B00000000, // \ backslash
  77.   2, 8, B01000001, B01111111, B00000000, B00000000, B00000000, // ]
  78.   3, 8, B00000010, B00000001, B00000010, B00000000, B00000000, // hat
  79.   4, 8, B01000000, B01000000, B01000000, B01000000, B00000000, // _
  80.   2, 8, B00000001, B00000010, B00000000, B00000000, B00000000, // `
  81.   4, 8, B00100000, B01010100, B01010100, B01111000, B00000000, // a
  82.   4, 8, B01111111, B01000100, B01000100, B00111000, B00000000, // b
  83.   4, 8, B00111000, B01000100, B01000100, B00101000, B00000000, // c
  84.   4, 8, B00111000, B01000100, B01000100, B01111111, B00000000, // d
  85.   4, 8, B00111000, B01010100, B01010100, B00011000, B00000000, // e
  86.   3, 8, B00000100, B01111110, B00000101, B00000000, B00000000, // f
  87.   4, 8, B10011000, B10100100, B10100100, B01111000, B00000000, // g
  88.   4, 8, B01111111, B00000100, B00000100, B01111000, B00000000, // h
  89.   3, 8, B01000100, B01111101, B01000000, B00000000, B00000000, // i
  90.   4, 8, B01000000, B10000000, B10000100, B01111101, B00000000, // j
  91.   4, 8, B01111111, B00010000, B00101000, B01000100, B00000000, // k
  92.   3, 8, B01000001, B01111111, B01000000, B00000000, B00000000, // l
  93.   5, 8, B01111100, B00000100, B01111100, B00000100, B01111000, // m
  94.   4, 8, B01111100, B00000100, B00000100, B01111000, B00000000, // n
  95.   4, 8, B00111000, B01000100, B01000100, B00111000, B00000000, // o
  96.   4, 8, B11111100, B00100100, B00100100, B00011000, B00000000, // p
  97.   4, 8, B00011000, B00100100, B00100100, B11111100, B00000000, // q
  98.   4, 8, B01111100, B00001000, B00000100, B00000100, B00000000, // r
  99.   4, 8, B01001000, B01010100, B01010100, B00100100, B00000000, // s
  100.   3, 8, B00000100, B00111111, B01000100, B00000000, B00000000, // t
  101.   4, 8, B00111100, B01000000, B01000000, B01111100, B00000000, // u
  102.   5, 8, B00011100, B00100000, B01000000, B00100000, B00011100, // v
  103.   5, 8, B00111100, B01000000, B00111100, B01000000, B00111100, // w
  104.   5, 8, B01000100, B00101000, B00010000, B00101000, B01000100, // x
  105.   4, 8, B10011100, B10100000, B10100000, B01111100, B00000000, // y
  106.   3, 8, B01100100, B01010100, B01001100, B00000000, B00000000, // z
  107.   3, 8, B00001000, B00110110, B01000001, B00000000, B00000000, // {
  108.   1, 8, B01111111, B00000000, B00000000, B00000000, B00000000, // |
  109.   3, 8, B01000001, B00110110, B00001000, B00000000, B00000000, // }
  110.   4, 8, B00001000, B00000100, B00001000, B00000100, B00000000, // ~
  111. };
  112. int DIN = 12;   
  113. int CLK = 10;  
  114. int CS = 11;   
  115. int maxInUse = 3;
  116. MaxMatrix m(DIN, CS, CLK, maxInUse);
  117. byte buffer[10];
  118. char text[]= "Hello Eagler8 "; // 滚动文本
  119. void setup() {
  120.   m.init(); // 模块初始化
  121.   m.setIntensity(8); // 点阵亮度 0-15
  122. }
  123. void loop() {
  124.   printStringWithShift(text, 100); // (文字,滚动速度)
  125. }
  126. // 显示=滚动提取的字符
  127. void printCharWithShift(char c, int shift_speed) {
  128.   if (c < 32) return;
  129.   c -= 32;
  130.   memcpy_P(buffer, CH + 7 * c, 7);
  131.   m.writeSprite(32, 0, buffer);
  132.   m.setColumn(32 + buffer[0], 0);
  133.   for (int i = 0; i < buffer[0] + 1; i++){
  134.     delay(shift_speed);
  135.     m.shiftLeft(false, false);
  136.   }
  137. }
  138. // 从文本字符串中提取字符
  139. void printStringWithShift(char* s, int shift_speed) {
  140.   while (*s != 0) {
  141.     printCharWithShift(*s, shift_speed);
  142.     s++;
  143.   }
  144. }
复制代码


回复

使用道具 举报

驴友花雕  高级技匠
 楼主|

发表于 2021-7-5 07:31:18

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百七十六:6mm大尺寸8x8LED方块方格点阵模块 可级联 红绿蓝白色 可选8级亮度
项目三十二:建立字母库,横式滚动文本显示(三级联)

实验场景图片   WeChat_20210705072722.gif

回复

使用道具 举报

驴友花雕  高级技匠
 楼主|

发表于 2021-7-8 11:15:03

:P大小点阵屏的对比


55.jpg
回复

使用道具 举报

威威子爱捣鼓  初级技师

发表于 2021-7-25 11:12:42

太全了,一时有点晕
回复

使用道具 举报

驴友花雕  高级技匠
 楼主|

发表于 2021-8-3 21:11:26


谢谢鼓励,这个模块比较少见
回复

使用道具 举报

虾虾^0^  见习技师

发表于 2021-8-12 15:50:47

厉害厉害厉害厉害厉害
回复

使用道具 举报

驴友花雕  高级技匠
 楼主|

发表于 2021-8-12 16:45:32

虾虾^0^ 发表于 2021-8-12 15:50
厉害厉害厉害厉害厉害

谢谢虾虾的鼓励
回复

使用道具 举报

驴友花雕  高级技匠
 楼主|

发表于 2021-9-8 07:57:53

Arduino 系列传感器和执行器模块实验目录清单:
一块扩展板完成Arduino的10类37项实验(代码+图形+仿真)
https://mc.dfrobot.com.cn/thread-280845-1-1.html
连杆形式的腿机构十一种:盘点机器人行走背后的机械原理
https://mc.dfrobot.com.cn/thread-308097-1-1.html
【花雕动手做】超低成本,尝试五十元的麦克纳姆轮小车!
https://mc.dfrobot.com.cn/thread-307863-1-1.html
【花雕动手做】超迷你哦,用徽商香烟盒做个智能小车!
https://mc.dfrobot.com.cn/thread-307907-1-1.html
【花雕动手做】太搞笑啦,一支胶管制成二只蠕动机器人
https://mc.dfrobot.com.cn/thread-308046-1-1.html
【花雕动手做】快餐盒盖,极低成本搭建机器人实验平台
https://mc.dfrobot.com.cn/thread-308063-1-1.html
【花雕动手做】特别苗条,使用微波传感器控制的纤细小车
https://mc.dfrobot.com.cn/thread-308866-1-1.html
【花雕动手做】脑洞大开、五花八门的简易机器人66种
https://mc.dfrobot.com.cn/thread-307900-1-1.html

实验一百五十八:QMC5883L电子指南针罗盘模块 三轴磁场传感器GY-271
https://mc.dfrobot.com.cn/thread-308195-1-1.html
实验一百六十三:BMI160 6轴惯性运动传感器 16位3轴加速度+超低功耗3轴陀螺仪  I2C/SPI 14LGA
https://mc.dfrobot.com.cn/thread-310371-1-1.html
实验一百六十五:2.4 英寸 TFT LCD 触摸屏模块 XPT2046 PCB ILI9341 240x320 像素 8 位 SPI 串口显示器
https://mc.dfrobot.com.cn/thread-309803-1-1.html
实验一百七十六:6mm大尺寸8x8LED方块方格点阵模块 可级联 红绿蓝白色 可选8级亮度
https://mc.dfrobot.com.cn/thread-309845-1-1.html
实验一百八十三:GY-530 VL53L0X 激光测距 ToF测距 飞行时间测距传感器模块 IIC通信协议
https://mc.dfrobot.com.cn/thread-310273-1-1.html
实验一百八十五:MAX4466声音传感器 驻极体话筒放大器 麦克风可调功放模块 microphone
https://mc.dfrobot.com.cn/thread-310193-1-1.html
实验一百八十九:TDA1308 硅麦克风 数字咪头放大模块 拾音器放大板 楼氏SUNLEPHANT
https://mc.dfrobot.com.cn/thread-310246-1-1.html
实验一百九十三:TCS34725颜色识别传感器 RGB IIC明光感应模块 ColorSensor
https://mc.dfrobot.com.cn/thread-310209-1-1.html
实验二百:RCWL-0515微波雷达感应开关 人体感应 智能感应探测传感器 12-15米远距离2.7G微波检测模块
https://mc.dfrobot.com.cn/thread-310313-1-1.html
实验二百零三:Air724UG合宙 Cat14G模块 DTU物联网UART串口通信数据TCP透传 核心板组合套餐
https://mc.dfrobot.com.cn/thread-310342-1-1.html
实验二百零九:Gravity: I2C & UART BC20 NB-IoT & GNSS通信模块 NB-IoT广域低功耗无线通信 GPS/北斗精准定位
https://mc.dfrobot.com.cn/thread-310433-1-1.html


回复

使用道具 举报

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

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2021 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail