Đồ án kit thực tập đa năng PIC

213 217 0
Đồ án kit thực tập đa năng PIC

Đ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

ðồ Án Tốt Nghiệp Khóa 2006-2009 GVHD: Th.s LÊ ðÌNH KHA MỤC LỤC CHƯƠNG DẪN NHẬP trang PHẦN I : KHẢO SÁT VI ðIỀU KHIỂN PIC 16F877A trang 10 CHƯƠNG I: CẤU TRÚC PHẦN CỨNG CỦA 16F877A trang 11 1.1 Sơ lượt vi điều khiển PIC 16F877A trang 11 1.2 Sơ lượt chân PIC 16F877A trang 17 1.3 Một số điểm đặc biệt CPU trang 17 1.3.1 Dao động trang 17 1.3.2 Reset trang 18 1.3.3 MCLR (Master clear) trang 18 1.3.4 Interrupts trang 19 1.3.5 Chế độ nguồn thấp Sleep (Power down Mode) .trang 20 1.3.6 Bộ định thời giám sát (Watch Dog Timer – WDT) .trang 20 1.4 Tổ chức nhớ .trang 21 1.4.1 Bộ nhớ chương trình trang 21 1.4.2 Bộ nhớ liệu trang 22 1.4.2.1Vùng Ram ða Mục ðích trang 24 1.4.2.2 Vùng ghi chức đặt biệt trang 24 1.4.3 Các ghi chức đặc biệt trang 27 1.4.3.1.Thanh ghi trạng thái (Status register) trang 27 1.4.3.2 Thanh ghi tùy chọn (Option Reg_Register) .trang 28 1.4.3.3 Thanh ghi điều khiển ngắt INTCON .trang 29 1.4.3.4 Thanh ghi cho phép ngắt ngoại vi trang 30 1.4.3.5 Thanh ghi cờ ngắt ngoại vi trang 30 1.4.3.6 Thanh ghi cho phép ngắt ngoại vi trang 31 1.4.3.7 Thanh ghi cờ ngắt ngoại vi trang 32 1.4.4 PCL PCLATH trang 32 1.4.5 Ngăn xếp Stack trang 33 1.4.6 ðịnh địa trực tiếp địa gián tiếp, ghi INF FSR trang 33 1.5 I/O port trang 34 1.5.1 Port A ghi TRIS A .trang 35 1.5.2 Port B ghi TRIS B trang 36 1.5.3 Port C ghi TRIS C trang 38 1.5.4 Port D ghi TRIS D .trang 39 1.5.5 Port E ghi TRIS E trang 39 CHƯƠNG II: BỘ ðỊNH THỜI trang 41 2.1 Bộ định thời timer .trang 41 2.1.1 Giới thiệu trang 41 2.1.2 Hoạt động định thời trang 41 2.1.3 Ngắt Timer .trang 41 2.1.4 Sử dụng Timer với nguồn xung clock ngồi .trang 42 2.1.5 Bộ tiền định tỉ lệ bit Timer trang 42 2.2 Bộ định thời Timer trang 42 2.2.1 Giới thiệu trang 42 2.2.2 Thanh ghi điều khiển Timer trang 43 2.2.3 Chế độ định thời hoạt động Timer trang 43 Phạm Xn Cơng & Nguyễn Tăng Vương trang ðồ Án Tốt Nghiệp Khóa 2006-2009 GVHD: Th.s LÊ ðÌNH KHA 2.2.4 Chế độ đếm trang 43 2.2.5 Giao động riêng Timer .trang 44 2.2.6 Ngắt Timer .trang 44 2.3 Bộ định thời Timer trang 44 2.3.1 Giới thiệu trang 44 2.3.2 Thanh ghi điều khiển T2CON trang 45 2.3.3 Xóa tỉ lệ trang 45 2.3.4 Nguồn xung clock cho Timer trang 45 2.3.5 Thanh ghi TMR2 PR2 trang 46 2.3.6 Tín hiệu báo trạng thái cân trang 46 2.3.7 Chế độ ngủ trang 46 CHƯƠNG III: MODULE CCP trang 47 3.1 Giới thiệu .trang 47 3.2 Thanh ghi điều khiển module CCP trang 47 3.3 Chế độ Capture .trang 48 3.3.1 Bộ định tỉ lệ CCP trang 48 3.4 Chế độ Compare trang 48 3.5 Chế độ điều biến xung PWM trang 49 3.5.1 Chu kỳ PWM trang 49 3.5.2.Chu kỳ nhiệm vụ PWM trang 50 3.5.3 Cài đặt hoạt động cho PWM trang 50 3.5.4 Module MSSP .trang 51 CHƯƠNG IV: BỘ BIẾN ðỔI ADC 10 BIT .trang 53 4.1 Giới thiệu module ADC 10 bit trang 53 4.2 Các ghi điều khiển trang 53 4.3 Hoạt động Module ADC trang 54 4.4.Thời gian lấy mẫu trang 55 4.5 Lựa chọn xung clock cho biến đổi ADC trang 56 4.6 Cấu hình chân Analog trang 57 4.7 Chuyển đổi ADC trang 57 4.8 Hoạt động module ADC chế độ ngủ trang 58 4.9 Ảnh hưởng Reset .trang 58 CHƯƠNG V: ðIỆN THẾ THAM CHIẾU VÀ CÁC BỘ SO SÁNH ðIỆN trang 59 5.1 Module Comparator .trang 59 5.1.1 Giới thiệu module comparator .trang 59 5.1.2 Cài đặt chế độ cho so sánh trang 59 5.1.3 Nguồn tham chiếu so sánh trang 61 5.1.3.1 Tín hiệu điện áp tham chiếu ngoại trang 61 5.1.3.2 Tín hiệu điện áp tham chiếu nội trang 61 5.1.4 Thời gian đáp ứng .trang 61 5.1.5 Tín hiệu ngõ so sánh trang 61 5.1.6 Ngắt so sánh .trang 62 5.1.7 Hoạt động so sánh chế độ ngủ trang 62 5.1.8 Ảnh hưởng Reset trang 62 5.2 Module điện áp tham chiếu trang 62 5.2.1 Giới thiệu module điện áp tham chiếu trang 62 5.2.2 Thanh ghi điều khiển CVRCON trang 63 5.2.3 ðộ xác điện áp tham chiếu trang 63 Phạm Xn Cơng & Nguyễn Tăng Vương trang ðồ Án Tốt Nghiệp Khóa 2006-2009 GVHD: Th.s LÊ ðÌNH KHA 5.2.4 Hoạt động module VREF chế độ ngủ trang 63 5.2.5 Trạng thái module Reset .trang 63 5.2.6 Sử dụng module với mạch ngồi trang 64 5.3 Giao Tiếp Nối Tiếp trang 64 5.3.1 Usart trang 64 5.3.1.1 Usart bất đồng trang 65 5.3.1.2 Truyền Dữ Liệu Qua Chuẩn Giao Tiếp Usart Bất Đồng Bộ trang 65 5.3.1.3 Nhận Dữ Liệu Qua Chuẩn Giao Tiếp Usart Bất Đồng Bộ trang 66 5.3.2 Usart Đồng Bộ trang 68 5.4.2.1 Truyền liệu qua chuẩn giao tiếp usart đồng master mode trang 68 5.3.2.2 Nhận liệu qua chuẩn giao tiếp usart đồng master mode trang 69 5.3.3 Truyền liệu qua chuẩn giao tiếp usart đồng slave mode trang 69 5.3.4 Nhận liệu qua chuẩn giao tiếp usart đồng slave mode trang 70 5.4 MSSP trang 71 5.5 SPI trang 71 5.6 I2C trang 74 5.6.1 I2C Slave Mode trang 75 5.6.2 I2C Master Mode trang 81 5.7 Cổng Giao Tiếp Song Song Psp (Parallel Slave Port) trang 86 5.8 Các Đặc Tính Của Oscillator trang 87 CHƯƠNG VI: TÂP LỆNH SỬ DUNG TRONG CCS trang 88 PHẦN II: CÁC THÀNH PHẦN CỦA KIT THỰC TÂP PIC 16F877A trang 113 CHƯƠNG I: HIỂN THỊ LED ðƠN trang120 1.1 Giới thiệu chung trang120 1.2 Mạch ngun lý .trang120 CHƯƠNG II: HIỂN THỊ LED ðOẠN trang121 2.1 Các khái niệm trang121 2.2 Kết nối với vi điều khiển trang122 2.3 Giao tiếp vi điều khiển với nhiều led đoạn trang122 2.4 Lưu đồ giải thuật trang123 2.5.Mạch ngun lý trang124 CHƯƠNG III: ðÈN GIAO THƠNG trang125 3.1 Giới thiệu trang125 3.2 Sơ đồ ngun lý trang125 3.3 Lưu đồ giải thuật trang126 CHƯƠNG IV: LED MA TRẬN trang127 4.1 Hiện thị led ma trận .trang127 4.1.1 Giới thiệu trang128 5.1.2 Led ma trận 8x8 trang128 4.2 Phương pháp hiển thị IC chốt trang129 4.2.1 Chốt hàng trang129 4.2.2 Chốt cột trang129 4.3 Phương pháp dùng ghi dịch trang130 4.3.1 Qt hàng trang130 4.3.1.1 Giới thiệu chung phương pháp qt hàng trang131 4.3.1.2 Q trình thực qt hàng trang131 Phạm Xn Cơng & Nguyễn Tăng Vương trang ðồ Án Tốt Nghiệp Khóa 2006-2009 GVHD: Th.s LÊ ðÌNH KHA 4.3.1.3 Ví dụ .trang132 4.3.2 Qt cột trang133 4.3.2.1 Giới thiệu chung phương pháp qt cột .trang133 4.3.2.2 Q trình thực qt cột trang133 4.3.2.3 Ví dụ .trang134 4.4 Mạch ngun lý trang134 CHƯƠNG V: LCD trang135 5.1 Giới thiệu chung LCD trang136 5.1.1 Các ghi .trang137 5.1.2 Cờ báo bận BF trang137 5.1.3 Bộ đếm địa AC .trang138 5.1.4 Vùng RAM hiển thị DDRAM trang138 5.1.5 Vùng ROM chứa ký tự CGROM trang139 5.1.6 Vùng RAM chứa ký tự đồ họa CGRAM trang140 5.2 Tập lệnh LCD trang141 5.3 Khởi tạo LCD trang143 5.3.1 Mạch khởi tạo bên chip HD44780 .trang143 5.3.2 Khởi tạo lệnh .trang144 5.4 Lưu đồ giải thuật trang145 5.5 Mạch ngun lý trang146 CHƯƠNG VI: ADC trang147 6.1 Giới thiệu module ADC trang147 6.1.1 Cơ ADC trang148 6.1.2 ADC PIC 16F877A trang148 6.2 Sơ đồ ngun lý trang148 CHƯƠNG VII: BÀN PHÍM GIAO TIẾP LCD trang149 7.1 Keypad ngun lý hoạt động trang149 7.2 Keypad giao tiếp với LCD trang149 7.3 Sơ đồ giải thuật .trang150 CHƯƠNG VIII: EEPROM 24C04 trang151 8.1 Giới Thiệu trang151 8.2 Hình dạng .trang151 8.3 Sơ đồ cấu tạo trang152 8.4 Sơ đồ chân trang152 8.5 Mạch ngun lý trang153 CHƯƠNG IX: ðO NHIỆT ðỘ DÙNG LM35 trang154 9.1 Giới thiệu trang154 9.2 Một số đặc tính LM35 trang154 9.3 Mạch ngun lý trang155 PHẦN III: CÁC BÀI TẬP THỰC HÀNH trang156 Bài 1: hiển thị trạng thái port led trang157 Bài 2: hiển thị trạng thái port thay đổi thời gian delay .trang158 Bài 3: hiển thị ngày tháng năm sinh led trang159 Bài 4: hiển thị đồng hồ led trang160 Bài 5: chương trình đèn giao thơng trang161 Bài 6: chẠy chữ led ma trận trang162 Bài 7: hiển thỊ ký tự lcd .trang163 Phạm Xn Cơng & Nguyễn Tăng Vương trang ðồ Án Tốt Nghiệp Khóa 2006-2009 GVHD: Th.s LÊ ðÌNH KHA 19183173Bài 8: giao tiếp bàn phím số hex hiển thị lcd .trang164 Bài 9: điều chỉnh adc hiển thị led đơn trang165 Bài 10: đo nhiệt độ .trang166 PHẦN VI: GIẢI CÁC BÀI TẬP THỰC HÀNH trang167 Bài 1: hiển thị trạng thái port led đơn trang168 Bài 2: hiển thị trạng thái port thay đổi thời gian delay .trang171 Bài 3: hiển thị ngày tháng năm sinh led trang179 Bài 4: hiển thị đồng hồ led .trang181 Bài 5: chương trình đèn giao thơng trang183 Bài 6: chạy chữ led ma trận trang186 Bài 7: hiển thị ký tự lcd trang191 Bài 8: giao tiếp bàn phím số hex hiển thị lcd trang192 Bài 9: điều chỉnh adc hiển thị led đơn trang196 Bài 10: đo nhiệt độ .trang197 PHẦN VI: PHỤ LỤC .trang206 Phụ lục 1: 16F877A .trang207 Phụ lục 2: DEFS_16F877A trang213 Phạm Xn Cơng & Nguyễn Tăng Vương trang ðồ Án Tốt Nghiệp Khóa 2006-2009 GVHD: Th.s LÊ ðÌNH KHA I ðẶT VẤN ðỀ: Ngày với phát triển cơng nghiệp vi điện tử, kỹ thuật số hệ thống điều khiển dần tự động hóa Với kỹ thuật tiên tiến vi xử lý, vi mạch số…được ứng dụng vào lãnh vực điều khiển, hệ thống điều khiển khí thơ sơ, với tốc độ xử lý chậm chạm xác thay hệ thống điều khiển tự động với lệnh chương trình thiết lập trước ðể học tốt mơn vi điều khiển phải có thiết bị học tập thiết bị kit thực tập, đồng ý khoa ðiện Tử - Tin Học Trường Cao ðẳng Kỹ Thuật Cao Thắng Nhóm chúng em định làm đề tài tốt nghiệp: “Kit Thực Tập Vi ðiều Khiển Pic” II GIỚI HẠN ðỀ TÀI: Với thời gian gần năm tuần thực đề tài trình độ chun mơn có hạn, chúng em cố gắng để hồn thành đồ án giải vấn đề sau: Led đơn Hiển thị Led đoạn ðèn giao thơng Chạy chữ led ma trận Hiển thị LCD ADC Giao tiếp bàn phím ðo nhiệt độ dùng LM35 III MỤC ðÍCH NGHIÊN CỨU : Mục đích trước hết thực đề tài để hồn tất chương trình mơn học để đủ điều kiện trường Cụ thể nghiên cứu đề tài chúng em muốn phát huy thành ứng dụng vi điều khiển để tạo sản phẩm cho bạn sinh viên khóa sau Khơng tập tài liệu cho bạn sinh viên tham khảo Ngồi q trình thực đề tài hội để chúng em tự kiểm tra lại kiến thức học trường ðồng thời phát huy tính sáng tạo, khả giải vấn đề theo nhu cầu đặt Và dịp để chúng em khẳng định trước trường để tham gia vào hoạt động sản xuất xã hội Phạm Xn Cơng & Nguyễn Tăng Vương trang ðồ Án Tốt Nghiệp Khóa 2006-2009 Phạm Xn Cơng & Nguyễn Tăng Vương GVHD: Th.s LÊ ðÌNH KHA trang 10 ðồ Án Tốt Nghiệp Khóa 2006-2009 GVHD: Th.s LÊ ðÌNH KHA 1.1 SƠ LƯỢC VỀ VI ðIỀU KHIỂN PIC16F877A Đây vi điều khiển thuộc họ PIC16Fxxx với tập lệnh gồm 35 lệnh có độ dài 14 bit Mỗi lệnh thực thi chu kì xung clock Tốc độ hoạt động tối đa cho phép 20 MHz PIC 16F877A dòng PIC phổ biến (đủ mạnh tính năng, 40 chân, nhớ đủ cho hầu hết ứng dụng thơng thường) Cấu trúc tổng qt PIC16F877A sau: K Flash ROM 368 Bytes RAM 256 Bytes EEPROM ports (A, B, C, D, E) vào với tín hiệu điều khiển độc lập định thời bits (Timer Timer 2) Một định thời 16 bits (Timer 1) hoạt động chế độ tiết kiệm lượng (SLEEP MODE) với nguồn xung Clock ngồi bơ CCP( Capture / Compare/ PWM) biến đổi AD 10 bits, ngõ vào so sánh tương tự (Compartor) định thời giám sát (WatchDog Timer) Một cổng song song bits với tín hiệu điều khiển Một cổng nối tiếp 15 nguồn ngắt Có chế độ tiết kiệm lượng Nạp chương trình cổng nối tiếp ICSP(In-Circuit Serial Programming) ðược chế tạo cơng nghệ CMOS 35 tập lệnh có độ dài 14 bits Tần số hoạt động tối đa 20MHz CÁC ĐẶC TÍNH NGOẠI VI BAO GỒM CÁC KHỐI CHỨC NĂNG SAU Timer0: đếm bit với chia tần số bit Timer1: đếm 16 bit với chia tần số, thực chức đếm dựa vào xung clock ngoại vi vi điều khiển hoạt động chế độ sleep Timer2: đếm bit với chia tần số, postcaler Hai Capture/so sánh/điều chế độ rông xung Các chuẩn giao tiếp nối tiếp SSP (Synchronous Serial Port), SPI I2C Chuẩn giao tiếp nối tiếp USART với bit đòa Cổng giao tiếp song song PSP (Parallel Slave Port) với chân điều khiển RD, WR, CS bên Phạm Xn Cơng & Nguyễn Tăng Vương trang 11 ðồ Án Tốt Nghiệp Khóa 2006-2009 GVHD: Th.s LÊ ðÌNH KHA Các đặc tính Analog: kênh chuyển đổi ADC 10 bit Hai so sánh Bên cạnh vài đặc tính khác vi điều khiển như: Bộ nhớ flash với khả ghi xóa 100.000 lần Bộ nhớ EEPROM với khả ghi xóa 1.000.000 lần Dữ liệu nhớ EEPROM lưu trữ 40 năm Khả tự nạp chương trình với điều khiển phần mềm Nạp chương trình mạch điện ICSP (In Circuit Serial Programming) thông qua chân Watchdog Timer với dao động Chức bảo mật mã chương trình Chế độ Sleep Có thể hoạt động với nhiều dạng Oscillator khác 1.2 SƠ LƯỢC VỀ CÁC CHÂN CỦA PIC16F877A Phạm Xn Cơng & Nguyễn Tăng Vương trang 12 ðồ Án Tốt Nghiệp Khóa 2006-2009 Phạm Xn Cơng & Nguyễn Tăng Vương GVHD: Th.s LÊ ðÌNH KHA trang 13 ðồ Án Tốt Nghiệp Khóa 2006-2009 output_a(0xfb); output_b(so[9]); GVHD: Th.s LÊ ðÌNH KHA //ghi DELAY_MS(150); } if( input(PIN_D7)==0 ) //cho D7 xuong { a=0; while(a

Ngày đăng: 07/09/2017, 12:01

Từ khóa liên quan

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

Tài liệu liên quan