91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

電子發(fā)燒友App

硬聲App

掃碼添加小助手

加入工程師交流群

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>使用帶有IC MAX7219的8×8點陣LED模塊

使用帶有IC MAX7219的8×8點陣LED模塊

2022-12-29 | zip | 0.01 MB | 次下載 | 2積分

資料介紹

描述

您可以在ElectroPeak 的官方網(wǎng)站上閱讀本教程和其他精彩教程

概述

在本教程中,您將學(xué)習(xí)如何使用帶有 IC MAX7219 的 8×8 點陣 LED 模塊。最后,您將能夠輕松地、固定或滾動地在一個或多個點陣上顯示任何形狀或文本,僅使用 4 個 arduino 數(shù)字引腳。

你將學(xué)到什么:

  • 什么是點陣LED
  • 如何在 Arduino 上使用點陣 LED
  • 在點陣 LED 模塊上顯示特定形狀
  • 級聯(lián)兩個點陣 LED

?

?
pYYBAGOrzIiAJ-v8AAF6OxhtH9E941.jpg
?

什么是點陣?

ot Matrix LED 8×8 是一個 LED 陣列,您可以在其上顯示特定的數(shù)字、字母和形狀。點陣由行數(shù)和列數(shù)表示。最受歡迎的點陣類型是其 8×8 類型,它提供 8 行 8 列的 64 個 LED。

?

?
poYBAGOrzIqAexwTAADYAJyMS_w717.png
?

要簡單地控制8×8點陣,你應(yīng)該將每一行和每一列連接到一個數(shù)字引腳,這意味著你需要16個數(shù)字引腳!所以這不是一個正確的方法。

要控制點陣,有一些基于 MAX72xx ICS 的模塊需要連接到 4 個數(shù)字引腳而不是 16 個。您還可以將多個點陣(最多 8 個)相互連接,而無需任何額外的引腳并將它們級聯(lián)。

?

?
pYYBAGOrzI-APmWGAADxTena70M013.jpg
?

如何使用 Arduino 連接點陣模塊

電路

要將點陣連接到Arduino,只需將Vcc和GND引腳連接到5V和GND Arduino,點陣的DIN、CS和CLK引腳可以連接到arduino的任何數(shù)字引腳。

?

?
poYBAGOrzJGAJYz0AADxhK87f_k445.jpg
?

代碼

點陣和 Arduino 有各種庫。LedcontrolMaxMatrix是兩個最常見的庫,它們具有相同的結(jié)構(gòu)。

現(xiàn)在將以下代碼上傳到您的 Arduino 板上。

/*
 8x8 Dot Matrix w/ MAX7219
 modified on 7 March 2019
 by Saeed Hosseini @ Electropeak
 https://electropeak.com/learn/
*/
#include int DIN = 7;
int CLK = 6;
int CS = 5;
int maxInUse = 1;
byte buffer[20];
char text[] = "a";
MaxMatrix m(DIN, CS, CLK, maxInUse);
void setup() {
 m.init();
 m.setIntensity(8);
}
void loop() {
 m.setDot(0, 7, true);
 m.setDot(0, 7, true);
 delay(1000);
 m.setDot(7, 0, true);
 delay(1000);
 m.setColumn(3, B11110000);
 delay(1000);
 m.setColumn(4, B00001111);
 delay(1000);
 m.clear();
 delay(1000);
} 

該庫的一些最重要的功能如下:

?

?
poYBAGOrzJeAFlkYAAD9BuRt5pU800.png
?

在點陣上顯示特定形狀

要在點陣上顯示您的特定形狀,只需將 LED 燈圖案轉(zhuǎn)換為位串即可。為此,您可以從此類在線工具中獲得幫助。設(shè)計您的形狀并將生成的代碼復(fù)制到 Arduino,然后將其上傳到您的板上。

/*
 8x8 Dot Matrix w/ MAX7219
 modified on 7 March 2019
 by Saeed Hosseini @ Electropeak
 https://electropeak.com/learn/
*/
#include int DIN = 7;
int CLK = 6;
int CS = 5;
int maxInUse = 1;
MaxMatrix m(DIN, CS, CLK, maxInUse);
byte poker[] = {8, 8,
               0xff,
               0x81,
               0xa5,
               0xa1,
               0xa1,
               0xa5,
               0x81,
               0xff
              };
byte smile[] = {8, 8,
               0xff,
               0x81,
               0xb5,
               0xa1,
               0xa1,
               0xb5,
               0x81,
               0xff
              };
byte sad[] = {8, 8,
             0xff,
             0x81,
             0xb5,
             0x91,
             0x91,
             0xb5,
             0x81,
             0xff
            };
