Để làm bảng đèn quảng cáo, thường gồm các bước sau:
Bước 1: Làm bảng chữ, Thí dụ như bảng chữ cửa hàng điện tử Phúc Lan có hình như sau.
Bước 2: Bạn khoan các lổ để gắn Led theo chữ theo hình, hay gắn Led theo các đường chữ (tùy theo ý của Bạn). Số Led của một đơn vị hình gắn theo từng nhánh (với Led siêu sáng, mỗi nhánh có 3 Led) và các nhánh cho mắc song song, mỗi nhánh có một điện trở hạn dòng và sau cùng một con chữ (một đơn vị hình) sẽ chỉ có 2 dây. Một dây nối vào nguồn +12V và dây còn lại Bạn nối vào chân C của các transistor thúc.
14 trang |
Chia sẻ: maiphuongtt | Lượt xem: 1889 | Lượt tải: 3
Bạn đang xem nội dung tài liệu Một gợi ý về cách làm bảng đèn quảng cáo (led quảng cáo), để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Một gợi ý về cách làm bảng đèn quảng cáo. (led quảng cáo)
Để làm bảng đèn quảng cáo, thường gồm các bước sau:Bước 1: Làm bảng chữ, Thí dụ như bảng chữ cửa hàng điện tử Phúc Lan có hình như sau.Bước 2: Bạn khoan các lổ để gắn Led theo chữ theo hình, hay gắn Led theo các đường chữ (tùy theo ý của Bạn). Số Led của một đơn vị hình gắn theo từng nhánh (với Led siêu sáng, mỗi nhánh có 3 Led) và các nhánh cho mắc song song, mỗi nhánh có một điện trở hạn dòng và sau cùng một con chữ (một đơn vị hình) sẽ chỉ có 2 dây. Một dây nối vào nguồn +12V và dây còn lại Bạn nối vào chân C của các transistor thúc.Với Bảng đèn này, chúng ta lấy 11 đơn vị hình cho chữ PHÚC LAN, 1 đơn vị hình cho chữ ĐIỆN, 1 đơn vị hình cho chữ TỬ và 1 đơn vị hình cho khung. Tổng cộng là 14 đơn vị hình.Bước 3: Tính điện trở hạn dòng cho các nhánh Led và tính dòng cung cấp của các transistor thúc.Trên thị trường có 2 loại Led. Loại Led thường, có mức ghim áp khoảng 2V và loại Led siêu sáng có mức ghim áp là 3V. Vậy dùng luật Ohm Bạn dễ dàng tính được trị của điện trở hạn dòng R (Bạn xem hình).Dùng luật Ohm để tính điện trở hạn dòng trên nhánh chỉ có 1 Led.Hình sau đây cho thấy, cách dùng luật Ohm tính điện trở hạn dòng cho nhánh có nhiều Led mắc nối tiếp. Sau đây là hình cho thấy các mắc song song nhiều nhánh cho một đơn vị hình trên bảng đèn quảng cáo. Trên mỗi nhánh đều có một điện trở hạn dòng riêng.Đến đây có thể nói Bạn đã làm xong phần cứng gồm bảng đèn và bo vi điều khiển, Bây giờ hãy nói đến cách viết phần mềm cho bảng đèn quảng cáo trên.Bước 4: Cách viết câu lệnh điều khiển bảng đèn quảng cáo.Trước hết, Bạn hãy xem hình cho thấy cách chúng ta chọn định các chân để điều khiển bảng đèn quảng cáo:Hình vẽ cho thấy các đơn vị hình được điều khiển bởi các chân của port 2, port 0. Chúng ta dùng:Chân p2.0 để tắt mở cho chữ PChân p2.1 để tắt mở cho chữ HChân p2.2 để tắt mở cho chữ ÚChân p2.3 để tắt mở cho chữ CChân p2.4 để tắt mở cho chữ LChân p2.5 để tắt mở cho chữ AChân p2.6 để tắt mở cho chữ NChân p2.7 để tắt mở cho chữ SChân p0.0 để tắt mở cho chữ HChân p0.1 để tắt mở cho chữ OChân p0.2 để tắt mở cho chữ PChân p0.3 để tắt mở cho chữ ĐiệnChân p0.4 để tắt mở cho chữ TửChân p0.5 để tắt mở cho chữ Sau khi đã chọn định xong phân cứng chúng ta bắt đầu viết các chương trình con cho các kiểu nháy của bảng đèn.Kiểu sáng chữ P với bit 1 trên chân p2.0Kiểu tắt chữ P với bit 0 trên chân p2.0Kiểu sáng chữ H với bit 1 trên chân p2.1Kiểu tắt chữ H với bit 0 trên chân p2.1Kiểu sáng chữ Ú với bit 1 trên chân p2.2Kiểu tắt chữ Ú với bit 0 trên chân p2.2Kiểu sáng chữ C với bit 1 trên chân p2.3Kiểu tắt chữ C với bit 0 trên chân p2.3Kiểu sáng chữ L với bit 1 trên chân p2.4Kiểu tắt chữ L với bit 0 trên chân p2.4Kiểu sáng chữ A với bit 1 trên chân p2.5Kiểu tắt chữ A với bit 0 trên chân p2.5Kiểu sáng chữ N với bit 1 trên chân p2.6Kiểu tắt chữ N với bit 0 trên chân p2.6Kiểu sáng chữ S với bit 1 trên chân p2.7Kiểu tắt chữ S với bit 0 trên chân p2.7Kiểu sáng chữ H với bit 1 trên chân p0.0Kiểu tắt chữ H với bit 0 trên chân p0.0Kiểu sáng chữ O với bit 1 trên chân p0.1Kiểu tắt chữ O với bit 0 trên chân p0.1Kiểu sáng chữ P với bit 1 trên chân p0.2Kiểu tắt chữ P với bit 0 trên chân p0.2Kiểu sáng chữ Điện với bit 1 trên chân p0.3Kiểu tắt chữ Điện với bit 0 trên chân p0.3Kiểu sáng chữ Tử với bit 1 trên chân p0.4Kiểu tắt chữ Tử với bit 0 trên chân p0.4Kiểu sáng [khung bảng] với bit 1 trên chân p0.5Kiểu tắt [khung bảng] với bit 0 trên chân p0.5Kiểu sáng từng chữ P - H - Ú - C - L - A - N - S - H - O - P - Điện - Tử - [Khung] với bit 1.Kiểu tắt từng chữ P - H - Ú - C - L - A - N - S - H - O - P - Điện - Tử - [Khung] với bit 0Vậy các chương trình con sẽ viết như sau:xoabangden: ; chương trình xóa, làm tắt tất cả các Led trên bảng đèn.mov p2, #00000000b ; Cho port p2 về mức áp thấp để làm ngương dẫn các transistor thúc.mov p0, #00000000b ; Cho port p0 về mức áp thấp để làm ngương dẫn các transistor thúc.ret ; Quay lại sau lệnh call.sang_het_bang_den: ; chương trình làm sáng tất cả các Led trên bảng đèn.mov p2, #11111111b ; Cho đặt các chân transistor thúc lên mức áp cao.mov p0, #00111111b ; Cho đặt các chân transistor thúc lên mức áp cao.ret ; Quay lại sau lệnh call.phuc_sang: ; chương trình chỉ làm sáng chữ PHÚCmov p0, #00000000bmov p2, #00001111bretlan_sang: ; chương trình chỉ làm sáng chữ LANmov p0, #00000000bmov p2, #01110000bretshop_sang: ; chương trình chỉ làm sáng chữ SHOPmov p0, #00000111bmov p2, #10000000bretdien_sang: ; chương trình chỉ làm sáng chữ Điệnmov p0, #00000000bmov p2, #10000000brettu_sang: ; chương trình chỉ làm sáng chữ Tửmov p0, #00000001bmov p2, #00000000bretsang_chu_up: ; chương trình cho từng con chữ sáng lan lên qua bên phảimov p2, #00hmov p0, #00hcall delay setb p2.0call delaysetb p2.1call delaysetb p2.2call delaysetb p2.3call delaysetb p2.4call delaysetb p2.5call delaysetb p2.6call delaysetb p2.7call delaysetb p0.0call delaysetb p0.1call delaysetb p0.2call delaysetb p0.3call delaysetb p0.4rettat_chu_down: ; chương trình cho từng con chữ tắt lan qua bên trái.mov p2, #11111111bmov p0, #00011111b call delayclr p0.4call delay clr p0.3call delayclr p0.2call delayclr p0.1call delay clr p0.0call delayclr p2.7call delayclr p2.6call delay clr p2.5call delay clr p2.4call delay clr p2.3call delay clr p2.2call delayclr p2.1call delayclr p2.0call delayret* Đại thể công việc viết các kiểu nhấp nháy dùng câu lệnh đặt 1 (Set bit) để sáng hay đặt 0 (Clear bit) để tắt là như phần trình bày trên. * Bây giờ Bạn dùng phần mềm MIDE-51 để viết chương trình nguồn và chép lại với tên file có họ là .asm và cho biên dịch (với phím F9) để có file cùng tên, nhưng họ là .hex. * Đến đây chỉ việc dùng một hộp nạp mà Bạn có để nạp các mã lệnh vào bộ nhớ EEP-ROM của ic vi điều khiển AT89C51/52, rồi cắm ic vào bo ứng dụng là xong chuyện, sau này muốn thay đổi kiểu nháy thì viết thêm và làm tương tự, rất đơn giản phải không?Sau đây là các câu lệnh trong file bqc-1.asm:org 0000h ; Khởi đầu từ thanh nhớ reset.start: ; Đặt tên nhãn start.call xoabangden ; cho gọi chương trình xóa bảng đèn. call sang_het_bang_den ; Cho bảng đèn sáng hết.call delay ; bảng đèn tiếp tục sáng.call delay ; bảng đèn tiếp tục sáng.call xoabangden ; Cho bảng đèn tắt hết.call delay ; Bảng đèn đang tắt.call phuc_sang ; Cho chữ PHÚC phát sáng.call delay ; Chờ, lúc này chỉ có chữ PHÚC sáng.call lan_sang ; Cho chữ LAN phát sáng.call delay ; Chờ, lúc này có 2 chữ PHÚC và LAN sáng.call shop_sang ; Cho chữ SHOP phát sáng.call delay ; Chờ, lúc này có 3 chữ sáng là PHÚC LAN SHOPsetb p0.5 ; Cho chữ Điện phát sáng.setb p0.4 ; Cho chữ Tử phát sáng.setb p0.3 ; Cho khung phát sángcall delay ; Chờ, lúc này cả bảng đèn đều phát sáng.call delaycall xoabangdenmov r1, #20 ; Nạp số lần 20 và thanh ghi r1.tt_1: ; Đặt tên nhãn là tiếp tục 1. call sang_chu_up ; Gọi chương trình cho từng chữ trên bảng sáng lan lêncall delay ; chờ.call tat_chu_down ; Gọi chương trình cho tắt từ chữ trên bảng đèn.call delay ; chờdjnz r1, tt_1 ; Giảm trị trong r1, chưa bằng 0? nhẩy về tên nhãn tt_1call delay ; chờjmp start ; Quay lại từ đầu.xoabangden: ; Chương trình con dùng xóa hết bảng đèn.mov p2, #00000000bmov p0, #00000000bretsang_het_bang_den: ; Chương trình con dùng cho sáng hết bảng đèn mov p2, #11111111bmov p0, #00111111bretphuc_sang: ; Chương trình con dùng cho chữ PHÚC sángmov p0, #00000000bmov p2, #00001111bretlan_sang: ; Chương trình con dùng cho chữ LAN sángmov p0, #00000000bmov p2, #01110000bretshop_sang: ; Chương trình con dùng cho chữ SHOP sáng.mov p0, #00000111bmov p2, #10000000bretdien_sang: ; Chương trình con dùng cho chữ Điện sáng.mov p0, #00000000bmov p2, #10000000brettu_sang: ; Chương trình con dùng cho chữ Tử sáng.mov p0, #00000001bmov p2, #00000000bretsang_chu_up: ; Chương trình con dùng cho từng chữ sáng lan lên.mov p2, #00hmov p0, #00hcall delay setb p2.0call delaysetb p2.1call delaysetb p2.2call delaysetb p2.3call delaysetb p2.4call delaysetb p2.5call delaysetb p2.6call delaysetb p2.7call delaysetb p0.0call delaysetb p0.1call delaysetb p0.2call delaysetb p0.3call delaysetb p0.4rettat_chu_down: ; Chương trình con dùng cho từng chữ tắt dần xuống.mov p2, #11111111bmov p0, #00011111b call delayclr p0.4call delay clr p0.3call delayclr p0.2call delayclr p0.1call delay clr p0.0call delayclr p2.7call delayclr p2.6call delay clr p2.5call delay clr p2.4call delay clr p2.3call delay clr p2.2call delayclr p2.1call delayclr p2.0call delayretdelay: ; Chương trình con dùng làm trễmov r7, #20 ; Nạp trị 20 vào thanh ghi r7v6: mov r6, #50 ; Nạp trị 50 vào thanh ghi r6 v5: mov r5, #200 ; Nạp trị 200 vào thanh ghi r5djnz r5, $ ; Chờ r5 giảm theo bước -1 đến bằng 0.djnz r6, v5 ; Cho trị trong r6 giảm theo bước -1, chưa bằng 0, về tên nhãn v5.djnz r7, v6 ; Cho trị trong r7 giảm theo bước -1, chưa bằng 0, về tên nhãn v6.ret ; Quay lại chạy câu lệnh sau câu lệnh call đã gọi delay trước đó. end ; dừng biên dịch từ vi trí này.Sau khi dịch ra mã lệnh, chúng ta có file bqc-1.hex như sau::1000000012004812004F12010C12010C120048128B:10001000010C12005612010C12005D12010C1200AC:100020006412010CD285D284D28312010C12010C0D:10003000120048791412007912010C1200C1120149:100040000CD9F212010C80B875A0007580002275E1:10005000A0FF75803F2275800075A00F227580007B:1000600075A0702275800775A0802275800075A02C:10007000802275800175A0002275A0007580001295:10008000010CD2A012010CD2A112010CD2A21201B9:100090000CD2A312010CD2A412010CD2A512010C95:1000A000D2A612010CD2A712010CD28012010CD2DE:1000B0008112010CD28212010CD28312010CD28463:1000C0002275A0FF75801F12010CC28412010CC2A0:1000D0008312010CC28212010CC28112010CC28077:1000E00012010CC2A712010CC2A612010CC2A51269:1000F000010CC2A412010CC2A312010CC2A2120173:100100000CC2A112010CC2A012010C227F147E327B:090110007DC8DDFEDEFADFF622F7:00000001FF(Bạn dùng hộp nạp cho nạp các mã lệnh này vào nằm trong bộ nhớ EEP-ROM của ic vi điều khiển AT89C51/52 và dùng ic này với bo 16 đường ra để điều khiển bảng đèn quảng cáo trên).Trên đây chỉ là một thí dụ giúp Bạn làm quen với cách viết các câu lệnh cho bảng đèn quảng cáo. Ở đây, chúng ta chỉ dùng những câu lệnh cơ bản cũng làm được điều mình muốn. Sau này khi đã quen rồi, tự Bạn sẽ có thể viết được nhiều chương trình đa dạng hấp dẫn hơn.Qua phần trình bày trên, chúng tôi mong Bạn đã hiểu cách dùng bo vi điều khiển AT89C51/89C52...hiện có bán ở cửa hàng Phúc Lan, dùng nó ráp nhanh các bảng đèn quảng cáo, hay nó còn được dùng cho các công việc điều khiển tự động khác nữa, về cách viết các chương trình điều khiển bảng đèn, sẽ được chúng tôi tiếp tục trình bày trong các bài khác, mong Bạn thường xuyên vào đọc.