Sau 1 thời gian nghiên cứu và phân tích và code thành công điều khiển module led matrix P10, hôm nay mình xin mạo muội viết tut bé dại hướng dẫn các bạn cách tinh chỉnh và điều khiển P10.Đây là thành quả của mình
*
Đầu tiên họ hãy coi hình ảnh thực gắng của P10
*
- Module 16x32 1-1 sắc tất cả 16 hàng và 32 cột,có 16 con 74hc595 là ic ghi dịch 8 bit mắc nối liền nhau.
*
- tất cả các chân anot của mỗi hàng được nối tầm thường vào nhau , được cấp điện qua Mofet cùng ic 74hc138- 4 bé 74hc595 trên thuộc phụ trách bật tắt 4 hàng led trên cùng là 1,2,3,4. Rõ ràng con 1 tắt bật 8 led đầu tiên,con 2 bật và tắt 8 led tiếp,con 3 bật tắt 8 led tiếp theo,con 3 tắt bật 8 led cuối cùng- 4 con 74hc595 tếp theo phụ trách bật và tắt 4 sản phẩm led là 5,6,7,8. Cụ thể con 5 bật tắt 8 led đầu tiên,con 6 tắt bật 8 led tiếp sau ,con 7 tắt bật 8 led tiếp theo,con 8 tắt bật 8 led cuối cùng- 4 con 74hc595 tếp theo phụ trách bật và tắt 4 sản phẩm led là 9,10,11,12. Ví dụ con 9 bật tắt 8 led đầu tiên,con 10 bật và tắt 8 led tiếp theo ,con 11 bật tắt 8 led tiếp theo,con 12 bật và tắt 8 led cuối cùng- 4 nhỏ 74hc595 ở đầu cuối phụ trách bật tắt 4 hàng led là 13,14,15,16. Rõ ràng con 13 bật tắt 8 led đầu tiên,con 14 bật tắt 8 led tiếp sau ,con 15 bật và tắt 8 led tiếp theo,con 16 tắt bật 8 led cuối cùng- tài liệu được truyền như sau:
*
Dữ liệu truyền theo kiểu từ trên xuống, từ buộc phải sang trái, ban đầu từ nhỏ 74hc595 máy 4 -> sản phẩm 8 -> thứ 12 -> thứ 16 -> trang bị 3 -> thiết bị 7 ..... - cách quét led rất 1-1 giản, chỉ việc quét 4 phân phát là quét được toàn cục môdun, đối kháng giản ví dụ như sau:- cách quét led rất solo giản, chỉ cần quét 4 phát là quét được tổng thể môdun, đối kháng giản ví dụ như sau:
*
+ phát sản phẩm nhất: tắt hết những hàng, Truyền dữ liệu cho 74hc595 bật hàng số 1,5,9,13 ( phạt này quyét 4 hàng 1 lúc)+ phát đồ vật hai: tắt hết các hàng, Truyền dữ liệu cho 74hc595 nhảy hàng số 2,6,10,14 ( phát này quyét 4 hàng 1 lúc)+ phát thứ ba: tắt hết những hàng, Truyền dữ liệu cho 74hc595 bật hàng số 3,7,11,15 ( vạc này quyét 4 hàng 1 lúc)+ phát thiết bị tư: tắt hết những hàng, Truyền dữ liệu cho 74hc595 nhảy hàng số 4,8,12,16 ( vạc này quyét 4 mặt hàng 1 lúc)
*
( Code Full+ nguyên lý - Mạch in) links Mediafire
Khi thừa nhận nút "Tải Về Máy", các bạn sẽ vào trang quảng cáo, phấn kích chờ 5 giây. Nút
*
hiện ra ởgóc đề xuất phía trên, nhấn vào để cho trang downloadGiải ham mê chương trìnhKhai báo chân tinh chỉnh của 89s52 nối với modulesbit OE=P2^0;// chất nhận được 74hc138 xuất dữ liệusbit A138=P2^1;// chân dữ liệusbit B138=P2^2;// chân dữ liệusbit CLK=P2^3;// xung 74hc595sbit SCLK=P2^4;// chốt 74hc595sbit DATA=P2^5;// dữ liệu 74hc595Module tất cả 16 hàng, có 32 cột, vị mỗi 74hc595 tinh chỉnh 8 cột lên ta bao gồm 32/8=4Ta vẫn khai báo như sau:#define so_hang 16#define so_led 4Ta sẽ khái niệm kiểu dữ liệu như sautypedef unsigned char uchar;Ta đang lưu dữ liệu màn hình hiển thị vào một mảng giữ trong RAM khớp ứng với số hàng và số ledidata uchar Dmem;Có rất nhiều cách tinh chỉnh và điều khiển 74hc595, do thói quen đề nghị mình viết như sauvoid dk595(uchar x)uchar temp,i;for(i=0;itemp=x;temp=temp&0x80;if(temp==0x80) DATA=1; else DATA=0;CLK=1;CLK=0;x=x*2;Để 74hc595 xuất dữ liệu sau thời điểm dịch dữ liệu hoàn thành thì ta yêu cầu chốt lạivoid chot595()SCLK=1;SCLK=0;Do module quét theo phương pháp ¼ nên mỗi lần quét thì sẽ sở hữu 4 sản phẩm sáng cùng lúc.void dk138(uchar h,uchar enoe)switch(h)case 0: A138=0;B138=0;break;case 1: A138=1;B138=0;break;case 2: A138=0;B138=1;break;case 3: A138=1;B138=1;break;OE=enoe;Biến h có nghĩa là hàng số mấy, đổi mới enoe có thể chấp nhận được 74hc138 xuất dữ liệu hay không.Hoc_master_p10_ (2).png