byte kiss[] = {8, 8,
              0xff,
              0x81,
              0xb5,
              0xb1,
              0xb1,
              0xb5,
              0x81,
              0xff
             };
void setup() {
 m.init();
 m.setIntensity(8);
}
void loop() {
 m.writeSprite(0, 0, smile);
 delay(1000);
 m.clear();
 m.writeSprite(0, 0, poker);
 delay(1000);
 m.clear();
 m.writeSprite(0, 0, sad);
 delay(1000);
 m.clear();
 m.writeSprite(0, 0, kiss);
 delay(1000);
 for (int i = 0; i < 8; i++) {
   m.shiftLeft(false, false);
   delay(300);
 }
 m.clear();
} 

?

?

您還可以通過此方法創(chuàng)建和顯示數(shù)字和字母。

要插入常見的數(shù)字、字母和符號,您可以使用以下字符串和函數(shù):

#include byte buffer[10];
PROGMEM const unsigned char CH[] = {
3, 8, B00000000, B00000000, B00000000, B00000000, B00000000, // space
1, 8, B01011111, B00000000, B00000000, B00000000, B00000000, // !
3, 8, B00000011, B00000000, B00000011, B00000000, B00000000, // "
5, 8, B00010100, B00111110, B00010100, B00111110, B00010100, // #
4, 8, B00100100, B01101010, B00101011, B00010010, B00000000, // $
5, 8, B01100011, B00010011, B00001000, B01100100, B01100011, // %
5, 8, B00110110, B01001001, B01010110, B00100000, B01010000, // &
1, 8, B00000011, B00000000, B00000000, B00000000, B00000000, // '
3, 8, B00011100, B00100010, B01000001, B00000000, B00000000, // (
3, 8, B01000001, B00100010, B00011100, B00000000, B00000000, // )
5, 8, B00101000, B00011000, B00001110, B00011000, B00101000, // *
5, 8, B00001000, B00001000, B00111110, B00001000, B00001000, // +
2, 8, B10110000, B01110000, B00000000, B00000000, B00000000, // ,
4, 8, B00001000, B00001000, B00001000, B00001000, B00000000, // -
2, 8, B01100000, B01100000, B00000000, B00000000, B00000000, // .
4, 8, B01100000, B00011000, B00000110, B00000001, B00000000, // /
4, 8, B00111110, B01000001, B01000001, B00111110, B00000000, // 0
3, 8, B01000010, B01111111, B01000000, B00000000, B00000000, // 1
4, 8, B01100010, B01010001, B01001001, B01000110, B00000000, // 2
4, 8, B00100010, B01000001, B01001001, B00110110, B00000000, // 3
4, 8, B00011000, B00010100, B00010010, B01111111, B00000000, // 4
4, 8, B00100111, B01000101, B01000101, B00111001, B00000000, // 5
4, 8, B00111110, B01001001, B01001001, B00110000, B00000000, // 6
4, 8, B01100001, B00010001, B00001001, B00000111, B00000000, // 7
4, 8, B00110110, B01001001, B01001001, B00110110, B00000000, // 8
4, 8, B00000110, B01001001, B01001001, B00111110, B00000000, // 9
2, 8, B01010000, B00000000, B00000000, B00000000, B00000000, // :
2, 8, B10000000, B01010000, B00000000, B00000000, B00000000, // ;
3, 8, B00010000, B00101000, B01000100, B00000000, B00000000, // < 3, 8, B00010100, B00010100, B00010100, B00000000, B00000000, // = 3, 8, B01000100, B00101000, B00010000, B00000000, B00000000, // >
4, 8, B00000010, B01011001, B00001001, B00000110, B00000000, // ?
5, 8, B00111110, B01001001, B01010101, B01011101, B00001110, // @
4, 8, B01111110, B00010001, B00010001, B01111110, B00000000, // A
4, 8, B01111111, B01001001, B01001001, B00110110, B00000000, // B
4, 8, B00111110, B01000001, B01000001, B00100010, B00000000, // C
4, 8, B01111111, B01000001, B01000001, B00111110, B00000000, // D
4, 8, B01111111, B01001001, B01001001, B01000001, B00000000, // E
4, 8, B01111111, B00001001, B00001001, B00000001, B00000000, // F
4, 8, B00111110, B01000001, B01001001, B01111010, B00000000, // G
4, 8, B01111111, B00001000, B00001000, B01111111, B00000000, // H
3, 8, B01000001, B01111111, B01000001, B00000000, B00000000, // I
4, 8, B00110000, B01000000, B01000001, B00111111, B00000000, // J
4, 8, B01111111, B00001000, B00010100, B01100011, B00000000, // K
4, 8, B01111111, B01000000, B01000000, B01000000, B00000000, // L
5, 8, B01111111, B00000010, B00001100, B00000010, B01111111, // M
5, 8, B01111111, B00000100, B00001000, B00010000, B01111111, // N
4, 8, B00111110, B01000001, B01000001, B00111110, B00000000, // O
4, 8, B01111111, B00001001, B00001001, B00000110, B00000000, // P
4, 8, B00111110, B01000001, B01000001, B10111110, B00000000, // Q
4, 8, B01111111, B00001001, B00001001, B01110110, B00000000, // R
4, 8, B01000110, B01001001, B01001001, B00110010, B00000000, // S
5, 8, B00000001, B00000001, B01111111, B00000001, B00000001, // T
4, 8, B00111111, B01000000, B01000000, B00111111, B00000000, // U
5, 8, B00001111, B00110000, B01000000, B00110000, B00001111, // V
5, 8, B00111111, B01000000, B00111000, B01000000, B00111111, // W
5, 8, B01100011, B00010100, B00001000, B00010100, B01100011, // X
5, 8, B00000111, B00001000, B01110000, B00001000, B00000111, // Y
4, 8, B01100001, B01010001, B01001001, B01000111, B00000000, // Z
2, 8, B01111111, B01000001, B00000000, B00000000, B00000000, // [
4, 8, B00000001, B00000110, B00011000, B01100000, B00000000, // \ backslash
2, 8, B01000001, B01111111, B00000000, B00000000, B00000000, // ]
3, 8, B00000010, B00000001, B00000010, B00000000, B00000000, // hat
4, 8, B01000000, B01000000, B01000000, B01000000, B00000000, // _
2, 8, B00000001, B00000010, B00000000, B00000000, B00000000, // `
4, 8, B00100000, B01010100, B01010100, B01111000, B00000000, // a
4, 8, B01111111, B01000100, B01000100, B00111000, B00000000, // b
4, 8, B00111000, B01000100, B01000100, B00101000, B00000000, // c
4, 8, B00111000, B01000100, B01000100, B01111111, B00000000, // d
4, 8, B00111000, B01010100, B01010100, B00011000, B00000000, // e
3, 8, B00000100, B01111110, B00000101, B00000000, B00000000, // f
4, 8, B10011000, B10100100, B10100100, B01111000, B00000000, // g
4, 8, B01111111, B00000100, B00000100, B01111000, B00000000, // h
3, 8, B01000100, B01111101, B01000000, B00000000, B00000000, // i
4, 8, B01000000, B10000000, B10000100, B01111101, B00000000, // j
4, 8, B01111111, B00010000, B00101000, B01000100, B00000000, // k
3, 8, B01000001, B01111111, B01000000, B00000000, B00000000, // l
5, 8, B01111100, B00000100, B01111100, B00000100, B01111000, // m
4, 8, B01111100, B00000100, B00000100, B01111000, B00000000, // n
4, 8, B00111000, B01000100, B01000100, B00111000, B00000000, // o
4, 8, B11111100, B00100100, B00100100, B00011000, B00000000, // p
4, 8, B00011000, B00100100, B00100100, B11111100, B00000000, // q
4, 8, B01111100, B00001000, B00000100, B00000100, B00000000, // r
4, 8, B01001000, B01010100, B01010100, B00100100, B00000000, // s
3, 8, B00000100, B00111111, B01000100, B00000000, B00000000, // t
4, 8, B00111100, B01000000, B01000000, B01111100, B00000000, // u
5, 8, B00011100, B00100000, B01000000, B00100000, B00011100, // v
5, 8, B00111100, B01000000, B00111100, B01000000, B00111100, // w
5, 8, B01000100, B00101000, B00010000, B00101000, B01000100, // x
4, 8, B10011100, B10100000, B10100000, B01111100, B00000000, // y
3, 8, B01100100, B01010100, B01001100, B00000000, B00000000, // z
3, 8, B00001000, B00110110, B01000001, B00000000, B00000000, // {
1, 8, B01111111, B00000000, B00000000, B00000000, B00000000, // |
3, 8, B01000001, B00110110, B00001000, B00000000, B00000000, // }
4, 8, B00001000, B00000100, B00001000, B00000100, B00000000, // ~
 };
