Đang tải... (xem toàn văn)
Thiết kế bảng quảng cáo led sử dụng vi điều khiển atmega 16 module điều khiển hiển thị.
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI KHOA ĐIỆN TỬ - VIỄN THÔNG ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đề tài: THIẾT KẾ BẢNG QUẢNG CÁO LED SỬ DỤNG VI ĐIỀU KHIỂN ATMEGA 16 MODULE ĐIỀU KHIỂN HIỂN THỊ Sinh viên thực hiện: PHẠM MINH ĐỨC Lớp ĐT12 – K49 Giảng viên hướng dẫn: TS NGUYỄN TIẾN DŨNG Cán phản biện: TS HOÀNG MẠNH THẮNG Hà nội, 5-2009 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI CỘNG HÒA XÃ HÔI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc - NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: …PHẠM MINH ĐỨC…… Số hiệu sinh viên: …20040847… Khố:……… 49.……….Khoa: Điện tử - Viễn thơng Ngành: ……………… Đầu đề đồ án: Thiết kế bảng quảng cáo LED sử dụng vi điều khiển ATMEGA16 Module điều khiển hiển thị Các số liệu liệu ban đầu: …………………………………… …………………………………………… …… …………………………… ……………………………………………………………………………………………………………………………… … ……………………… …………………………………………………………………………………… Nội dung phần thuyết minh tính tốn: ……………………………………………………………………………………………………………… … ……………………………………………………………………………………………………………………………… …… … ……………………………………………………………………………………………………………………………… ……… ….…………………………………………………………………………………………… Các vẽ, đồ thị ( ghi rõ loại kích thước vẽ ): ……………………………………………………………………………………………………………………… … ………………………………………………………………………………………………………………………… ……….………………………………………………………………………………………………………… Họ tên giảng viên hướng dẫn: …………… NGUYỄN TIẾN DŨNG …………………… Ngày giao nhiệm vụ đồ án: ……………………………………………….…………… Ngày hoàn thành đồ án: ……………………………………………………………………… ……… Ngày Chủ nhiệm Bộ môn tháng năm Giảng viên hướng dẫn Sinh viên hoàn thành nộp đồ án tốt nghiệp ngày tháng năm Cán phản biện BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI - BẢN NHẬN XÉT ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: PHẠM MINH ĐỨC Số hiệu sinh viên: .20040847 Ngành: Khoá: 49 Giảng viên hướng dẫn: TS NGUYỄN TIẾN DŨNG Cán phản biện: Nội dung thiết kế tốt nghiệp: Nhận xét cán phản biện: Ngày tháng năm Cán phản biện Lời nói đầu Quảng báo sử dụng nhiều lĩnh vực đời sống xã hội Hầu đâu ta thấy bảng quảng cáo với nhiều hình thức khác Với mục đích làm bật lên sản phẩm trời sáng hay tối người ta sử dụng rộng rãi bảng quảng cáo điện tử Bảng quảng báo điện tử có nhiều loại , sử dụng nhiều lĩnh vực khác , có khả hiển thị hình ảnh màu sắc phong phú Tuy nhiên điều kiện có hạn nên đồ án chúng em mong muốn tìm hiểu nguyên lý thiết kế bảng quảng cáo điện tử có khả điều khiển hiển thị kí tự theo mong muốn thiết kế module led quảng báo cỡ nhỏ để thử nghiệm Đầu tiên chúng em xin cảm ơn hướng dẫn bảo tận tình thầy Nguyễn Tiến Dũng Thầy cung cấp cho chúng em tài liệu đề tài giúp chúng em dễ dàng trình tìm hiểu đồ án Trong trình làm thực đồ án thầy bảo chúng em gặp khó khăn để đồ án hoàn thành Chúng em xin cảm ơn thầy giáo khoa tận tình dạy dỗ chúng em năm học vừa qua giúp chúng em có kiến thức sở để làm đồ án Sinh viên Phạm Minh Đức Tóm tắt đồ án Nội dung đồ án việc điều khiển hiển thị led ma trận Khi điều khiển hiển thị led ma trận có phương pháp cấp nguồn theo hàng hay cột Đồ án tập trung trình bày phương pháp cấp nguồn theo cột Việc cấp nguồn cho cột thực cách sử dụng IC giải mã 74HC138 , cấp nguồn cho hàng cột thực cách sử dụng ghi dịch 74HC595 Dữ liệu mã hóa cấp nguồn cho hàng cột gửi ghi dịch thông qua việc sử dụng SPI vi điều khiển Việc điều khiển thời gian cấp nguồn cho ma trận tạo tốc độ quét thực cách sử dụng định thời Phần cuối đồ án trình bày cách tạo số hiệu ứng cho ma trận led sử dụng phương pháp cấp nguồn theo cột Project abstract The main content of this project is led matrix display control There has two power supply methods for controlling the led matrix : row by row or column by column In this project , I will introduce the column once When using this method, the 74HC138 decoder is used to power for each column and the 74HC595 shift register is used to power every row in the column which is chosen by 74HC138 The data which is coded the power suply for every row in each column is tranfered to the shift register by using the SPI of the microcontroller Timing to power the led matrix can be done by using the timer/counter of the microcontroller This is the simple method to controll the scan rate for led matix display Some led matrix display effects will be presented in the final part of this document Mục lục Lời nói đầu .4 Tóm tắt đồ án Danh sách hình vẽ Danh sách bảng .8 Danh sách công thức .9 Phần mở đầu 10 Chương : Giới thiệu chung 12 1.1) Quảng cáo .12 1.2) Bảng led quảng báo .13 1.2.1) Một số đặc trưng 13 1.1.2) Quảng cáo led .14 1.3) Giới thiệu chung hệ thống 18 Chương : Giới thiệu vi điều khiển AVR Atmega16 21 2.1) Giới thiệu vi điều khiển họ AVR 21 2.1.1) Một số đặc trưng 21 2.1.2) Một số đặc trưng 23 2.1.3) Một số đặc trưng 25 2.1.4) Một số họ vi diều khiển AVR 26 2.2) Sơ vi điều khiển Atmega16 26 2.2.1) Đặc trưng .28 2.2.2) CPU .31 2.2.3) Bộ nhớ 37 Chương : Nguyên tắc điều khiển led ma trận 42 3.1) Cấu trúc nguyên lý cấp nguồn cho led ma trận 42 3.2) Nguyên tắc tạo font chữ hiển thị .43 3.3) Điều khiển hiển thị led ma trận 44 Chương 4: Điều khiển cấp nguồn cho led ma trận 47 4.1) Điều khiển cấp nguồn cho cột dùng 74HC138 47 4.1.1) Chức 74HC138 47 4.1.2) Sử dụng 74HC138 để cấp nguồn cho cột ma trận 48 4.2) Điều khiển cấp nguồn cho hàng dùng 74HC595 50 4.2.1) Chức 74HC595 50 4.2.2) Sử dụng 74HC595để cấp nguồn cho hàng ma trận .51 4.3) Truyền liệu cấp nguồn cho hàng sử dụng SPI 54 4.3.1) Atmega16 SPI 54 4.3.2) Thiết lập SPI truyền liệu cho 74HC595 58 4.3) Kết luận 59 Chương5: Tạo tần số quét cho ma trận .60 5.1) Timer1 Atmega16 60 5.1.1) Một số chế độ hoạt động 60 5.1.2) Các ghi 65 5.2) Tạo tần số quét ma trận .70 5.3) Kết luận .71 Chương 6: Hiệu ứng hiển thị bảng led .72 6.1) Bảng led hiển thị 72 6.2) Dịch trái, phải 74 6.3) Dịch lên xuống .78 6.4) Hiển thị kí tự 81 6.5) Kết luận 83 Kết luận 84 Tài liệu tham khảo .85 Phụ lục A: Sơ đồ ghép nối hệ thống điều khiển led ma trận 86 Phụ lục B: Mã chương trình nạp cho vi điều khiển 90 Danh sách hình vẽ Danh sách bảng Danh sách công thức Phần mở đầu Quảng cáo ln vấn đề đóng vai trò quan trọng phát triển cơng ty, doanh nghiệp hay chí cửa hàng Quảng cáo tốt đem lại nhiều lợi ích to lớn Cũng mà khơng ngạc nhiên hàng năm doanh nghiệp đầu tư nhiều vào vấn đề Một biện pháp ưa dùng sử dụng bảng quảng cáo đèn LED, đơn giản, đại, bắt mắt, chi phí hợp lý tính hiệu Những bảng thơng tin, cổng chào hay bảng LED quảng cáo với màu sắc sặc sỡ, bắt mắt, gây nhiều ý hẳn khơng cịn xa lạ người dân, người dân đô thị Quảng cáo đèn LED ứng dụng rộng rãi nhiều ngành, nhiều lĩnh vực Nó khơng giới hạn việc hiển thị dòng chữ, biển hiệu nhấp nháy mà cịn hiển thị hình ảnh đồ họa, hình ảnh full colour đặc biệt hiển thị video Nó không giới hạn việc quảng cáo nhà (indoor), bán ngồi trời (semi – outdoor ) mà cịn quảng cáo ngồi trời, ban ngày với độ sáng độ sắc nét cao (Chương I giới thiệu chi tiết vấn đề quảng cáo đèn LED) Tuy nhiên hạn chế nhiều mặt nên đồ án chúng em giới hạn việc hiển thị dịng chữ truyền từ máy tính xuống với định dạng font tiếng anh lưu sẵn nhớ Flash AVR số hiệu ứng hiển thị Trong chương đồ án chúng em giới thiệu chung quảng cáo bảng LED, giới thiệu hệ thống sơ lược vi điều khiển AVR họ ATMega 16 Các chương chúng em trình bày đóng góp 10 KHỐI ĐIỀU KHIỂN TRUNG TÂM VÀ QUÉT CỘT: U8 E1 E2 E3 74HC138 A B C Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 15 14 13 12 11 10 C0 C1 C2 C3 C4 C5 C6 C7 C[0 7] C2 U7 33pF 13 12 C1 40 39 38 37 36 35 34 33 33pF OC0 KHoi dieu khien trung tam va chon cot MOSI SCK RESET XTAL1 XTAL2 PA0/ADC0 PA1/ADC1 PA2/ADC2 PA3/ADC3 PA4/ADC4 PA5/ADC5 PA6/ADC6 PA7/ADC7 PB0/XCK/T0 PB1/T1 PB2/INT2/AIN0 PB3/OC0/AIN1 PB4/SS PB5/MOSI PB6/MISO PB7/SCK PC0/SCL PC1/SDA PC2/TCK PC3/TMS PC4/TDO PC5/TDI PC6/TOSC1 PC7/TOSC2 PD0/RXD PD1/TXD PD2/INT0 PD3/INT1 PD4/OC1B PD5/OC1A PD6/ICP PD7/OC2 AVCC AREF 22 23 24 25 26 27 28 29 14 15 16 17 18 19 20 21 RXD TXD 30 32 ATMEGA16 Hình A - Khối xử lý trung tâm quét cột 89 Phụ lục B: Mã chương trình nạp cho vi điều khiển #include #include #include #include #define SCL PORTB.3 unsigned char flash FONT []={0, 62,65,65,65,62,0, 17,33,127,1,1,0, 35,69,73,73,49,0, 34,65,73,73,54,0, 12,20,36,79,4,0, 114,73,73,73,70,0, 62,73,73,73,38,0, 65,66,68,72,112,0, 54,73,73,73,54,0, 50,73,73,73,62,0, 63,68,68,68,63,0, 127,73,73,73,54,0, 62,65,65,65,34,0, 127,65,65,65,62,0, 127,73,73,73,65,0, 127,72,72,72,64,0, 62,65,73,73,46,0, 127,8,8,8,127,0, 65,65,127,65,65,0, 70,65,65,126,64,0, 127,8,20,34,65,0, 127,1,1,1,1,0, 127,32,24,32,127,0, 127,32,16,8,127,0, 62,65,65,65,62,0, 127,68,68,68,56,0, 62,65,69,66,61,0, 127,68,68,74,49,0, 50,73,73,73,38,0, 64,64,127,64,64,0, 126,1,1,1,126,0, 124,2,1,2,124,0, 127,2,12,2,127,0, 65,34,28,34,65,0, //0 //1 //2 //3 //4 //5 //6 //7 //8 //9 //A //B //C //D //E //F //G //H //I //J //K //L //M //N //O //P //Q //R //S //T //U //V //W //X 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 31 33 34 90 96,16,15,16,96,0, 67,69,73,81,97,0, 4,42,42,42,28,0, 126,18,18,18,12,0, 28,34,34,34,20,0, 12,18,18,20,126,0, 28,42,42,16,0,0, 4,62,72,64,32,0, 24,37,37,37,30,0, 126,16,16,16,14,0, 0,92,2,2,4,0, 4,2,2,92,0,0, 126,8,20,34,0,0, 124,2,2,2,0,0, 30,32,30,32,30,0, 62,8,16,62,0,0, 28,34,34,34,28,0, 31,36,36,36,24,0, 24,36,36,36,31,0, 0,30,32,32,24,0, 18,42,42,42,36,0, 0,32,124,34,4,0, 60,2,2,2,60,0, 56,4,2,4,56,0, 56,2,12,2,56,0, 34,20,8,20,34,0, 48,8,14,8,48,0, 34,38,42,50,34,0, 0,0,0,0,0,0, 255}; //Y //Z //a //b //c //d //e //f //g //h //i //j //k //l //m //n //o //p //q //r //s //t //u //v //w //x //y //z // 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 unsigned char dong1[192],dong2[192]; unsigned char tocdo_quet=50,tocdo_chay=3,c,col=2,eff=1,sc=0,sp=0; unsigned char tg,m=0,t=0,k=0,i,j,sokt=4,sokt1=4,sokt2=4; unsigned char chuoi1[16]={8,8,8,8,8,8,8,8}; unsigned char chuoi2[16]={6,6,6,6,6,6,6,6}; void LatchData(){ SCL=0; SCL=1; } 91 void lm1() { for (i=0;i