Luận văn Thiết kế và thi công mạch quang báo sử dụng PIC18 điều khiển bằng tin nhắn điện thoại và máy tính (Phần 1)

pdf 22 trang phuongnguyen 70
Bạn đang xem 20 trang mẫu của tài liệu "Luận văn Thiết kế và thi công mạch quang báo sử dụng PIC18 điều khiển bằng tin nhắn điện thoại và máy tính (Phần 1)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfluan_van_thiet_ke_va_thi_cong_mach_quang_bao_su_dung_pic18_d.pdf

Nội dung text: Luận văn Thiết kế và thi công mạch quang báo sử dụng PIC18 điều khiển bằng tin nhắn điện thoại và máy tính (Phần 1)

  1. BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA ĐIỆN - ĐIỆN TỬ ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN - ĐIỆN TỬ THIẾT KẾ VÀ THI CÔNG MẠCH QUANG BÁO SỬ DỤNG PIC18 ĐIỀU KHIỂN BẰNG TIN NHẮN ĐIỆN THOẠI VÀ MÁY TÍNH GVHD: KS. HÀ A THỒI SVTH: CHÂU HUỲNH TÀI MSSV: 10901066 SVTH: NGUYỄN MINH HOÀNG MSSV: 10901066 S K L 0 0 4 2 5 0 Tp. Hồ Chí Minh, tháng 2/2016
  2. BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ-CÔNG NGHIỆP ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN – ĐIỆN TỬ ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG MẠCH QUANG BÁO SỬ DỤNG PIC18 ĐIỀU KHIỂN BẰNG TIN NHẮN ĐIỆN THOẠI VÀ MÁY TÍNH GVHD: KS. HÀ A THỒI SVTH: CHÂU HUỲNH TÀI MSSV: 10901066 SVTH: NGUYỄN MINH HOÀNG MSSV: 10901066 Tp. Hồ Chí Minh - 2/2016
  3. PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP 1. Thông tin sinh viên Họ và tên: CHÂU HUỲNH TÀI. . . . MSSV:10901066 Tel: 0984 984 355 Email: 1407taispkt@gmail.com Họ và tên: NGUYỄN MINH HOÀNG MSSV:10901066 Tel: Email: 10901089@student.hcmute.edu.vn 2. Thông tin đề tài Tên của đề tài: THIẾT KẾ VÀ THI CÔNG MẠCH QUANG BÁO SỬ DỤNG PIC18 ĐIỀU KHIỂN BẰNG TIN NHẮN ĐIỆN THOẠI VÀ MÁY TÍNH Mục đích của đề tài: Đồ án tốt nghiệp được thực hiện tại: Bộ môn Điện Tử Viễn Thông, Khoa Điện - Điện Tử, Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh. Thời gian thực hiện: Từ ngày 20/10/2016 đến 20/1 /2016 3. Các nhiệm vụ cụ thể của đề tài - Tìm hiểu về PIC18F4620. - Nghiên cứu phương án điều khiển led ma trận 16x32. - Tìm hiểu về module SIM900. - Tìm hiểu về các phương thức giao tiếp UART, RS232, - Nghiên cứu cách lập trình cho PIC bằng trình biên dịch CCS. - Nghiên cứu các lập trình visual basic và giao tiếp máy tính. - Xây dựng sơ đồ kết nối các khối. - Thiết kế và mô phỏng mạch. - Xây dựng lưu đồ giải thuật. - Viết chương trình và chạy mô phỏng để sửa lỗi. - Thi công mạch. - Nạp chương trình, chạy thử và kiểm tra lỗi. - Viết báo cáo. 4. Lời cam đoan của sinh viên Tôi – Châu Huỳnh Tài cam đoan ĐATN là công trình nghiên cứu của bản thân tôi dưới sự hướng dẫn của Thầy Hà A Thồi. Các kết quả công bố trong ĐATN là trung thực và không sao chép từ bất kỳ công trình nào khác. Tp.HCM, ngày 20 tháng 10 năm 2015 SV thực hiện đồ án Châu Huỳnh Tài
  4. Tp.HCM, ngày tháng năm 2016 Xác nhận của Bộ Môn Giáo viên hướng dẫn (Ký ghi rõ họ tên và học hàm học vị)
  5. TRƯỜNG ĐẠI HỌC SPKT TPHCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Khoa Điện - Điện Tử Độclập - Tự do - Hạnhphúc Bộ Môn Điện Tử Viễn Thông Tp. Hồ Chí Minh, ngày 25 tháng 12 năm 2015 LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên 1: Châu Huỳnh Tài Lớp:109010B MSSV:10901066 Họ tên sinh viên 2: Nguyễn Minh Hoàng Lớp:109010C MSSV:10901089 Tên đề tài: THIẾT KẾ VÀ THI CÔNG MẠCH QUANG BÁO SỬ DỤNG PIC18 ĐIỀU KHIỂN BẰNG TIN NHẮN ĐIỆN THOẠI VÀ MÁY TÍNH. Tuần/ngày Nội dung Xác nhận GVHD Tuần 1: Liên hệ giáo viên hướng dẫn, chọn đề tài (11/10 – 17/10/2015) tốt nghiệp và lên kế hoạch thực hiện Tuần 2: Lên đề cương chi tiết cho đề tài tốt nghiệp. (18/10 – 24/10/2015) Tuần 3: Tìm hiểu lí thuyết về led ma trận, cách lập (25/10 – 31/10/2015) trình và tính toán các thông số cơ bản cho led Tuần 4: Tìm hiểu lí thuyết về vi điều khiển (1/11 – 7/11/2015) PIC18F4450, các port xuất nhập, các lệnh điều khiển Tuần 5: Nghiên cứu phương án điều khiển led ma (8/11 – 14/11/2015) trận 16x32. Tìm hiểu về module SIM900. Tuần 6: Tìm hiểu về các phương thức giao tiếp (15/11 – 21/11/2015) UART, RS232, Tuần 7: Nghiên cứu cách lập trình cho PIC bằng (22/11 –28/11/2015) trình biên dịch CCS. Nghiên cứu các lập trình visual basic và giao tiếp máy tính. Tuần 8: Thiết kế và mô phỏng mạch trên máy tính. (29/11 – 5/12/2015)
  6. Tuần 9: Thi công mạch thực tế, nạp chương trình, (6/12 – 12/12/2015) chạy thử và kiểm tra lỗi Tuần 10: Viết báo cáo. (13/12 – 19/12/2015) Tuần 11: Hoàn thiện. (20/12 – 26/12/2015) GV HƯỚNG DẪN (Ký và ghi rõ họ và tên)
  7. LỜI CẢM ƠN Lời đầu tiên chúng em xin chân thành cảm ơn quý thầy cô trường Đaị Hoc̣ Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh đã dạy dỗ và tạo điều kiện để chúng em có thể hoàn thành tốt khoá học. Xin chân thành cảm ơn Khoa Điện – Điện Tử đã hỗ trợ thiết bị và vật tư giúp chúng em được học và thực tập trong môi trường đầy đủ và tiện nghi nhất. Chúng em xin chân thành cảm ơn quý thầy cô trong bộ môn Điện TửCông Nghiệp đã trang bị cho em kiến thức và giúp đỡ em giải quyết những khó khăn trong quá trình làm đồ án. Đặt biệt chúng em xin chân thành cảm ơn Thầy hướng dẫn, KsHà A Thồi đã tận tình giúp đỡ trong quá trình lựa chọn đề tài và hỗ trợ chúng em trong quá trình thực hiện đồ án. Thầy đa ̃ tâṇ t ình giúp đỡ, chỉ ra những thiếu xót và cho những lời khuyên , chia sẻ những kinh nghiêm quý báu giúp chúng em hoàn thành tốt đồ án tốt nghiêp̣ . Tuy đa ̃ cố gắng nhưng do chúng em còn thiếu xót về kiến thứ c cũng như kinh nghiêṃ thưc̣ tế nên đề tài còn hạn chế . Kính mong nhận được sự thông cảm và góp ý chân tình của quý thầy cô. Chúng em xin chân thành cảm ơn ! Nhómthựchiệnđềtài vi
  8. Chƣơng 1. DẪN NHẬP 1.1. Đặt vấn đề Ngày nay, khi xã hội ngày càng phát triển thì nhu cầu về truyền bá thông tin cũng ngày càng tăng. Sản xuất phát triển kéo theo việc cần nhanh chóng thông tin sản phẩm tới người tiêu dùng nhiều hơn, các cơ quan nhà nước cũng cần thông báo nhiều thông tin tới người dân hơn. Chính vì các lý do này mà nhu cầu quảng cáo và truyền bá thông tin ngày càng tăng cao. Hiện nay, có rất nhiều hình thức để có thể truyền bá thông tin, quảng cáo sản phẩm như phát tờ rơi, treo băng rôn, khẩu hiệu, dán áp phích, Tuy nhiên, do nhu cầu quảng cáo ngày càng tăng và để đáp ứng nhu cầu đó thì các hình thức quảng cáo truyền thống như tờ rơi, áp phích, băng rôn, hiện không còn đáp ứng tốt được nữa, vì thế quang báo điện tử ra đời. 1.2. Lý do chọn đề tài Với sự phát triển như vũ bão của khoa học công nghệ, các sản phẩm tiên tiến ngày càng xuất hiện nhiều, sản xuất phát triển mạnh kéo theo việc mọi thứ thay đổi rất nhanh chóng vì thế thông tin phải được cập nhật và thông báo tức thời là việc hết sức quan trọng trong tất cả mọi lĩnh vực. Để đáp ứng nhu cầu đó, các thiết bị sẽ được điều khiển từ xa qua thiết bị di động hoặc được điều khiển trực tiếp bằng máy tính. Việc sử dụng vi điều khiển trong quang báo điện tử có rất nhiều ưu điểm mà các phương pháp quảng cáo truyền thống không thể so sánh được như việc thay đổi thông tin một cách nhanh chóng, chính xác, thông tin hiển thị có thể chuyển động, màu sắc phong phú, . Với nhu cầu thực tiễn nhưu vậy nên nhóm thực hiện quyết định chọn đề tài : “THIẾT KẾ VÀ THI CÔNG MẠCH QUANG BÁO SỬ DỤNG PIC18 ĐIỀU KHIỂN BẰNG TIN NHẮN ĐIỆN THOẠI VÀ MÁY TÍNH”. 1.3. Nội dung nghiên cứu Mục tiêu của đề tài này là tìm hiểu và nghiên cứu về hoạt động của module SIM900, nguyên lý hoạt động của module led ma trận 16x32, cách lập trình PIC18F4620 và cách truyền nhận dữ liệu qua máy tính thông qua chuẩn giao tiếp UART, RS232 để thi công mạch quang báo có thể điều khiển bằng tin nhắn điện thoại và bằng máy tính. Như vậy, với các nội dung đã đề ra thì đề tài sẽ bao gồm các nội dung sau: - Tìm hiểu về PIC18F4620. - Nghiên cứu về phương án điều khiển led ma trận P10 (16x32). - Tìm hiểu về module SIM900. - Tìm hiểu các phương thức giao tiếp RS232, UART, - Nghiên cứu lập trình cho PIC bằng trình biên dịch CCS. 1
  9. - Nghiên cứu lập trình visual basic và giao tiếp máy tính. - Xây dựng sơ đồ các khối kết nối. - Thiết kế và mô phỏng mạch. - Xây dựng lưu đồ giải thuật. - Viết chương trình mà chạy mô phỏng để sửa lỗi. - Thi công mạch. - Nạp chương trình, chạy thử và kiểm tra lỗi. - Viết báo cáo. - Báo cáo đề tài tốt nghiệp. 1.4. Giới hạn Trong khuôn khổ của để tài chúng em xin được giới hạn như sau: - Font chữ hiển thị trên quang báo là font chữ không dấu. - Chỉ có một hiệu ứng chữ chạy từ phải sang trái. - Sử dụng 4 bảng Led P10 ( 16x32). 1.5. Bố cục đề tài Như vậy, với các yêu cầu và mục tiêu, giớ hạn đã đề ra, đồ án sẽ được xây dựng bao gồm các chương sau:  Chƣơng 1: Tổng quan – chương này trình bày khái quát về lĩnh vực nghiên cứu, đề ra mục đích của đề tài, đưa ra các nhiệm vụ, giới hạn của đề tài và trình bày các phương pháp nghiên cứu đươc sử dụng.  Chƣơng 2: Cơ sở lý thuyết – chương này trình bày tóm lượt về cơ sở lý thuyết sẽ sử dụng trong đồ án và phương pháp để ứng dụng lý thuyết đó vào thực tiễn.  Chƣơng 3: Thiết kế phần cứng – chương này sẽ trình bày về quá trình thiết kế, xây dựng phần cứng của đồ án như : sơ đồ khối, sơ đồ nguyên lý, mạch in,  Chƣơng 4: Thiết kế phần mềm – chương này sẽ trình bày quá trình thiết và xây dựng phần mềm của đồ án như : lưu đồ, giải thuật của chương trình, giao diện Visual Basic để điều khiển trên máy tính.  Chƣơng 5: Kết luận – chương này sẽ trình bày các kết quả đạt được, so sánh với mục tiêu đặt ra, rút kinh nghiệm, đề ra hướng phát triển của đề tài. 2
  10. Chƣơng 2. CƠ SỞ LÝ THUYẾT 2.1. Giới thiệu Khối xử lý trung tâm là khối có vai trò chính. Khối xử lý trung tâm có nhiệm vụ tiếp nhận, xử lý các dữ liệu đến và đi một cách tự động. Đề tài sử dụng PIC18F4620 để làm khối xử lý vì nó có những tín năng, ưu điểm vượt trội hơn các vi điều khiển khác. Các vi điều khiển họ PIC có ưu điểm vượt trội hơn nhiều so với họ 8051 với nhiều module được tích hợp sẵn trong nó như : module ADC 10bit, PWM 10bit, Opam, EEPROM, do đó chúng ta sẽ thuận lợi hơn rất nhiều trong việc thiết kế mạch mà không cần phải thiết kế thêm các module bổ trợ như trên họ vi điều khiển 8051, do đó, mạch điện khi thi công sẽ rất gọn, tiết kiệm linh kiện, hạn chế được sai xót từ các module bổ trợ. Bên cạnh các ưu điểm về phần cứng, PIC còn được hỗ trợ rất nhiều để có thể lập trình phần mềm dễ dàng hơn. Hiện nay, ngoài ngôn ngữ Assembly phức tạp, PIC còn có thể được lập trình dễ dàng hơn trên nền tảng ngôn ngữ C dễ hiểu, gần gũi với người dùng. Việc lập trình PIC được hỗ trợ rất nhiều từ các trình biên dịch sử dụng ngôn ngữ C, điển hình là trình biên dịch CCS và MIKROC. Ngoài ra, PIC là một dòng vi điều khiển được ra đời từ rất lâu, nên có rất nhiều tài liệu cũng như diễn đàn điện tử nói về họ vi điều khiển này, vì thế nguồn tài liệu chúng ta có thể tìm được để hỗ trợ cho việc nghiên cứu là vô cùng phong phú. PIC18F4620 được sử dụng trong đề tài là một vi điều khiển phổ thông với các tính năng cơ bản dễ sử dụng: Tập lệnh để lập trình chỉ có 35 lệnh rất dễ nhớ và dễ học, có độ dài 16bit. Mỗi lệnh đều được thực thi trong 1 chu kỳ xung clock. Tốc độ hoạt động tối đa cho phép là 64MHz. 64k Flash Rom. 3936 Bytes Ram. 1024 Bytes EEPROM. 4 Port điều khiển vào ra với tín hiệu điều khiển độc lập, với dòng ra cao có thề kích trực tiếp các transitor mà không cần qua bộ buffer. 4 bộ định thời Timer0, Timer1, Timer2, Timer3. 1 bộ định thời Timer0 8bit có thể lập trình được. 3 bộ định thời Timer1, Timer2 và Timer3 16bit có thể hoạt động trong chế độ sleep với nguồn xung clock ngoài. 2 bộ module CCP ( bao gồm Capture bắt giữ, Compare so sánh, PWM điều chế xung 10bit) và 1 bộ module ECCP. 1 bộ ADC với 13 kênh ADC 10bit. 2 bộ so sánh tương tự hoạt động độc lập. 3
  11. Bộ giám sát định thời Watchdog timer. Cổng giao tiếp song song 8bit với các tín hiệu điều khiển. Chuẩn giao tiếp nối tiếp MSSP (SPI/I2C). Chuẩn giao tiếp nối tiếp USART (AUSART/EUSART) với 9bit địa chỉ. Hỗ trợ giao tiếp I2C. 15 nguồn ngắt. Chế độ sleep tiết kiệm năng lượng. Chức năng bảo mật chương trình. Nạp chương trình bằng cổng nối tiếp ICSP (In Cicuit Serial Programming) thông qua 2 chân. Có thể hoạt động với nhiều dạng Oscillator khác nhau. Tần số hoạt động tối đa là 64Mhz. Bộ nhớ Flash với khả năng ghi xóa được 100.000 lần. Bộ nhớ EEPROM với khả năng ghi xóa được 1.000.000 lần. Dữ liệu EEPROM có thể lưu trữ trên 40 năm. Khả năng tự nạp chương trình với sự điều khiển của phần mềm. 4
  12. 2.2. Tổng quan về vi điều khiển PIC18F4620 2.2.1. Sơ đồ khối củaPIC18F4620 Hình 2.1. sơ đồ khối vi điều khiển PIC18F4620 2.2.2. Sơ đồ chân và bộ nhớ 5
  13. Hình 2.1. Sơ đồ chân PIC18F4620 . - Tổ chức bộ nhớ: Cấu trúc bộ nhớ của vi điều khiển PIC18F4620 bao gồm bộ nhớ chương trình (Program memory) và bộ nhớ dữ liệu (Data Memory). - Bộ nhớ chương trình: Bộ nhớ chương trình của Vi điều khiển PIC18F4620 là bộ nhớ flash, dung lượng bộ nhớ 64 Kword (1 word = 16 bit) Để mã hóa được địa chỉ của 64k word bộ nhớ chương trình, bộ đếm chương trình có 21bit (PC ). Khi vi điều khiển được reset, bộ đếm chương trình sẽ chỉ đến địa chỉ 0000h (Reset vertor). Khi có ngắt xảy ra, bộ đếm chương trình sẽ chỉ đến địa chỉ 0008h (Interrupt vertor). Bộ nhớ chương trình bao gồm bộ nhớ Stack và được địa chỉ hóa bởi bộ đếm chương trình. - Bộ nhớ dữ liệu: Bộ nhớ dữ liệu của PIC18F4620 là bộ nhớ EEPROM được chia ra làm nhiều bank. Đối với PIC18F4620 bộ nhớ dữ liệu được chia ra làm 16 bank. 2.2.3. Các cổngI/O của PIC18F6420 6
  14. Cổng xuất nhập (I/O Port) chính là các phương tiện mà vi điều khiển giao tiếp với bên ngoài. Sự giao tiếp, tương tác này rất đa dạng, tùy theo mục đích sử dụng của lập trình viên mà chức năng của mỗi I/O pin được thể hiện rõ ràng hơn. Một cổng xuất nhập (I/O Port ) bao gồm nhiều chân (I/O Pin). Tùy theo chức năng của vi điều khiển mà số lượng cổng, số lượng chân trong mỗi cổng có thể các nhau. Do số lượng I/O Pin có hạn nhưng việc vi điều khiển được tích hợp nhiều module khác nhau trong đó nên ngoài chức năng xuất nhập thông thường, một số I/O Pins còn được tích hợp thêm nhiều chức năng khác được xác lập và điều khiển thông qua các thanh ghi SFR liên quan đến I/O Pin đó. Vi điều khiển 18F4620 có 5 cổng xuất nhập là : PORTA, PORTB, PORTC, PORTD và PORTE. 2.2.4. Truyền thông nối tiếp EUART EUSART (Enhanced Universal Synchronous Asynchronous Receiver Transmitter) là một bộ truyền thông nối tiếp. Nó có tất cả các bộ phát xung clock, đăng ký thay đổi và bộ đệm dữ liệu cần thiết để thực hiện một đầu vào hay đầu ra dữ liệu nối tiếp chuyển giao độc lập của thiết bị thực hiện chương trình. EUSART còn được gọi là giao diện giao tiếp nối tiếp nối tiếp SCI (Serial Communication Interface). Bộ EUSART là một trong hai hình thức giao tiếp nối tiếp vào ra EUSART có thể được cấu hình như là một hệ thống bất đồng bộ hoạt động song công mà có thể giao tiếp với các thiết bị bên ngoài như là các thiết bị đầu cuối CRT và các máy tính cá nhân nó cũng có thể được cấu hình như là một hệ thống đồng bộ hoạt động bán công mà có thể giao tiếp với các mạch tích hợp A/D hay D/A, các EEPROM nối tiếp .EUSART có thể được cấu hình để hoạt động một trong các chế độ sau: Bất đồng bộ ( song công : Asynchronous). Đồng bộ chủ ( bán công: Master Mode). Đồng bộ tớ ( bán công: Slave Mode). 2.2.5. Ngắt (interrupt) PIC18F4620 có nhiều nguồn tạo ra hoạt động ngắt và được điều khiển bởi rất nhiều thanh ghi: RCON; INTCON; INTCON2; INTCON3; PIR1, PIR2; PIE1, PIE2; IPR1, IPR2. Bên cạnh đó mỗi ngắt còn có một bit điều khiển và cờ ngắt riêng. Các cờ ngắt vẫn được set bình thường khi thỏa mãn điều kiện ngắt xảy ra bất chấp trạng thái của bit GIE. Tuy nhiên, hoạt động ngắt vẫn phụ thuộc vào bit GIE và các bit điều khiển khác. Bit điều khiển ngắt RB0/INT0 và TMR0 nằm trong thanh ghi INTCON, thanh ghi này còn chứa bit cho phép các ngắt ngoại vi PEIE. Bit điều khiển các ngắt nằm trong thanh ghi PIE1 và PIE2. 7
  15. Các cờ ngắt ngoại vi được chứa trong hai thanh ghi chức năng đặc biệt: thanh ghi PIR1 và PIR2. Các bit cho phép ngắt tương ứng được chứa trong hai thanh ghi PIE 1 và PIE 2. Trong một thời điểm chỉ có một chương trình ngắt được thực thi, chương trình ngắt được kết thúc bằng lệnh RETFIE. Khi chương trình ngắt được thực thi, bit GIE tự động được xóa, địa chỉ lệnh tiếp theo của chương trình chính được cất vào trong bộ nhớ Stack và bộ đếm chương trình sẽ chỉ đến địa chỉ 0008h. Lệnh RETFIE được dùng để thoát khỏi chương trình ngắt và quay trở về chương trình chính, đồng thời bit GIE cũng sẽ được set để cho phép các ngắt hoạt động trở lại. Các cờ hiệu được dùng để kiểm tra ngắt nào đang xảy ra và phải được xóa bằng chương trình trước khi cho phép ngắt tiếp tục hoạt động trở lại để ta có thể phát hiện được thời điểm tiếp theo mà ngắt xảy ra. Đối với các ngắt ngoại vi như ngắt từ chân INT hay ngắt từ sự thay đổi trạng thái các Pin của PortB (PORTB interrupt-on-change), việc xác định ngắt nào xảy ra cần 3 hoặc 4 chu kì lệnh tùy thuộc vào thời điểm xảy ra ngắt. Trong quá trình thực thi ngắt, chỉ có giá trị của bộ đếm chương trình được cất vào trong Stack, trong khi một số thanh ghi quan trọng sẽ không được cất và có thể bị thay đổi giá trị trong quá trình thực thi chương trình ngắt. Điều này nên được xử lí bằng chương trình để tránh hiện tượng trên xảy ra. 2.3. Chức năng và thông số của LCD16x2 Hình 2.2. LCD 16x2. LCD có rất nhiều dạng, phân biệt theo kích thước, từ vài kí tự đến vài chục kí tự, từ vài hàng đến vài chục hàng. Ví dụ LCD16x2 có nghĩa là LCD có 2 hàng và mỗi hàng chứa được 16 kí tự, tương tự ta có các LCD20x4, LCD32x2, LCD40x2, v.v 2.3.1. Chức năng các chân của LCD16x2 8
  16. 2.4. Module led ma trận 2.4.1. Cấu tạo Led ma trận là tập hợp các led đơn được sắp xếp theo các hàng và các cột, tùy thuộc vào loại mà có số lượng led khác nhau. Trong đó, tất cả các led trên cùng một cột được nối chân anode với nhau và đưa ra một chân để điều khiển. Tương tự ở các hàng, các chân cathode được nối lại với nhau và đưa ra một chân để điều khiển. Hình 2.3. Cấu tạo Led ma trận. 2.4.2. Nguyên lý hoạt động Mỗi led trên ma trận led được coi là một điểm ảnh, địa chỉ của mỗi điểm ảnh được xác định bởi hàng và cột tương ứng. Do ma trận led có nhiều hàng và nhiều cột nên tại mỗi thời điểm chỉ có trạng thái của hàng hoặc cột được xác định. Tuy nhiên, do mỗi thời điểm chỉ có 1 hàng hoặc cột được bật, nên khi bật hàng hoặc cột khác, thì phái tắt hàng hoặc cột trước đó, do đó, muốn quan sát được ma trận led liền mạch, ta phải thực hiện quét led với tốc độ cao. 9
  17. Mắt người có khả năng nhận biết được tối đa là 24 khung hình mỗi giây (FPS) vì thế, khi thực hiện quét led với tốc độ cao, thì mắt sẽ không thể nhận biết được các điểm ảnh đang nhấp nháy. Như vậy, để ứng dụng phương pháp quét trong hiển thị led ma trận thì tín hiệu hiển thị sẽ được cấp vào hàng và sau đó tích cực mức thấp cho cột ( quét cột) hoặc tín hiệu điều khiển sẽ được cấp cho các cột và sau đó tích cực mức cao cho các hàng ( quét hàng), như vậy, tại một thời điểm chỉ có 1 hàng hoặc 1 cột được hiển thị tùy theo phương pháp quét. Ngoài ra, trên thực tế, đối với các bảng led có kích thước lớn với rất nhiều cột nhưng có ít hàng thì việc quét led theo cột là không khả thi, do số lượng cột quá nhiều, nên thời gian quét hết tất cả các cột sẽ dài nên sẽ không đảm bảo được tỉ lệ 24 FPS, vì thế sẽ thấy bảng led nhấp nháy. Do đó, đối với những bảng led có nhiều cột, ta thực hiện phương pháp quét hàng là tốt nhất. Hình 3.2. LCD 16x2 Bảng 2.1. Chức năng các chân LCD16x2 Chân Ký hiệu Mô tả chức năng 1 VSS Chân nối đất cho LCD, khi thiết kế mạch ta nối chân này với GND của mạch điều khiển 2 VDD Chân cấp nguồn cho LCD, khi thiết kế mạch ta nối chân này với VCC = 5 V của mạch điều khiển 3 VEE Điều chỉnh độ tương phản của LCD. 4 RS Chân chọn thanh ghi (Register select). Nối chân RS với logic “0” (GND) hoặc logic “1” (VCC) để chọn thanh ghi. + Logic “0”: Bus DB0-DB7 sẽ nối với thanh ghi lệnh IR của LCD (ở chế độ “ghi” - write) hoặc nối với bộ đếm địa chỉ của LCD (ở chế độ “đọc” - read) + Logic “1”: Bus DB0-DB7 sẽ nối với thanh ghi dữ liệu DR bên trong LCD 5 RW Chân chọn chế độ đọc/ghi (Read/Write). Nối chân R/W với logic “0” để LCD hoạt động ở chế độ ghi và mức logic “1” để LCD ở chế độ đọc. 6 EN Chân cho phép (Enable). Sau khi các tín hiệu được đặt lên 10
  18. bus DB0-DB7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép của chân E. - Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào (chấp nhận) thanh ghi bên trong nó khi phát hiện một xung (high- to-low transition) của tín hiệu chân E. - Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện cạnh lên (low-to-high transition) ở chân E và được LCD giữ ở bus đến khi nào chân E xuống mức thấp. 7 – 14 D0 – D7 Tám đường của bus dữ liệu dùng để trao đổi thông tin với MPU. Có 2 chế độ sử dụng 8 đường bus này : - Chế độ 8 bit : Dữ liệu được truyền trên cả 8 đường, với bit MSB là bit DB7. - Chế độ 4 bit : Dữ liệu được truyền trên 4 đường từ DB4 tới DB7, bit MSB là DB7 15 A Nguồn dương cho đèn nền 16 K GND cho đèn nền 2.4.3. Tập lệnh cho LCD16X2 Một vài chú ý khi giao tiếp với LCD: - Tuy trong sơ đồ khối của LCD có nhiều khối khác nhau, nhưng khi lập trình điều khiển LCD ta chỉ có thể tác động trực tiếp được vào 2 thanh ghi DR và IR thông qua các chân DBx, và ta phải thiết lập mức logic cho chân RS, R/W phù hợp để chuyển qua lại giữ 2 thanh ghi này. - Với mỗi lệnh, LCD cần một khoảng thời gian để hoàn tất, thời gian này có thể khá lâu đối với tốc độ của MPU, nên ta cần kiểm tra cờ BF hoặc có thời gian chờ (delay) cho LCD thực thi xong lệnh hiện hành mới có thể ra lệnh tiếp theo. - Địa chỉ của RAM (AC) sẽ tự động tăng (giảm) một đơn vị, mỗi khi có lệnh ghi vào RAM (điều này giúp chương trình ngắn gọn hơn). 2.5. Led ma trận P10 2.5.1. Thông số module led ma trận P10 (16x32) 2.5.1.1. Độ phân giải (mm) 10mm Module dày 30,5mm. 2.5.1.2. Kích thước (mm) 320x160 Pixel Density (pixel/m) 10.000 2.5.1.3. Hiển thị một màu Màu đỏ 2.5.1.4. Độ phân giải (pixel) 32x16 2.5.1.5. Trọng lượng (G) 425 2.5.1.6. Khoảng cách (m) ≥ 12,5 11
  19. 2.5.1.7. Góc nhìn (°) lựa chọn: Nghiêng 110 ± 5 độ, thẳng 60 độ. 2.5.1.8. Nhiệt độ hoạt động (° C): -20 °C ~ 50°C 2.5.1.9. Nhiệt độ lưu trữ: -40°C ~ 85 ° C 2.5.1.10. Độ ẩm hoạt động 10 ~ 95% 2.5.1.11. Công suất Trung bình (W /m²) 100 ~ 300 2.5.1.12. Công suất tiêu thụ tối đa (W / m²) ≤ 500 2.5.1.13. Chế độ kiểm soát: Không đồng bộ 2.5.1.14. Chế độ quét 1/4 quét bởi áp Constant 2.5.1.15. Cân bằng trắng 2.5.1.16. Độ sáng (cd / m²) ≥ 2000 2.5.1.17. Lớp chống thấm nước IP51 MTTF ≥ 10.000  Hình ảnh module led ma trận P10 trong thực tế: Hình 2.4. Mặt trước led ma trận P10. 12
  20. Hình 2.5. Mặt sau led ma trận P10. 2.5.2. Nguyên lý hoạt động led ma trận P10 Giản đồ xung điều khiển module : Các đường điều khiển gồm : - Tín hiệu OE: tích cực mức logic cao (5V) cho phép chốt hàng (hàng tương ứng với 2 tín hiệu A, B được nối đất ). - Tín hiệu chọn hàng : A, B là 2 đường tín hiệu cho phép chọn hàng hiển thị.ATRIX - Tín hiệu CLK: Tín hiệu cho phép chốt dữ liệu ra cột. - Tín hiệu SCK: Xung đưa dữ liệu ra IC ghi dịch. - Tín hiệu DATA: Đưa dữ liệu cần hiển thị ra bảng led. 2.5.3. Sơ đồ quét và sơ đồ dịch dữ liệu của module led P10 Quét theo tỉ lệ ¼. Tại một thời điểm, sẽ có 4 hàng được hiển thị. Hình 2.6. Sơ đồ quét led ma trận P10. 13
  21. Hình 2.7. Sơ đồ dịch led ma trận P10. - IC ghi dịch 74HC595 Dữ liệu, xung Khối đệm: IC - IC giải mã hàng 74HC138 Clock 74HC245 - IC đảo 74HC04 - IC đệm dòng cho hàng HM3412 Ma trận led 16x32 Hình 2. 8. Sơ đồ khối led ma trận P10. 2.6. Phƣơng pháp hiển thị sử dụng thanh ghi dịch 2.6.1. Quét cột 2.6.1.1. Giới thiệu chung Phương pháp quét cột là phương pháp mà trong một khoảng thời gian xác định chỉ cho một cột được tích cực hiển thị trong khi các cột khác đều tắt, các cột được quét (tích cực) tuần tự ở các khoảng thời gian kế tiếp nhau được lặp lại nhiều lần với tốc độ > 24 hình/1s sẽ cho ta một hình ảnh liên tục cần hiển thị lên trên màn hình led ma trận. 2.6.1.2. Quá trình quét Dữ liệu của cột thứ nhất được đưa ra hàng sau đó tích cực cột thứ nhất như vâỵ dữ liệu của cột thứ nhất được hiển thị trên màn hình led ma trận, tiếp tục dữ liệu của cột thứ hai được đưa ra hàng sau đó tích cực cột thứ hai lúc này dữ liệu của hàng thứ hai được hiển thị trên màn hình led ma trận, cứ như vậy cho đến dữ liệu của cột cuối cùng được đưa ra hàng sau đó tích cực cột cuối cùng. Cứ như thế quá trình trên được lặp đi lặp lại > 24lần/1s, đến đây chúng ta quan sát được một hình ảnh liên tục hiển thị trên màn hình led ma trận. 2.6.2. Quét hàng 2.6.2.1. Giới thiệu chung Quét hàng là phương pháp mà trong một khoảng thời gian xác định chỉ cho một hàng được tích cực hiển thị trong khi các hàng khác đều tắt, các hàng được quét (tích cực) tuần tự ở các khoảng thời gian kế tiếp nhau được lặp lại nhiều lần với tốc độ > 24hình /1s sẽ cho ta một hình ảnh liên tục cần hiển thị lên trên màn hình led ma trận. 2.6.2.2. Quá trình quét 14
  22. S K L 0 0 2 1 5 4