Ý 1: Bạn có thể dùng ic lập trình AT89C51 với bộ nhớ nội là 4Kbyte hay tốt hơn dùng AT89C52 với bộ nhớ nội là 8Kbyte. Ý 2: Trong mạch duǹg các điện trở hạn dòng cho Led, Bạn có thể dùng điện trở có trị từ 150 ohm đến 220 ohm. Ý 3: Bên cạnh thạch anh, theo nhà sản xuất IC đề nghị Bạn nên dùng tụ 33pF để tăng hệ số ổn đ̣inh tần số của thạch anh. Ý 4: Về Led, chân A cho nối vào đường nguồn +5V, chân K của Led, qua điện trở hạn dòng, lấy dòng điện tử chảy ra trên các chân của các cảng để phát sáng. Bạn dùng Ohm kế kim, đặt ở thang đo Rx1, đo kiểm tra Led, khi đo thuận Led sẽ sáng, lúc này dây màu đen đang ở trên chân Anode và dây màu đỏ cho biết chân K. Để thiết kế mạch 32 Led gắn thành hình trái tim, cho nhấp nháy theo nhiều kiểu, Bạn có thể ráp theo sơ đồ mạch điện như sau: Phần 1: Sơ đồ cho thấy cách kết nối 32 Led trên 4 cảng của ic AT89C52 Hình vẽ cho thấy, chúng ta gắn 32 Led trên hình trái tim, mỗi Led được điều khiển tắt mở độc lập bởi một chân của ic lập trình AT89C52. Vấn đề quan trọng là Bạn phải nhớ chân nào điều khiển Led nào. Trong hình vẽ trên Bạn thấy, chúng ta gắn Led D1 đến D8 tiếp theo là D9 đến D16 cho cung hình bên trái và Led D17 đến D24 liền theo là D25 đến D32 tạo ra hình cung bên phải. Điều này phải xác định chính xác vì sau này chúng ta sẽ dùng các câu lệnh để tắt mở các Led trên đúng theo trình tự, đúng theo ý muốn, nếu không sắp đúng trình tự của chương trình điều khiển, các Led sẽ nhấp nháy "loạn cào cào". Phần 2: Sơ đồ mạch điện cơ bản dùng điều khiển sự nhấp nháy của các Led gắn trên các cảng p0, p1, p2, p3
Trang 1Vừa qua tôi nhận được rất nhiều điện thư của Bạn đọc, nhiều thư vẫnhỏi về đề tài bản đèn Led và các bản đèn quang báo Trong lần này tôiđề cứ một thư của một Bạn đọc, dân kiến trúc không chuyên về điệntử, hỏi về các vấn đề có liên quan đến bản đèn 32 Led sắp xếp thànhhình trái tim và có nhiều kiểu nhấp nháy đẹp mắt Tôi đoán chắc cũngcó nhiều Bạn mới chơi ic lập trình cũng thích đề tài này, nên mượn ý,viết bài trả lời thư dài hơi hơn, đầy đủ hơn, mong bài viết này đáp ứngđược tính tò mò ham tìm hiểu của các Bạn.
Nội dung trong file đính kèm theo điện thư trong đó có các hình nhưsau:
1 Hình vẽ sơ đồ mạch điện cho thấy mạch dùng IC AT89C51, 52 đểđiều khiển sự nhấp nháy của 32 Led gắn trên 4 cảng p0, p1, p2, p3.Đây là một mạch điện rất cơ bản, trị các điện trở hạn dòng có thể dùng
150 ohm đến 220 ohm Y1 là thạch anh duǹg tạo xung nhịp, có thểdùng thạch anh 12MHz Các tụ ổn tần gắn bên cạnh thạch anh theo nhàsản xuất IC nên dùng trị 33pF
Thư Bạn đọc có 4 ý chính, được trả lời nhanh như sau:
Ý 1: Bạn có thể dùng ic lập trình AT89C51 với bộ nhớ nội là 4Kbyte hay
tốt hơn dùng AT89C52 với bộ nhớ nội là 8Kbyte
Ý 2: Trong mạch duǹg các điện trở hạn dòng cho Led, Bạn có thể dùng
điện trở có trị từ 150 ohm đến 220 ohm
Ý 3: Bên cạnh thạch anh, theo nhà sản xuất IC đề nghị Bạn nên dùng
tụ 33pF để tăng hệ số ổn đ̣inh tần số của thạch anh
Ý 4: Về Led, chân A cho nối vào đường nguồn +5V, chân K của Led,
qua điện trở hạn dòng, lấy dòng điện tử chảy ra trên các chân của cáccảng để phát sáng Bạn dùng Ohm kế kim, đặt ở thang đo Rx1, đo kiểmtra Led, khi đo thuận Led sẽ sáng, lúc này dây màu đen đang ở trênchân Anode và dây màu đỏ cho biết chân K
Trang 2Trong phần sau tôi sẽ vẽ lại sơ đồ mạch điện chính xác hơn, rõ rànghơn và sẽ giải thích chi tiết phương cách thiết kế loại mạch này.
2 Hình tổng thể của 32 Led hình trái tim
Trang 3Hình mặt dưới của bản mạch in, trên đó là các đường đồng nối mạch.
Trang 43 Cách bố trí các linh kiện trên bản mạch in, lới mặt trên
Trang 5Phần trả lời thư mở rộng:
Để thiết kế mạch 32 Led gắn thành hình trái tim, cho nhấp nháy theonhiều kiểu, Bạn có thể ráp theo sơ đồ mạch điện như sau:
Phần 1: Sơ đồ cho thấy cách kết nối 32 Led trên 4 cảng của ic
AT89C52
Trang 6Hình vẽ cho thấy, chúng ta gắn 32 Led trên hình trái tim, mỗi Led đượcđiều khiển tắt mở độc lập bởi một chân của ic lập trình AT89C52 Vấn
Trang 7đề quan trọng là Bạn phải nhớ chân nào điều khiển Led nào Trong hìnhvẽ trên Bạn thấy, chúng ta gắn Led D1 đến D8 tiếp theo là D9 đến D16cho cung hình bên trái và Led D17 đến D24 liền theo là D25 đến D32tạo ra hình cung bên phải Điều này phải xác định chính xác vì sau nàychúng ta sẽ dùng các câu lệnh để tắt mở các Led trên đúng theo trìnhtự, đúng theo ý muốn, nếu không sắp đúng trình tự của chương trìnhđiều khiển, các Led sẽ nhấp nháy "loạn cào cào"
Phần 2: Sơ đồ mạch điện cơ bản dùng điều khiển sự nhấp nháy của
các Led gắn trên các cảng p0, p1, p2, p3
Muốn dùng ic lập trình AT89C52, trước hết Bạn hãy ráp vào các phụkiện sau:
* Trên chân 9 gắn tụ 10uF và điện trở 8.2K để tạo tính reset mỗi khimở nguồn Ngay khi mạch được cấp nguồn, tụ 10uF nạp điện, nó sẽkéo chân số 9 lên mức áp cao, điều này sẽ reset ic AT89C52, cấu trúcmạch bên trong sẽ được xác lập về trạng thái mở đầu theo quy định.Chúng ta biết ở trạng thái khởi đầu, tấ cả các chân của 4 cảng đều choở mức áp cao và như vậy 32 Led trên hình trái tim lúc mạch mới được
Trang 8cấp điện sẽ ở trạng thái tắt Sau một lúc tụ nạp đầy, trả chân 9 về lạimức áp thấp, mức 0V, ic lập trình bắt đầu chạy các câu lệnh có trongbộ nhớ EEPROM Nếu thấy cần Bạn gắn thêm nút nhấn reset S1.
* Trên chân 18, 19 Bạn gắn thạch anh định tần cho mạch dao độngtrong ic lập trình Thông thường dùng thạch anh 12MHz, vậy trong ic sẽcó xung nhịp chu kỳ 1us ở đây người ta gắn các tụ nhỏ 33pF có côngdụng ổn tần
* Điều cần nhớ là phải cho chân 31 nối vào đường nguồn 5V đểkhai báo là cho chạy các câu lệnh nằm trong bộ nhớ trong
Phần 3: Sơ đồ mạch nguồn nuôi, nguồn 5V có độ ổn định tốt
Mạch nguồn gồm biến áp cách ly T1, nó có 2 công dụng: (1), vừa tạotính cách ly giữa mạch điện và đường nguồn AC, giữ an toàn cho ngườidùng (2), vừa dùng làm giảm áp AC, hạ mức nguồn AC 220V xuống9V Dùng cầu nắn dòng 4 diode để chuyển đổi dòng AC ra dạng dòngđiện xung một pha Tụ C1 dùng tụ hóa lớn làm kho chứa điện, nó có 3công dụng: (1), giảm độ dợn sóng (2), nâng cao mức áp DC lên gầnbằng mức volt cực đại (3), làm kho chứa điện ổn định điều kiện cấpđiện cho tải Dùng Led đỏ với điện trở hạn dòng 1K làm đèn chỉ thị Đểcó mức áp DC 5V có độ ổn định tốt, trong mạch dùng ic ổn áp 3 chân
7805 Với loại ic ổn áp tích cực, để tránh mạch điện trong ic không phátsinh hiện tượng dao động tự kích, ở ngả ra dùng thêm tụ hóa C2 làm tụlọc, có thể dùng thêm tụ lọc nhỏ C3 để lọc bỏ các tín hiệu nhiễu tần cao
Trang 9nhiễm vào đường nguồn Điều cần nhớ: IC 7805 phải cho gắn trên lánhôm làm nguội.
Nói về cách gắn 32 Led theo hình vẽ trái tim
Qua hình thị phạm trên, trước hết Bạn vẽ hình trái tim hay hình gì kháccũng được, sau đó gắn 32 Led theo đường bao của hình, điều Bạn cần
Bạn sẽ dùng các câu lệnh tắt mở các Led này theo các kiểu nhấp nháymà Bạn muốn Đó chính là nội dung của bài viết này
Cách viết chương trình nguồn tạo ra các kiểu nhấp nháy.
Hình động dưới đây cho thấy mỗi Led được điều khiển bởi một chân của
ic lập trình AT89C52, hay AT89C51 Trong mạch này chúng ta cho Ledsáng với mức áp thấp, hay bit 0 và cho tắt Led với mức áp cao hay bit
1
Trang 10Các lệnh có thể dùng để đặt bit 0, bit 1 lên các chân của các cảng là:
sáng Led
mov p0, #11111111b : đặt 8 chân của cảng p0 lên mức áp cao, làm tắt
8 Led trên cảng p0
kieu_1: ; dùng bit 0 để cho Led sáng, vậy kiểu này sẽ cho 1 Led sángnhẩy
Trang 11ra các đoạn chương trình con dùng cho các nkiểu nhấp nháy;
Kiểu 1: cho 3 Led nhẩy như hình động trên
kieu_1a: ; 3 Led nhẩy ra biên trái, và 3 Led nhẩy ra biên phải
Trang 12; bắt cầu giữa p0 - p2 và p1 - p3
Trang 19File nguồn led-nhay.asm có nội dung như sau:
Trang 27Sau khi dịch xong, chúng ta có file led-nhay.hex, nôi dung như sau::100000001202A512003B1202A51200CC1202A57B1F
Trang 28:1002400075B0001202B275B0FF7590001202B2755F:1002500090FF75A0001202B275A0FF227580FC7598:10026000903F1202B27580F075900F1202B2758045:10027000C07590031202B27580007590001202B230:1002800075A0FC75B03F1202B275A0F075B00F12E8:1002900002B275A0C075B0031202B275A00075B0AD:1002A000001202B2227580FF7590FF75A0FF75B035:0F02B000FF227F147E647DC8DDFEDEFADFF622BA:00000001FF