void printCharWithShift(char c, int shift_speed) {
if (c < 32) return;
c -= 32;
memcpy_P(buffer, CH + 7 * c, 7);
m.writeSprite(32, 0, buffer);
m.setColumn(32 + buffer[0], 0);
?  for (int i = 0; i < buffer[0] + 1; i++)
{
delay(shift_speed);
m.shiftLeft(false, false);
}
}
void printStringWithShift(char* s, int shift_speed) {
while (*s != 0) {
printCharWithShift(*s, shift_speed);
s++;
}
}
void printString(char* s)
{
int col = 0;
while (*s != 0)
{
if (*s < 32) continue;
char c = *s - 32;
memcpy_P(buffer, CH + 7 * c, 7);
m.writeSprite(col, 0, buffer);
m.setColumn(col + buffer[0], 0);
col += buffer[0] + 1;
s++;
}
}

?

級聯(lián)兩個點陣LED模塊

點陣模塊的一個有趣特性是能夠連接多個(最多 8 個)模塊并在其上顯示級聯(lián)信息。

電路

為此,將第一個模塊的 Dout 連接到下一個模塊的Din ,并將具有相同名稱的其他引腳相互連接。

?

?
pYYBAGOrzJqACNYBAAFhHk2zMwQ469.jpg
?

