Lập trình led matrix 8x8

KẾT NỐI LED MA TRẬN 8x8 VỚI ARDUINO, led ma trận 8x8 là led gì? led ma trận 8x8 hoạt động như cầm nào? kết cấu led ma trận 8x8

 

KẾT NỐI LED MA TRẬN 8x8 VỚI ARDUINO

màn hình ma trận LED hoàn toàn có thể được áp dụng để hiển thị phần đông các cam kết tự với hình vẽ. Phần nhiều các bảng biển LED văn minh sử dụng các loại bảng ma trận không giống nhau được lập trình bằng vi điều khiển. Trong khuyên bảo này, họ sẽ liên kết để tiếp xúc một ma trận LED 8 × 8 màu tốt nhất với Arduino với hiển thị một vài cam kết tự vào đó. Ma trận 8 × 8 bao hàm 64 chấm led ( rất có thể gọi 64 chấm điểm ảnh này là các pixel). Mỗi đèn led là mỗi pixel và những đèn LED này được liên kết với tổng thể 16 chân. Bạn có thể xác định sơ vật chân với sơ thứ mạch của nó bởi hình bên dưới đây.

Bạn đang xem: Lập trình led matrix 8x8

*

C1 mang đến C8 là các chân cột

R 1 cho R8 - là chân hàng

Ta hoàn toàn có thể thấy sinh sống sơ đồ bên phải các chân Anode (chân cực dương của led) trên thuộc 1 mặt hàng được nối tầm thường với nhau, tương tự các chân Cathode (chân cực âm của led) trên cùng một cột được nối chung với nhau. Đó là những chân của led ma tran 8x8 (8 sản phẩm x 8 cột). Nếu một điện áp dương được để vào chân R1 cùng âm mang lại C1, chúng ta có thể thấy px (hay led) trước tiên sáng. Nếu bọn họ đặt năng lượng điện áp mức thấp cho C2 thì px thứ nhị (led thứ 2 hàng 1) vẫn bật. Với phương pháp này này, bạn cũng có thể bật sáng các px tuỳ ý. Để thao tác này dễ ợt hơn, bọn họ sẽ sử dụng Arduino để điều khiển và tinh chỉnh các chân của ma trận led 8x8.

Sơ đồ kết nối led ma trận 8x8 với Arduino

*

Như bạn cũng có thể thấy trong sơ đồ, từng chân cột được kết nối với chân Arduino thông qua điện trở 220Ω. Tất cả các chân sản phẩm được liên kết với một trong những chân áp ra output của IC 74HC595N (được sử dụng như một thanh ghi dịch).

Xem thêm: Ket Qua Bong Da Đêm Qua, Kqbd Đêm Qua, Kq Tỷ Số Tối Qua, Kết Quả Bóng Đá Hôm Nay

Các ký trường đoản cú được hiển thị bằng cách sử dụng những kỹ thuật ghép kênh. Thanh ghi dịch được kết nối với Arduino qua 3 chân dữ liệu (SER), chân chốt (RCLK) và chân xung clock (SRCLK).

Chương trình điều khiển

 int latchPin = 4; // khai báo những chân kết nối thanh ghi dịch

int clockPin = 5;

int dataPin = 3;

int pins <8> = 6, 7, 8, 9, 10, 11, 12, 13; // những chân cathode chung

byte A<8> = B00000000, // mã để hiển thị cam kết tự tương xứng lên led ma trận

B00011000,// các mã này chúng ta cũng có thể tự viết tuỳ yêu cầu ký trường đoản cú hiển thị trông như thế nào

B00100100,

B01000010,

B01111110,

B01000010,

B01000010,

B00000000

;

 

byte B<8> = B00000000,

B11111100,

B10000010,

B10000010,

B11111100,

B10000010,

B10000010,

B11111110

;

 

byte blank<8> = B00000000,

B00000000,

B00000000,

B00000000,

B00000000,

B00000000,

B00000000,

B00000000

;

byte R<8> = B00000000,

B01111000,

B01000100,

B01000100,

B01111000,

B01010000,


*

B01001000,

B01000100

;

 

 

void setup()

Serial.begin(9600); // dữ liệu code vẫn lập trình từ máy tính xách tay nạp vào Arduino với vận tốc 9600 baud rate

pinMode(latchPin, OUTPUT); // cấu hình các chân là ngõ ra

pinMode(clockPin, OUTPUT);

pinMode(dataPin, OUTPUT);

for (int i = 0; i

pinMode(pins, OUTPUT);

digitalWrite(pins, HIGH);

 

}

 

void loop()

 

 

 

for (int k = 0; k

display_char(A);

 

 

for (int k = 0; k

display_char(B);

 

}

for (int k = 0; k

display_char(R);

 

}

}

void display_char(byte ch<8>) { // cách thức ghép kênh

for (int j = 0; j

digitalWrite(latchPin, LOW);

digitalWrite(pins, LOW);

 

shiftOut(dataPin, clockPin, LSBFIRST, ch);

digitalWrite(latchPin, HIGH);

//delay(1);

digitalWrite(latchPin, LOW);

shiftOut(dataPin, clockPin, LSBFIRST, B00000000); //tắt không còn led trước khi hiển thị cam kết tự tiếp theo