Tài liệu PIC 18f4520

100 3.5K 25
Tài liệu PIC 18f4520

Đ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

Giáo trình PIC 18f4520 Nguyễn Đức Thịnh MỤC LỤC I Tổng quan vi điều khiển pic18f4520 Sơ đồ chân vi điều khiển pic18f4520 Các thông số vi điều khiển pic18f4520 II Ngắt Khái niệm Hoạt động ngắt vi điều khiển Pic 18f4520 Các ghi điều khiển ngắt III Hoạt động vào Port (I/O Ports) 13 Các ghi, sơ đồ khối điều khiển hoạt động vào 13 PORTA 14 PORTB 16 PORTC 17 PORTD 18 PORTE 19 IV Hoạt động Timer 20 Timer0 20 1.1 Đặc điểm, ghi điều khiển, sơ đồ khối Timer0 20 1.2 Các chế độ hoạt động Timer0 23 TIMER1 23 2.1 Đặc điểm, ghi điều khiển, sơ đồ khối Timer1 23 2.2 Các chế độ hoạt động Timer1 26 TIMER2 27 3.1 Đặc điểm, ghi điều khiển, sơ đồ khối Timer1 27 3.2 Chế độ hoạt động Timer2 29 V PWM 29 Khái niệm 29 PWM pic 18f4520 30 VI ADC 33 Khái niệm 33 Trang: Giáo trình PIC 18f4520 Nguyễn Đức Thịnh Các ghi điều khiển hoạt động ADC 34 VII Truyền thông nối tiếp 37 giới thiệu 37 Tổng quan khối MSSP 37 2.1 SPI 37 2.2 I2C 44 EUSART 78 3.0 Tổng quan khối EUSART 78 3.1 Các ghi 79 3.2 Bộ phát tốc độ baud (BRG) 83 3.3 Chế độ EUSART bất đồng 89 3.4 EUSART đồng 94 Trang: Giáo trình PIC 18f4520 Nguyễn Đức Thịnh Datasheet PIC 18f4520 I Tổng quan vi điều khiển pic18f4520 Bộ vi điều khiển ghi tắt Micro-controller mạch tích hợp chip lập trình được, dùng để điều khiển hoạt động hệ thống Theo tập lệnh người lập trình, vi điêu khiển tiến hành đọc, lưu trữ thông tin, xử lý thông tin, đo thời gian tiến hành đóng mở cấu Trong thiết bị điện điện tử vi điều khiển điều khiển hoạt động ti vi, máy giặt, đầu đọc lase, lò vi ba, điện thoại …Trong hệ thống sản xuất tự động, vi điều khiển sử dụng robot, hệ thống đo lường giám sát Các hệ thống thông minh vai trò vi điều khiển ngày quan trọng Hiện thị trường có nhiều họ vi điều khiển như: 6811 Motorola, 8051 Intel, Z8 Zilog, PIC Microchip Technology … Trong đề tài nghiên cứu pic18f4520 có nhiều ưu điểm loại vi điều khiển : ADC 10 BÍT, PWM 10 BÍT, EEPROM 256 BYTE, COMPARATER, …ngoài trường đại học giới đặc biệt nước Châu Âu hầu hết xem PIC môn học môn vi diều khiển nói bạn thấy phổ biến rộng rãi Ngoài PIC nhiều nhà sản xuat phần mềm tạo ngôn ngữ hổ trợ cho việc lập trình ngôn ngữ Asembly :MPLAB, CCSC, HTPIC, MIRKROBASIC,… Hiện có nhiều dòng PIC có nhiều khác biệt phần cứng, điểm qua vài nét sau :  8/16 bít CPU, xây dựng theo kiến trúc kiến trúc Harvard sửa đổi, với tập lệnh rút gọn (do PIC thuộc loại RISC)  Flash Rom tuỳ chọn 256 byte đến 256 kbybe  Các cổng xuất/nhập (mức lôgic thường từ 0v đến 5v, ứng với mức logic 1)  8/16 bít timer  Các chuẩn giao tiếp ngoại vi nối tiếp đồng bộ/ không đồng  Bộ chuyển đổi ADC  Bộ so sánh điện áp  MSSP Pripheral dùng cho giao tiếp I2C, SPI  Bộ nhớ nội EEPROM - ghi/ xoá lên tới hàng triệu lần Trang: Giáo trình PIC 18f4520 Nguyễn Đức Thịnh  Modul điều khiển động cơ, đọc encoder  Hỗ trợ giao tiếp USB  Hỗ trợ điều khiển Ethernet  Hỗ trợ giao tiếp CAN  Hỗ trợ giao tiếp LIN  Hỗ trợ giao tiếp IRDA  DSP tính xử lý tín hiệu số Sơ đồ chân vi điều khiển pic18f4520 Các thông số vi điều khiển pic18f4520  CPU tốc độ cao có 75 cấu trúc lệnh, cho phép kéo dài đến 83 cấu trúc lệnh  Hầu hết cấu trúc lệnh chu kỳ máy, ngoại trừ lệnh rẽ nhánh chương trình hai chu kỳ máy  Tốc độ làm việc: xung clock đến 40MHz, tốc độ thực thi lệnh 125ns  Bộ nhớ chương trình ( flash program memory) 32kbyte  Bộ nhớ liệu SRAM 1536 byte  Bộ nhớ liệu EEPROM 256 byte Trang: Giáo trình PIC 18f4520 Nguyễn Đức Thịnh  port Vào  timer  capture/compare/PWM modules  enhanced capture/ compare/PWM modules  Giao tiếp nối tiếp : MSSP, enhanced USART  Cổng giao tiếp song song  13 Analog to Digital module 10 bít  POR,BOR Bên cạnh vài đặc tính khác vi điều khiển như: + Bộ nhớ Flash có khả ghi xoá 100.000 lần + Bộ nhớ EEPROM với khả ghi xoá 1.000.000 lần + Flash/Dữ liệu nhớ EEPROM lưu trữ hàng 100 năm + Khả tự nạp chương trình với điều khiển phần mềm + 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 Trang: Giáo trình PIC 18f4520 Nguyễn Đức Thịnh Sơ đồ khối vi điều khiển pic18f4520 Sơ đồ khối nhớ liệu pic18f4520 Trang: Giáo trình PIC 18f4520 Nguyễn Đức Thịnh Trang: Giáo trình PIC 18f4520 Nguyễn Đức Thịnh II Ngắt Khái niệm Ngắt kiện bên hay bên làm ngắt vi điều khiển để báo cho biết thiết bị cần dịch vụ Trong phương pháp sử dụng ngắt có thiết bị cần đến dịch vụ báo cho vi điều khiển cách gửi tín hiệu ngắt Khi nhận đựợc tín hiệu ngắt vi điều khiển ngắt tất thực để chuyển sang phục vụ thiết bị Chương trình với ngắt gọi trình dịch vụ ngắt ISR (Interrupt Service Routine) hay gọi trình quản lí ngắt (Interupt handler) Hoạt động ngắt vi điều khiển Pic 18f4520 Sơ đồ hoạt động ngắt Pic 18f4520: Trong hoạt động ngắt 18f4520 chia loại: ngắt có mức ưu tiên cao (ngắt cao) ngắt có mức ưu tiên thấp (ngắt thấp) Việc ngắt sử dụng ngắt cao hay ngắt thấp thiết lập phần mềm Trang: Giáo trình PIC 18f4520 Nguyễn Đức Thịnh Khác với dòng vi điều khiển khác 8051 hay AVR, Pic vecto ngắt cụ thể dẫn đến ngắt mà có vecto dẫn đến ngắt cao (0x08) ngắt thấp (0x18) Khi vi điều khiển thực trình phục vụ ngắt thuộc ngắt lại có ngắt khác kích hoạt Trong trường hợp ngắt có mức ưu tiên cao ngắt ngắt có mức ưu tiên thấp Lúc ISR ngắt có mức ưu tiên cao thực thi Khi thực xong ISR ngắt có mức ưu tiên cao quay lại phục vụ tiếp ISR ngắt có mức ưu tiên thấp trước trở chương trình Đây gọi ngắt ngắt Không thể làm gián đoạn ngắt có mức ưu tiên cao Chú ý: Giả định ISR thực thi xảy yêu cầu ngắt từ ISR khác có mức ưu tiên thấp ISR có mức ưu tiên thấp không phục vụ, không bị bỏ qua mà trạng thái chờ Nghĩa sau ISR có mức ưu tiên cao thực thi xong đến lượt ISR có mức ưu tiên thấp phục vụ Các ghi điều khiển ngắt Trong Robocon, thường cần quan tâm đến ngắt (để đọc giá trị từ encorder), số trường hợp dùng ngắt timer Vì tập trung giới thiệu cách sử dụng loại ngắt này, từ đó, bạn dễ dàng tìm hiểu loại ngắt khác như: ngắt ADC, ngắt từ truyền thông nối tiếp, song song… Trước hết để sử dụng ngắt ta cần set bit IPEN ghi RCON lên Thanh ghi INTCON: Với giá trị RCONbits.IPEN=1 GIE/GIEH: = Cho phép ngắt có mức ưu tiên cao = Cấm toàn ngắt PEIE/GIEL: = Cho phép ngắt có mức ưu tiên thấp = Cấm ngắt có mức ưu tiên thấp TMR0IE: bit cho phép ngắt timer = Cho phép ngắt timer Trang: Giáo trình PIC 18f4520 Nguyễn Đức Thịnh = Cấm ngắt timer INT0IE: bit cho phép ngắt = Cho phép ngắt 0 = Cấm ngắt RBIE: Ngắt từ PORTB TMR0IF: Cờ ngắt tràn timer 0, set lên xảy ngắt timer 0, xóa phần mềm INT0IF: mềm Cờ ngắt 0, set lên xảy ngắt 0, xóa phần RBIF: Cờ ngắt PORTB Thanh ghi INTCON2: INTEDGE0:Chọn sườn gây ngắt cho INT0 = Ngắt có sườn lên chân INT0 ( từ lên 1) = Ngắt có sườn xuống chân INT0 ( từ xuống 0) INTEDGE1:Chọn sườn gây ngắt cho INT1 = Ngắt có sườn lên chân INT1 ( từ lên 1) = Ngắt có sườn xuống chân INT1 ( từ xuống 0) INTEDGE2:Chọn sườn gây ngắt cho INT2 = Ngắt có sườn lên chân INT2 ( từ lên 1) = Ngắt có sườn xuống chân INT2 ( từ xuống 0) INTEDGE3:Chọn sườn gây ngắt cho INT3 = Ngắt có sườn lên chân INT3 ( từ lên 1) = Ngắt có sườn xuống chân INT3 ( từ xuống 0) TMR0IP: Chọn mức ưu tiên ngắt timer = ưu tiên cao = ưu tiên thấp Trang: 10 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh Bảng 4: Tốc độ baud chế độ đồng 3.2.1 Tự động phát tốc độ baud Trang: 86 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh Khối USART hỗ trợ tự động phát điều chỉnh tốc độ baud Đặc tính tích cực chế độ bất đồng bít WUE bị xóa Chuỗi phép đo tốc độ baud tự động bắt đầu nhận bít start bít ABDEN đặt Trong khối tự động phát tốc độ baud (ABD), xung clock tơi BRG bị đảo ngược Trong chế độ ABD bên BRG sử dụng đếm để định chu kỳ bít byte đầu vào Khi bít ABDEN đặt BRG xóa chờ bít start Tự động phát tốc độ baud phải nhận byte với giá trị 55h (ASCII ”U”), lệnh phải tính toán tốc độ bít phù hợp Phép đo lấy hai bít thấp cao để tối thiểu hóa hiệu ứng gây bất đối xứng tín hiệu vào Sau bít start SPBRG bắt đầu đếm lên, sử dụng nguồn xung có sẵn sườn lên RX Sau bít chân RX sườn lên giá trị tổng BRG nằm bên trái cặp ghi SPBRGH:SPBRG Ở sườn lên thứ bít ABDEN tự động bị xóa Nếu đồng thời xuất BRG ( tràn từ FFFFh 0000h), kiện dừng bít trạng thái ABDOVF(BAUDCON) Nó đặt phần cứng BRG đặt xóa phần mềm Chế độ ABD tích cực trở lại sau kiện đồng thời bít ABDEN tự động xóa Trong định chu kỳ tốc độ baud, ghi BRG tính 1/8 tốc độ xung clock định sẵn Cần ý thời gian BRG thiết lập bít BRG16 bít BRGH Cài đặt bít BRG16, hai SPBRG SPBRGH sử dụng đếm 16 bít Điều cho phép người sử dụng thử lại mà không cần quan tâm đến xuất chế độ bít cách kiểm tra địa 00h ghi SPBRGH Trong trạng thái ABD xẩy EUSART giữ trạng thái nghỉ Ngắt RCIF đặt phát sườn lên thứ chân RX Cần đọc giá trị RCREG để xóa ngắt RCIF Nội dung RCREG cần phải xóa bỏ Bảng Trang: 87 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh Tốc độ xung nhip máy đếm BRG Hình 38 Tính toán tự động tốc độ baud Hình 39 Chuỗi tràn BRG Trang: 88 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh 3.3 Chế độ EUSART bất đồng Hoạt động chế độ bất đồng lựa chọn cách xõa bít SYNC (TXSTA) Trong chế độ này, EUSART sử dụng chuẩn NRZ ( bít start, bít liệu bít stop ), khung liệu chung bít Trên chip BRG 8bít 16 bít sử dụng để điều khiển số tốc độ baud chuẩn từ dao động EUSART truyền nhận bít lsb (bít thấp nhất) Truyền nhận EUSART có chức độc lập sử dụng giống định dạng liệu tốc độ baud BRG tạo xung clock, 8x16 8x64 tốc độ dịch bít, điều phụ thuộc vào bít BRGH BRG16 (TXSSTA BAUDCON) Cờ chẵn lẻ không hỗ trợ phần cứng thực phần mềm cất bít liệu thứ Khi hoạt động chế độ bất đồng khối EUSART bao gồm thành phần sau : + BRG + Mạch lấy mẫu + Truyền bất đồng + Nhận bất đồng + Tự động đánh thức ngát quãng đồng + Đặc tính truyền ngắt quãng 12 bít + Phát tốc độ baud tự động 3.3.1 Quá trình truyền EUSART bất đồng Trung tâm khối truyền ghi dịch TSR Dữ liệu đọc ghi truyền tới ghi đệm TXREG Thanh ghi TXREG cập nhật liệu phần mềm, ghi TSR cập nhật bít stop truyền từ trình cập nhật trước Ngay bít stop truyền, ghi TSR cập nhật giá trị từ ghi TXREG, TXREG rỗng cờ TXIF(PIR1) đặt Ngắt cho phép không cho phép cách cài đặt bít cho phép ngắt TXIE(PIE1) TXIF đặt bất chấp trạng thái TXIE Nó xóa phần mềm Trong TXIF phản ánh trạng thái ghi TXREG bít TRMT[...]... Trang: 29 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh 2 PWM ở pic 18f4520 18f4520 có 2 kênh PWM: CCP1 và CCP2 Các thanh ghi điều khiển hoạt động PWM ở 18f4520: Thanh ghi CCPxCON (x= 1 hoặc 2) DCxB1:DCxB0: 2 bit thấp (bit 0 và 1) trong 10 bit giá trị độ rộng xung PWM 8 bit cao (bit 9 đến bit 2) trong 10 bit giá trị độ rộng xung được lưu trong thanh ghi CCPxL Trang: 30 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh... trình PIC 18f4520 Nguyễn Đức Thịnh - Sơ đồ khối Timer0 ở chế độ 8 bit - Sơ đồ khối Timer0 ở chế độ 16 bit - Các thanh ghi liên quan tới Timer0 TMR0L thanh ghi chứa byte thấp của Timer0 TMR0H thanh ghi chứa byte cao của Timer0 INTCON thanh ghi điều khiển ngắt (xem phần ngắt) T0CON thanh ghi điều khiển Timer0 TRISA thanh ghi điều khiển hướng dữ liệu PORTA (xem phần I/O) Trang: 22 Giáo trình PIC 18f4520. .. capture) ở đây ta chỉ cần quan tâm đến chế độ pwm ứng với giá trị: 11xx (x = 0 hoặc 1) Trang: 31 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh Sơ đồ khối hoạt động PWM: Ở 18f4520 sử dụng timer dùng cho hoạt động PWM là timer 2, tương ứng là thanh ghi PR2 để điều khiển tần số xung PWM Trang: 32 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh Chu kì xung PWM được tạo ra được tính theo công thức: Trong đó: PWM Period: chu... Giáo trình PIC 18f4520 Nguyễn Đức Thịnh - Các thanh ghi liên quan Chú thích: - Thanh ghi TRISE IV Hoạt động các bộ Timer 1 Timer0 1.1 Đặc điểm, các thanh ghi điều khiển, sơ đồ khối Timer0 - Đặc điểm của Timer0 + Lựa chọn chế độ hoạt động Timer hay Counter ở chế độ 8 hoạc 16 bit + Thanh ghi có thể đọc hoạc ghi + Có thể lựa chọn nguồn xung hệ thống hoạc bên ngoài Trang: 20 Giáo trình PIC 18f4520 Nguyễn... nhau phụ thuộc vào các thanh ghi điều khiển - PORT là thanh ghi dữ liệu được định địa chỉ theo Bytes và theo bit - LAT chốt dữ liệu đầu ra, (=1 đầu ra được chốt mức 1, = 0 chốt mức 0) - TRIS thanh ghi hướng dữ liệu( đặt = 0 có chiều ra, = 1 có chiều vào ) Trang: 13 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh - Sơ đồ mô tả của một chân vào ra 2 PORTA - Gồm có 8 chân từ RA0 đến RA7 có thể cấu thành các đầu vào... thể thiết lập ngắt do tràn Timer1 + Có thể lựa chọn Counter ở chế độ đếm đồng bộ hoạc không đồng bộ Trang: 23 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh + Reset on CCP Special Event Trigger + Device clock status flag (T1RUN) - Thanh ghi điều khiển Timer1 T1CON Trang: 24 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh - Các thanh ghi có liên quan tới Timer1 + INTCON: thanh ghi điều khiển ngắt GIE/GIEH là bit cho... ghi điều khiển, đặc biệt nó còn có RA6:RA7 là đầu vào của bộ dao động bên ngoài phụ thuộc vào việc thiết đặt cấu hình cho bộ dao động Trang: 14 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh - Bảng chức năng của các chân ở PortA Trang: 15 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh - Các thanh ghi liên quan Chú thích: ( - ) và ô đươc tô đen không sử dụng ở PortA ADCON1 là thanh ghi điều khiển A/D, thiết lập các... trình PIC 18f4520 Nguyễn Đức Thịnh - Bảng chức năng của các chân ở PortD - Các thanh ghi liên quan Chú thích: TRISE là thanh ghi hướng dữ liệu của PortE nhưng có thêm chức năng điều khiển cổng song song của PortD (xem thêm phần cổng song song) CCP1CON là thanh ghi điều khiển của chế độ PWM, Compare 6 PORTE - PortE bao gồm 4 chân từ RE0 đến RE3, các chân RE0:RE3 có thể thiết lập thành các đầu vào ra dữ liệu. .. IPR2: Trang: 12 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh TMR3IP: Chọn mức ưu tiên ngắt timer 3 1 = ưu tiên cao 0 = ưu tiên thấp III Hoạt động vào ra ở các Port (I/O Ports) 1 Các thanh ghi, sơ đồ khối điều khiển hoạt động vào ra Có 5 cổng vào/ra PortsA, B, C, D, E các chân được thiết lập thành các chức năng khác nhau phụ thuộc vào các thanh ghi điều khiển - PORT là thanh ghi dữ liệu được định địa chỉ theo... điện áp tham chiếu của bộ so sánh (xem phần So Sánh) Chú ý: RA6:RA7 chốt và hướng dữ liệu của chúng kết hợp cả với cấu hình bộ phát xung 3 PORTB - Gồm có 8 chân từ RB0 đến RB7 có thể cấu thành các đầu vào ra số hay đầu vào tương tự và các chức năng khác phụ thuộc vào các thanh ghi điều khiển Trang: 16 Giáo trình PIC 18f4520 Nguyễn Đức Thịnh - Bảng chức năng của các chân ở PortB - Các thanh ghi liên

Ngày đăng: 05/09/2016, 00:11

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

Tài liệu liên quan