代碼

現(xiàn)在將以下代碼上傳到您的 Arduino 并查看結(jié)果。

/*
 8x8 Dot Matrix w/ MAX7219
 modified on 7 March 2019
 by Saeed Hosseini @ Electropeak
 https://electropeak.com/learn/
*/
#include int DIN = 7;
int CLK = 6;
int CS = 5;
int maxInUse = 2;
MaxMatrix m(DIN, CS, CLK, maxInUse);
byte pakman[] = {8, 8, 0x1c, 0x22, 0x41, 0x49, 0x55, 0x22, 0x00, 0x08};
void setup() {
 m.init();
 m.setIntensity(2);
}
void loop(){
 m.writeSprite(0, 0, pakman);
 delay(300);
 for (int i = 0; i < 8; i++) {
   m.shiftRight(false, true);
   delay(300);
 }
 m.clear();
} 

?

?

筆記

不要忘記您只是直接對第一個模塊進行編程。

?

?

?


led MAX7219 Arduino
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1耗盡型MOS FET產(chǎn)品目錄選型表
  2. 0.14 MB   |  2次下載  |  免費
  3. 2TI系列-米爾TI AM62L核心板開發(fā)板-高能效低功耗嵌入式平臺
  4. 1.51 MB  |  次下載  |  免費
  5. 3WILLSEMI韋爾20年半年度報告由代理分銷經(jīng)銷一級代理分銷經(jīng)銷
  6. 3.30 MB  |  次下載  |  免費
  7. 4LRC 樂山無線電InTWSApplications家電由原廠代理分銷經(jīng)銷一級代理分銷經(jīng)銷供應(yīng)
  8. 85.84 KB  |  次下載  |  免費
  9. 5LAT1596 一文說明白 STM32G4 雙 Bank 啟動與升級
  10. 0.64 MB   |  次下載  |  5 積分
  11. 6LAT1594_基于事件喚醒低功耗之介紹
  12. 0.37 MB   |  次下載  |  5 積分
  13. 7PT8P2309 觸控 A/D 型 8-Bit MCU規(guī)格書
  14. 4.05 MB   |  次下載  |  免費
  15. 8PT8P2308 觸控 A/D 型 8-Bit MCU規(guī)格書
  16. 4.13 MB   |  次下載  |  免費

本月

  1. 1美的電磁爐電路原理圖資料
  2. 4.39 MB   |  19次下載  |  10 積分
  3. 2反激式開關(guān)電源設(shè)計解析
  4. 0.89 MB   |  11次下載  |  5 積分
  5. 3耗盡型MOS FET產(chǎn)品目錄選型表
  6. 0.14 MB   |  2次下載  |  免費
  7. 4簡易光伏控制器原理圖資料
  8. 0.07 MB   |  1次下載  |  5 積分
  9. 52EDL05x06xx系列 600V半橋門驅(qū)動器帶集成自舉二極管(BSD)手冊
  10. 0.69 MB   |  1次下載  |  免費
  11. 6國產(chǎn)千兆網(wǎng)口芯片PT153S中文資料
  12. 1.35 MB   |  次下載  |  免費
  13. 7斯丹電子 | 用于芯片測試系統(tǒng)的射頻干簧繼電器
  14. 5.11 MB  |  次下載  |  免費
  15. 8SFI立昌ESD/TVS管原廠代理分銷經(jīng)銷一級代理分銷經(jīng)銷
  16. 294.76 KB  |  次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935137次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233095次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費下載
  8. 340992  |  191448次下載  |  10 積分
  9. 5十天學(xué)會AVR單片機與C語言視頻教程 下載
  10. 158M  |  183360次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81605次下載  |  10 積分
  13. 7Keil工具MDK-Arm免費下載
  14. 0.02 MB  |  73829次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65991次下載  |  10 積分