Bạn đang xem: Thiết kế mạch điều khiển module led matrix p10

Do có nhiều 74hc595 tiếp liền nhau, phải cái gì đẩy vào đầu tiên, sau khoản thời gian chốt thì nó sẽ ở con cuối cùng.Căn cứ vào hướng dịch dữ liệu của module, ta tất cả chương trình như sauvoid dichdl()uchar i,j,k;for(k=0;kfor(j=0;jfor(i=0;idk595(Dmem<12+k*2-(k+i*4)>);chot595();dk138(k,1);delay(50);dk138(k,0);delay(50);Để kiểm tra xem ta dịch đúng hướng dữ liệu chưa, ta sẽ có được code bình chọn nếu sản phẩm chẵn thì chỉ 1 led sáng, sản phẩm lẻ thì cả hàng sángvoid test_led()uchar i,j;for(i=0;ifor(j=0;jif(i%2==0) Dmem=0x00; else Dmem=~0x01;Chương trình chínhvoid main()test_led();while(1)dichdl();Để tạo ra font đến led matrix, các bạn sử dụng phần mềm LCD fonts Maker.Các bạn chỉ cần nhập chữ ý muốn hiển thị vào ô char input, muốn biến đổi font chữ kích vào Choose fonts và lựa chọn tùy ý muốn
*
Sau lúc đã lựa chọn được font theo ý muốn, các bạn nhấ vào hình thiết lập đặt, kề bên ngôi đơn vị vào lựa chọn hướng dữ liệu như hình.
*
Sau đó bấm vào hình khu nhà ở để tạo nên mã led. Nhấp vào copy all để xào luộc mã led
Chúc thành công.Theo Mai Ngoc Hoc

Module led ma trận P10 form size 16×32. Từng led là 1 px cách nhau 1 centi mét. Cấu trúc của module này bao gồm :

16 IC ghi dịch 8 bit 74hc595 1 IC ghi đệm mẫu 74hc245 1 IC vào 3 ra 8 74hc138 4 bé FET kích 16 mặt hàng ( 1 còn kéo 4 hàng) 2 jump kết nối 2×8. 1 cái là nguồn vào dữ liệu, 1 loại là áp ra output ( để mắc tiếp nối với tấm khác)

Sơ vật chân và tính năng


*

OE : Đây là chân điều khiển và tinh chỉnh IC 138. Trường hợp nó OE=0 thì IC 138 ko hoạt động. Toàn bộ các hàng số đông không sáng ( cả biển cả LED đã tắt). Còn OE vuốt lên 1 thì đại dương led sẽ được phép sáng (nó hệt như 1 chiếc actomat tổng vậy). Bởi vậy chân này có 2 nhiệm vụ là quét led, và băm xung PWM tinh chỉnh độ sáng sủa của bảng LED. 2 chân A cùng B : 2 chân này sẽ điều khiển ngõ ra của ic 138, thực chất nó còn chân C nhưng chân này được nối thằng xuống mass rồi (ta không thực hiện chân này). Khi A=B=0 thì mặt hàng 1,5,9,13 sẽ tiến hành tích cực. Khi A=1,B=0 thì sản phẩm 2,6,10,14 được tích cực. Khi A=0, B=1 thì mặt hàng 3,7,11,15 được tích cực. Lúc A=B=1 thì hàng 4,8,12,16 được tích cực. Đọc mang lại đây nếu vẫn biết qua về quét LED chắc các bạn sẽ hiểu ngay lập tức module này chỉ quét 4 phạt là quét ngừng cả bảng. ( 1 phát quét bao gồm 4 hàng sáng, 16 hàng nên tất cả 4 lần quét) CLK : Chân tạo nên xung đẩy tài liệu vào HC595 SCLK : Chân tạo nên xung xuất dữ liệu trong HC595 ra phía bên ngoài DATA (R) : Chân dữ liệu

Cái jump 2×8 đối diện nó cũng đều có sơ đồ dùng y chang và các chân OE, A, B, CLK, SCLK của 2 jump thực ra nối thông với nhau. Duy chỉ có chân DATA là không giống nhau. DATA của jump 2×8 (vào) thì nó nối cùng với chân 14 của 74hc595 sản phẩm công nghệ 1. Còn DATA của chiếc jump 2×8 (ra) nó nối với chân 9 của con 74hc595 trang bị 16

các hàng của Module được kích bởi 4 con FET. Kết cấu của module này khá dễ dàng thế thôi. Hiện nay mình sẽ trình bày về chiều đi của dữ liệu. Chúng ta nhìn vào khía cạnh LED của module. Tài liệu sẽ đi từ buộc phải sang, từ trên xuống.


*

Ảnh trên biểu đạt chiều đi của dữ liệu. Mỗi ô vuông là một trong những ic 74HC595 cùng được tấn công số từ là một đến 16. Từng 1 ic như bên trên sẽ tinh chỉnh và điều khiển 4 mặt hàng led và 8 cột led. Ví dụ ic tiên phong hàng đầu sẽ điều khiển được 4 số 1 8 cột led ko kể cùng bên tay phải. Số lượng 2 sẽ tinh chỉnh và điều khiển 4 sản phẩm led tiếp theo của 8 cột ko kể cùng bên phải. Cứ thế chúng ta tự tính tiếp nhé.


*

phương pháp quét LED

Do module quét 1/4. Mà tổng số led của module 16×32 là 512 led yêu cầu trong 1 thời điểm ta tinh chỉnh 512*1/4 = 128 LEDNói dễ dàng và đơn giản bạn buộc phải đẩy vào 128 bit tài liệu (16 byte) cho 1 phát quét

phát 1 : Tắt OE . Gởi 16 byte vào HC595 -> bật ánh sáng hàng 1 5 9 13 bằng cách đưa A=B=0, OE=1 phạt 2: Tắt OE . Gửi 16 byte tiếp theo sau vào HC595 -> chiếu sáng hàng 2 6 10 14 bằng phương pháp đưa A=1;B=0, OE=1 phân phát 3: Tắt OE . Gửi 16 byte tiếp theo vào HC595 -> bật ánh sáng hàng 3 7 11 15 bằng phương pháp đưa A=0;B=1, OE=1 phân phát 4: Tắt OE . Giữ hộ 16 byte tiếp theo sau vào HC595 -> chiếu sáng hàng 4 8 12 16 bằng cách đưa A=1;B=1, OE=1

Thế là dứt 1 chu kì quét rồi đó. Vày quét 1/4 đề nghị ta buộc phải 4 phát. Tựa như 1/8 thì 8 phát cùng 1/16 thì 16 phát. Lấy nghịch đảo chu kì quét này ta sẽ sở hữu được tần số quét ( tần số làm cho tươi) hãy chú ý tính toán làm thế nào cho tần số nằm ở tầm mức tối thiểu 120Hz đến đẹp nhé. ( tức là chu kì buổi tối đa cho 1 lần quét là 8ms)

Lập trình điều khiển

OK bây giờ mình cùng thử có tác dụng hiện 1 chữ gì đấy lên một lớp Matrix P10 nhé. Code bên dưới này thông thường chung không dành cho bất kì vi tinh chỉnh và điều khiển nào cả, mục đích là để các bạn hiểu phương pháp để điều khiển tấm LED này




Xem thêm: Những bài hát nói về tình yêu dành cho các cặp đôi ngày càng

#define OE PORTD.0#define _A PORTD.1#define _B PORTD.2#define clk PORTD.3#define xuat PORTD.4#define DS PORTD.5