Lập trình c cho vi điều khiển 8051 điều khiển sensor DS18B20

46 499 0
Lập trình c cho vi điều khiển 8051 điều khiển sensor DS18B20

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƢỜNG ĐẠI HỌC SƢ PHẠM HÀ NỘI 2 KHOA VẬT LÝ TỐNG THỊ ÁNH ĐIỀU KHIỂN LCD DÙNG PIC 18F4520 KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HÀ NỘI, 2014 TRƢỜNG ĐẠI HỌC SƢ PHẠM HÀ NỘI 2 KHOA VẬT LÝ TỐNG THỊ ÁNH ĐIỀU KHIỂN LCD DÙNG PIC 18F4520 Chuyên ngành: Vật lý Kỹ thuật KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC Người hướng dẫn khoa học: ThS. PHÙNG CÔNG PHI KHANH HÀ NỘI, 2014 LỜI CẢM ƠN Sau một thời gian nghiên cứu, em đã hoàn thành khóa luận tốt nghiệp với đề tài “Điều khiển LCD dùng PIC 18F4520”. Em xin được bày tỏ lòng biết ơn sâu sắc và lời cảm ơn chân thành đến ThS.Phùng Công Phi Khanh đã hướng dẫn và chỉ bảo em tận tình trong suốt quá trình nghiên cứu để hoàn thành khóa luận tốt nghiệp của mình. Em xin chân thành cảm ơn trường ĐHSP Hà Nội 2, ban chủ nhiệm khoa Vật lý, tổ Sư phạm Kỹ thuật và các thầy cô giáo trong khoa đã giúp đỡ em trong suốt quá trình học tập tại khoa. Đồng thời, em cũng gửi lời cảm ơn tới gia đình, bạn bè đã luôn bên em, giúp đỡ, động viên em trong suốt quá trình học tập và hoàn thành bài khóa luận tốt nghiệp. Em xin chân thành cảm ơn! Hà Nội, tháng 5 năm 2014 Sinh viên Tống Thị Ánh LỜI CAM ĐOAN Em xin cam đoan rằng số liệu và kết quả nghiên cứu trong khóa luận này là trung thực và không trùng lặp với các đề tài khác. Em xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện khóa luận này đã được cảm ơn và các thông tin trích dẫn trong khóa luận này đã được chỉ rõ nguồn gốc. Hà Nội, tháng 5 năm 2014 Sinh viên Tống Thị Ánh MỤC LỤC Trang Phần I: Mở đầu 5 1. Lí do chọn đề tài 5 2. Mục đích và nhiệm vụ nghiên cứu 6 3. Đối tượng và phạm vi nghiên cứu 6 4. Phương pháp nghiên cứu 6 5. Kết cấu khóa luận 7 Phần II: Nội dung 8 Chƣơng I: Tổng quan về vi điều khiển PIC 8 1.1. PIC là gì? 8 1.2. Các dòng PIC và cách lựa chọn vi điều khiển PIC 8 1.2.1. Các dòng PIC 8 1.2.2. Cách lựa chọn một vi điều khiển PIC 9 1.3. Ngôn ngữ lập trình cho PIC 9 1.4. Mạch nạp cho PIC 9 Chƣơng II: Tổng quan về vi điều khiển PIC 18F4520 11 2.1. Sơ đồ chân vi điều khiển PIC 18F4520 11 2.2. Các thông số về vi điều khiển PIC 18F4520 11 2.3. Sơ đồ khối của vi điều khiển PIC 18F4520 13 Chƣơng III: Tổng quan về LCD 16x2 14 3.1. Các chân điều khiển LCD 15 3.2. Chức năng các chân của LCD 17 3.3. Kết nối màn hình LCD 18 3.4. Các thanh ghi và tổ chức bộ nhớ LCD 16x2 19 3.4.1. Display Data Ram (DDRAM) 20 3.4.2. Character Generator Ram (CGRAM) 20 3.4.3. Bộ nhớ CGROM 21 3.5. Các lệnh cơ bản của LCD 22 3.6. Kết nối LCD với vi điều khiển PIC 18F4520 27 3.7. Khởi tạo LCD 29 3.7.1.Mạch khởi tạo bên trong chíp HD44780 30 3.7.2. Khởi tạo bằng lệnh 30 Chƣơng IV: Ứng dụng của vi điều khiển PIC 18F4520 34 4.1. Yêu cầu 34 4.2. Thiết kế mạch điện mô phỏng 35 4.2.1. Thiết kế phần cứng 35 4.2.2. Thiết kế phần mềm 36 Phần III: Kết luận 43 Tài liệu tham khảo 5 PHẦN I: MỞ ĐẦU 1. Lí do chọn đề tài Ngày nay, với sự phát triển vượt bậc của khoa học kĩ thuật và điện tử thì việc sử dụng các thiết bị điện tử có ý nghĩa rất quan trọng trong đời sống sinh hoạt cũng như sản xuất. Ngày càng có nhiều sản phẩm kĩ thuật ra đời đáp ứng được nhiều nhu cầu và lợi ích của con người. Hòa cùng xu hướng đó vi điều khiển đã khẳng định được vị thế vững chắc của mình trong nhiều ứng dụng. Các thiết bị vi điều khiển có nhiều ứng dụng rộng rãi với ưu điểm nhỏ gọn, linh hoạt và có thể điều khiển dễ dàng. Vi điều khiển ngày càng chiếm lĩnh và đóng vai trò cực kì quan trọng trong kĩ thuật điều khiển và tự động hóa. Ví dụ như: Việc sử dụng những biển quảng cáo, những thiết bị đèn chiếu sáng, hay việc chạy các dòng chữ trên biển quảng cáo,… Hiện nay, trên thị trường có rất nhiều họ vi điều khiển như: 8051, Motorola 68HC, AVR, ARM,… Ngoài họ 8051 đã được hướng dẫn cơ bản ở môi trường đại học thì việc lựa chọn vi điều khiển PIC để mở rộng kiến thức và phát triển các ứng dụng trên công cụ này là vô cùng hợp lí vì họ vi điều khiển này có thể tìm mua dễ dàng ở Việt Nam, giá thành không quá đắt, có đầy đủ tính năng của một vi điều khiển hoạt động độc lập,… Số lượng người sử dụng vi điều khiển PIC hiện nay tại Việt Nam cũng như trên thế giới ngày càng nhiều. Ngày nay, thiết bị hiển thị LCD (Liquid Crystal Display) được sử dụng trong rất nhiều các ứng dụng của vi điều khiển. LCD có rất nhiều ưu điểm so với các dạng hiển thị khác: Nó có khả năng hiển thị kí tự đa dạng, trực quan (chữ, số và kí tự đồ họa), dễ dàng đưa vào mạch ứng dụng theo nhiều giao thức giao tiếp khác nhau, tốn rất ít tài nguyên hệ thống và giá thành rẻ,… 6 Vì vậy sau một thời gian học tập và nghiên cứu về vi điều khiển PIC, em đã lựa chọn đề tài “ĐIỀU KHIỂN LCD DÙNG PIC 18F4520”. 2. Mục đích và nhiệm vụ nghiên cứu - Mục đích: + Tìm hiểu về vi điều khiển PIC + Tìm hiểu về màn hình tinh thể lỏng LCD + Nghiên cứu ứng dụng của vi điều khiển PIC trong việc hiển thị dữ liệu lên LCD - Nhiệm vụ: + Tìm hiểu tổng quan vi điều khiển PIC 18F4520 + Tìm hiểu LCD 16x2 sử dụng chíp HD44780 + Học cách lập trình C cho vi điều khiển PIC 18F4520 + Biết cách lập trình hiển thị trên LCD dùng PIC 18F4520 3. Đối tƣợng và phạm vi nghiên cứu - Đối tượng nghiên cứu: + Lập trình C cho vi điều khiển PIC 18F4520 điều khiển LCD + Họ vi điều khiển PIC + Màn hình tinh thể lỏng LCD 16x2 - Phạm vi nghiên cứu: + Vi điều khiển dòng PIC 18F4520 + Màn hình tinh thể lỏng LCD 16x2 4. Phƣơng pháp nghiên cứu - Phương pháp nghiên cứu lí thuyết - Thảo luận và đánh giá - Phương pháp thực nghiệm 7 5. Kết cấu khóa luận * Cấu trúc khóa luận gồm 4 chương: Chương I: Tổng quan về vi điều khiển PIC Giới thiệu chung về vi điều khiển PIC: Hiểu được các dòng PIC và cách lựa chọn vi điều khiển PIC; ngôn ngữ lập trình cho PIC và mạch nạp PIC. Chương II: Tổng quan về vi điều khiển PIC 18F4520 Tìm hiểu những nét cơ bản về vi điều khiển PIC 18F4520: Tìm hiểu về sơ đồ chân, sơ đồ khối và các thông số của vi điều khiển PIC 18F4520. Chương III: Tổng quan về LCD 16x2 Tìm hiểu cơ bản về LCD 16x2: Chức năng các chân của LCD, các thanh ghi và tổ chức bộ nhớ LCD; các lệnh cơ bản của LCD; việc kết nối LCD với vi điều khiển PIC 18F4520. Chương IV: Ứng dụng của vi điều khiển PIC 18F4520 Giới thiệu ứng dụng cụ thể của vi điều khiển PIC 18F4520 trong việc điều khiển LCD 16x2. 8 PHẦN II: NỘI DUNG CHƢƠNG I: TỔNG QUAN VỀ VI ĐIỀU KHIỂN PIC 1.1. PIC là gì? - PIC là viết tắt của “Programable Intelligent Computer”, có thể tạm dịch là “máy tính thông minh khả trình” do hãng Genenral Instrument đặt tên cho vi điều khiển đầu tiên của họ. - PIC 1650 được thiết kế để dùng làm các thiết bị ngoại vi cho vi điều khiển CP 1600. Vi điều khiển này sau đó được nghiên cứu phát triển thêm và từ đó hình thành nên dòng vi điều khiển PIC ngày nay. 1.2. Các dòng PIC và cách lựa chọn vi điều khiển PIC 1.2.1. Các dòng PIC - Các kí hiệu của vi điều khiển PIC: + PIC 12xxxx: Độ dài lệch 12 bit. + PIC 16xxxx: Độ dài lệch 14 bit. + PIC 18xxxx: Độ dài lệch 16 bit. + C: PIC có bộ nhớ EPROM (chỉ có 16C84 là EEPROM). + F: PIC có bộ nhớ flash. + LF: PIC có bộ nhớ flash hoạt động ở điện áp thấp. + LV: Tương tự như LF, đây là kí hiệu cũ. - Bên cạnh đó một số vi điều khiển có kí hiệu xxFxxx là EEPROM, nếu có thêm chữ A ở cuối là flash (ví dụ PIC 16F877 là EEPROM, còn PIC 16F877A là flash). - Ngoài ra còn có thêm một dòng vi điều khiển PIC mới là dsPIC. Ở Việt Nam phổ biến nhất là các họ vi điều khiển PIC do hãng Microchip sản xuất. [...]...1.2.2 C ch lựa chọn một vi điều khiển PIC - Trư c hết c n chú ý đến số chân c a vi điều khiển c n thiết cho ứng dụng C nhiều vi điều khiển PIC với số lượng chân kh c nhau, thậm chí c vi điều khiển chỉ c 8 chân, ngoài ra c n c c c vi điều khiển 28, 40, 44,…chân - C n chọn vi điều khiển PIC c bộ nhớ flash để c thể nạp xóa chương trình đư c nhiều lần hơn - Tiếp theo c n chú ý đến c c khối ch c năng... đư c tích hợp sẵn trong vi điều khiển, c c chuẩn giao tiếp bên trong - Sau c ng c n chú ý đến bộ nhớ chương trình mà vi điều khiển cho phép - Ngoài ra mọi thông tin về c ch lựa chọn vi điều khiển PIC c thể đư c tìm thấy trong cuốn sách “Select PIC guide” do nhà sản xuất Microchip cung c p 1.3 Ngôn ngữ lập trình cho PIC - Trình dịch cho PIC rất đa dạng, từ c c trình dịch sử dụng ngôn ngữ lập trình c p... nhiên c c mạch nạp trên c như c điểm là hạn chế về số vi điều khiển đư c hỗ trợ, bên c nh đó mỗi mạch nạp c n đư c sử dụng với một chương trình nạp thích hợp 10 CHƢƠNG II: TỔNG QUAN VỀ VI ĐIỀU KHIỂN PIC 18F4520 2.1 Sơ đồ chân vi điều khiển PIC 18F4520 Hình 2.1 Sơ đồ chân vi điều khiển PIC 18F4520 2.2 C c thông số về vi điều khiển PIC 18F4520 - CPU t c độ cao c 75 c u tr c lệnh, nếu đư c cho phép c ... 1 và cuối c ng là xóa EN về 0 để tạo một xung c nh xuống 16 3.2 Ch c năng c c chân c a LCD 16x2 - LCD thường sử dụng 14 chân, chế độ 16 chân khi c n điều khiển đèn nền Ch c năng c a c c chân như sau: Chân Ký Mô tả hiệu 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=5V c a mạch điều khiển. .. (đư c cung c p miễn phí bởi nhà sản xuất Microchip) đến c c trình dịch sử dụng c c ngôn ngữ lập trình c p cao hơn như C, Basic, Pascal,… Ngoài ra c n c một số trình dịch sử dụng ngôn ngữ lập trình đư c phát triển dành riêng cho PIC như PICBasic, MikroBasic,… - Ở đề tài này tôi đã tìm hiểu những tính năng và c ng c chính c a MPLAB Cxx, đây là trình dịch sử dụng ngôn ngữ lập trình C 1.4 Mạch nạp cho. .. tiếp c n thiết C c chân này đư c đánh số thứ tự và đặt tên như hình 3.2 : 14 Hình 3.2 C c chân c a LCD HD44780 3.1 C c chân điều khiển LCD - C c chân điều khiển vi c đ c và ghi LCD bao gồm RS, R/W và EN: + RS (chân số 4): Chân lựa chọn thanh ghi (Select Register), chân này cho phép lựa chọn một trong hai thanh ghi IR ho c DR để làm vi c Vì c hai thanh ghi này đều đư c kết nối với c c chân Data c a LCD... quá trình mua sản phẩm Ngoài ra do tính năng cho phép nhiều chế độ nạp kh c nhau, c n c rất nhiều mạch nạp đư c thiết kế dành cho vi điều khiển PIC - C thể sơ lư c một số mạch nạp cho PIC như sau: + JDM programmer: Mạch nạp này dùng chương trình nạp Icprog cho phép nạp c c vi điều khiển PIC c hỗ trợ tính năng nạp chương trình điện áp thấp ISCSP (In Circuit Serial Programming) Hầu hết c c mạch nạp... PIC - Đây là một dòng sản phẩm rất đa dạng dành cho vi điều khiển PIC C thể sử dụng c c mạch nạp đư c cung c p bởi nhà sản xuất là hãng Microchip như: PICSTART plus, MPLAB ICD2, MPLAB PM3, PRO MATE - C thể dùng c c sản phẩm này để nạp cho vi điều khiển kh c thông qua chương trình MPLAB Dòng sản phẩm chính thống này c ưu thế là nạp 9 đư c cho tất c c c vi điều khiển PIC, tuy nhiên giá thành rất cao... tương đối chậm (so với vi điều khiển) , vì thế một c BF đư c dùng để báo LCD đang bận, nếu BF=1 thì chúng ta phải chờ cho LCD xử lí xong nhiệm vụ hiện tại, đến khi nào BF=0 một thao t c mới sẽ đư c gán cho LCD Vì thế khi làm vi c với Text LCD chúng ta nhất thiết phải c một chương trình con tạm gọi là wait_LCD để chờ cho đến khi LCD rảnh C hai c ch để vi t chương trình wait_LCD C ch 1 là đ c bit BF... làm chậm quá trình thao t c LCD, nếu quá nhỏ sẽ gây ra lỗi hiển thị + EN (chân số 6): Chân cho phép LCD hoạt động (Enable), chân này c n đư c kết nối với bộ điều khiển để cho phép thao t c LCD Để đ c và ghi data từ LCD chúng ta c n tạo một “xung c nh xuống” trên chân EN Nói theo c ch kh c, muốn ghi dữ liệu vào LCD trư c hết c n đảm bảo rằng chân EN=0, tiếp đến xuất giữ liệu c c chân D0:7, sau đó set chân . C c dòng PIC và c ch lựa chọn vi điều khiển PIC 8 1.2.1. C c dòng PIC 8 1.2.2. C ch lựa chọn một vi điều khiển PIC 9 1.3. Ngôn ngữ lập trình cho PIC 9 1.4. Mạch nạp cho PIC 9 Chƣơng II:. điều khiển PIC với số lượng chân kh c nhau, thậm chí c vi điều khiển chỉ c 8 chân, ngoài ra c n c c c vi điều khiển 28, 40, 44,…chân. - C n chọn vi điều khiển PIC c bộ nhớ flash để c thể. điều khiển PIC do hãng Microchip sản xuất. 9 1.2.2. C ch lựa chọn một vi điều khiển PIC - Trư c hết c n chú ý đến số chân c a vi điều khiển c n thiết cho ứng dụng. C nhiều vi điều

Ngày đăng: 16/07/2015, 08:22

Tài liệu cùng người dùng

Tài liệu liên quan