Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 71 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
71
Dung lượng
2,9 MB
Nội dung
KITTHỰCTẬPPIC GVHD:LẠI NGUYỄN DUY Chương 1: CẤU TRÚC BÊN TRONG CỦA VI ĐIỀU KHIỂN PIC 16F877A 1.1 Sơ lược Vi điều khiển PIC 16F877A: PIC 16F877A dòng PIC phổ biến (đủ mạnh tính năng, nhớ đủ cho hầu hết ứng dụng thơng thường).Cấu trúc tổng qt PIC 16F877A sau: -8 K Flash ROM -368 Bytes RAM -256 Bytes EEPROM -5 ports (A, B, C, D, E) vào với tín hiệu điều khiển độc lập -2 định thời bits (Timer Timer 2) -Một định thời 16 bits (Timer1) hoạt động chế độ tiết kiệm lượng (Sleep Mode )với nguồn xung clock ngồi -2 CCP( Capture / Compare/ PWM) -1 biến đổi AD 10 bits, ngõ vào -2 so sánh tương tự (Compartor) -1 đị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 -35 tập lệnh có độ dài 14 bits -Tần số hoạt động tối đa 20MHz SVTH:VÕ THANH BÌNH NGƠ QUANG ĐẠT KITTHỰCTẬPPIC GVHD:LẠI NGUYỄN DUY 1.2 Sơ lược chân PIC 16F877A: Hình 1.1 Hình 1.2 SVTH:VÕ THANH BÌNH NGƠ QUANG ĐẠT KITTHỰCTẬPPIC SVTH:VÕ THANH BÌNH NGƠ QUANG ĐẠT GVHD:LẠI NGUYỄN DUY KITTHỰCTẬPPIC SVTH:VÕ THANH BÌNH NGƠ QUANG ĐẠT GVHD:LẠI NGUYỄN DUY KITTHỰCTẬPPIC SVTH:VÕ THANH BÌNH NGƠ QUANG ĐẠT GVHD:LẠI NGUYỄN DUY KITTHỰCTẬPPIC GVHD:LẠI NGUYỄN DUY Hình 1.3 SVTH:VÕ THANH BÌNH NGƠ QUANG ĐẠT KITTHỰCTẬPPIC GVHD:LẠI NGUYỄN DUY 1.3 Một số điểm đặc biệt CPU: 1.3.1 Dao động: PIC16F877A hoạt động bốn chế độ dao động khác nhau: Trong chế độ LP,XT HS sử dụng thạch anh dao động nối vào chân OSC1 OSC2 để tạo dao động Hình 1.4 Việc lựa chọn tụ dao động thạch anh dựa vào bảng sau: Lưu ý: Tụ có giá trị lớn tăng tính ổn định dao động làm tăng thời gian khởi động SVTH:VÕ THANH BÌNH NGƠ QUANG ĐẠT KITTHỰCTẬPPIC GVHD:LẠI NGUYỄN DUY Chế độ dao động RC sử dụng giải pháp tiết kiệm ứng dụng khơng cần xác thời gian * Cách tính chu kì máy: Ví dụ ta sử dụng thạch anh 10Mhz Khi đó: Tần số dao động thạch anh Fosc = 10Mhz → Chu kỳ dao đơng thạch anh Tosc = 1/Tosc= 1/10*106 (s) Chu kỳ máy: T_instruction = 4*Tosc = 4/10*106(s) = 0.4 µs = 400 ns 1.3.2 Reset: PIC16F877A bị reset nhiều ngun nhân khác như: SVTH:VÕ THANH BÌNH NGƠ QUANG ĐẠT 10 KITTHỰCTẬPPIC SVTH:VÕ THANH BÌNH NGƠ QUANG ĐẠT GVHD:LẠI NGUYỄN DUY 11 KITTHỰCTẬPPIC GVHD:LẠI NGUYỄN DUY 1.3.3 MCLR: PIC16F877A có lọc nhiễu phần MCLR Bộ lọc nhiễu phát bỏ qua tín hiệu nhiễu Ngõ vào MCLR chân PIC16F877A Khi đưa chân xuống thấp ghi bên VĐK tải giá trị thích hợp để khởi động lại hệ thống (Lưu ý: reset WDT khơng làm chân MCLR cuống mức thấp) 1.3.4 Interrupts: PIC16F877A có nhiều nguồn ngắt khác Đây số ngắt tiêu biểu: - Ngắt ngồi xảy chân INT - Ngắt Timer0 - Ngắt Timer1 - Ngắt Timer2 - Ngắt thay đổi trạng thái chân PortB - Ngắt so sánh điện - Ngắt Port song song - Ngắt USART - Ngắt nhận liệu - Ngắt truyền liệu - Ngắt chuyển đổi ADC - Ngắt hình LCD - Ngắt hồn tất ghi EEPROM - Ngắt module CCP - Ngắt Module SSP SVTH:VÕ THANH BÌNH NGƠ QUANG ĐẠT 12 KITTHỰCTẬPPIC GVHD:LẠI NGUYỄN DUY Một so sánh đơn trình bày hình bên cạnh đây, cho biết thay đổi trạng thái logic ngõ tương ứng với trạng thái tín hiệu Analog ngõ vào Khi VIN+ > VIN- ngõ lên mức cao ngược lại Tại cạnh ngõ khơng biết chắn 1.11.2 Nguồn tham chiếu so sánh: Một nguồn tham chiếu nội ngoại sử dụng Việc lựa chọn nguồn nơi hay ngoại tùy thuộc vào chế độ hoạt động so sánh 1.11.2.1 Tín hiệu điện tham chiếu ngoại: Khi sử dụng nguồn tham chiếu ngoại, module so sánh cấu hình hoạt động từ nguồn so sánh khác Điện so sánh phải nằm khoảng từ Vss đến Vdd điện áp đưa vào chân so sánh 11.2.2 Tín hiệu điện tham chiếu nội: Module so sánh cho phép lựa chọn điện so sánh nội dùng cho so sánh Tín hiệu tham chiếu nội sử dụng chế độ CM2:CM0 = 010 Trong chế độ tín hiệu so sánh nội đưa vào chân VIN+ so sánh 1.11.2.3 Thời gian đáp ứng: Thời gian đáp ứng thời gian tính từ lựa chọn điện tham chiếu tín hiệu ngõ vào đến có giá trị điện áp hợp lý ngõ 1.11.2.4 Tín hiệu ngõ so sánh: Tín hiệu ngõ so sánh đọc thơng qua ghi CMCON (các bit bit đọc) Ngõ so sánh nối trực tiếp với chân xuất nhập RA4 RA5, chân phải cấu hình ngõ chế độ SVTH:VÕ THANH BÌNH NGƠ QUANG ĐẠT 59 KITTHỰCTẬPPIC - GVHD:LẠI NGUYỄN DUY Chú ý: Khi đọc ghi Port, tất chân cấu hình ngõ vào Analog đọc Các chân cấu ngõ vào số chuyển đổi ngõ vào tương tự tương ứng với ngõ vào Trigger Schmitt Mức tương tự chân xác định ngõ vào số gây buffer ngõ vào để dùng nhiều dòng định RA4 chân xuất nhập thu mở Khi sử dụng ngõ ra, điện trở kéo lên u cầu 1.11.2.5 Ngắt so sánh: Cờ ngắt CMIF so sánh bật lên giá trị ngõ so sánh thay đổi so với giá trị bit CMxOUT Cờ ngắt phải xóa phần mềm để ngắt xảy Lưu ý: để ngắt xảy ra, phải cho phép cách set bit CMIE, PEIE, GIE 1.11.2.6 Hoạt động so sánh chế độ ngủ: Các so sánh hoạt động chế độ ngủ ngắt xảy cho phép Các ngắt đánh thức VĐK 1.11.2.7Ảnh hưởng Reset: Khi Reset thiết bị xảy ra, buộc ghi CMCON trạng thái reset nó, làm cho module rơi vào chế độ tắt, CM2:CM0 = 111 Các ghi liên quan đến module so sánh: SVTH:VÕ THANH BÌNH NGƠ QUANG ĐẠT 60 KITTHỰCTẬPPIC GVHD:LẠI NGUYỄN DUY 1.11.2.8 Module điện áp tham chiếu so sánh: Module điện áp tham chiếu so sánh sử dụng chủ yếu với module so sánh cần sử dụng nguồn so sánh nguồn nội Module điện áp tham chiếu so sánh bao gồm hệ thống 16 điện trở, hệ thống cung cấp cho điện áp tham chiếu có thề lập trình Dãy điện trở tạo dãy cầu phân cung cấp cho điện tham chiếu khác Thanh ghi điều khiển CVRCON: Bit Bit Bit CVREN: bit cho phép CVR hoạt động 1: cung cấp nguồn cho CVR 0: ngưng cấp nguồn cho CVR CVROE: cho phép ngõ CVR 1: điện áp CVREF ngõ chân RA2 0: điện áp CVREF khơng kết nối với chân RA2 CVRR: bit lựa chọn dãi giá trị hoạt động cùa CVREF 1: đến 0.75 CVRSRC, với kích thước buớc CVRSRC/24 0: 0.25 CVRSRC đến 0.75 CVRSRC, với kích thuớc bước CVRSRC/32 SVTH:VÕ THANH BÌNH NGƠ QUANG ĐẠT 61 KITTHỰCTẬPPIC GVHD:LẠI NGUYỄN DUY Bit khơng sử dụng, giá trị Bit 3-0 CVR3:CVR0: bit lựa chọn giá trị VREF ( VR3:VR0