Cơ sở dữ liệu - Chương 8: Các chức năng đặc biệt
Bạn đang xem 20 trang mẫu của tài liệu "Cơ sở dữ liệu - Chương 8: Các chức năng đặc biệt", để 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:
- co_so_du_lieu_chuong_8_cac_chuc_nang_dac_biet.pdf
Nội dung text: Cơ sở dữ liệu - Chương 8: Các chức năng đặc biệt
- dce 2009 Chương 8: Các chức năng đặc biệt BK TP.HCM ©2009, CE Department
- dce 2009 Các chức năng đặc biệt • Chuyển đổi A-D. • Bộ lấy mẫu, so sánh và điều chế độ rộng xung. • Bộ phát hiện điện áp thấp. • Chế độ tiết kiệm năng lượng và bộ WDT. ©2009, CE Department
- dce 2009 Bộ chuyển đổi A-D • PIC18F2X20 : 10 bit ADC • PIC18F4X20 : 13 bit ADC – Mục đích: Chuyển đổi một tín hiệu analog sang một số10 bit. ©2009, CE Department
- dce 2009 Bộ chuyển đổi A-D • Module ADC có 5 thanh ghi: – ADRESH : A/D Result High Register – ADRESL : A/D Result Low Register – ADCON0 : A/D Control Register 0 – ADCON1 : A/D Control Register 1 – ADCON2 : A/D Control Register 2 ©2009, CE Department
- dce 2009 Bộ chuyển đổi A-D • Thanh ghi ADCON0 CHS3:CHS0: Analog Channel Select bits GO/DONE: A/D Conversion Status bit Ví dụ : ADON: A/D On bit When ADON = 1: 0000 = Channel 0 (AN0) 1 = A/D converter module is enabled 1 = A/D conversion in progress 0001 = Channel 1 (AN1) 0 = A/D converter module is disabled 0 = A/D Idle 1010 = Channel 10 (AN10) 1100 = Channel 12 (AN12) ©2009, CE Department
- dce 2009 Bộ chuyển đổi A-D • Thanh ghi ADCON1 VCFG1: Voltage Reference Configuration bit, PCFG3:PCFG0: A/D Port Configuration VREFL Source Control bits 1 = VREF- (AN2) VCFG0: Voltage Reference Configuration bit, 0 = AVSSv VREFH Source 1 = VREF+ (AN3) 0 = AVDD ©2009, CE Department
- dce 2009 Bộ chuyển đổi A-D • Thanh ghi ADCON3 ACQT2:ACQT0: A/D Acquisition Time Select bits Ví dụ:ADFM: A/D Result Format Select bit ADCS1:ADCS0: A/D Conversion Clock Select bits 1 = Right111 = justified20 TAD Ví dụ: 0 = Left110 =justified 16 TAD 111 = FRC (clock derived from A/D RC oscillator) 101 = 12 TAD 110 = FOSC/64 100 = 8 TAD 101 = FOSC/16 100 = FOSC/4 011 = FRC (clock derived from A/D RC oscillator) ©2009, CE Department
- dce 2009 Bộ chuyển đổi A-D • Điện áp tham khảo (Analog reference voltage) được chọn bằng phần mềm. • ADC là chức năng duy nhất có thể hoạt động ở chế độ SLEEP (sử dụng bộ dao động RC bên trong). • Reset: các thanh ghi chuyển về trạng thái reset. – ADC : tắt – Các quá trình biến đổi AD bị bỏ qua. ©2009, CE Department
- dce 2009 Bộ chuyển đổi A-D ©2009, CE Department
- dce 2009 Các bước thực hiện chuyển đổi A/D • Bước 1: Cấu hình cho module A/D – Cấu hình các pin analog, điện áp tham khảo(voltage reference) và các I/O digital (ADCON1) – Chọn các kênh A/D (ADCON0) – Chọn acquisition time (ADCON2) – Chọn clock (ADCON2) – Bật module A/D (ADCON0) ©2009, CE Department
- dce 2009 Các bước thực hiện chuyển đổi A/D • Bước 2: Cấu hình ngắt (interrupt) A/D (nếu cần thiết): – Xóa bit ADIF. – Set bit ADIE. – Set bit GIE. ©2009, CE Department
- dce 2009 Các bước thực hiện chuyển đổi A/D • Bước 3: Đợi yêu cầu acquisition time (nếu có) ©2009, CE Department
- dce 2009 Các bước thực hiện chuyển đổi A/D • Bước 4: Bắt đầu chuyển đổi – Set bit GO/DONE (ADCON0). ©2009, CE Department
- dce 2009 Các bước thực hiện chuyển đổi A/D • Bước 5: Đợi quá trình chuyển đổi hoàn thành bằng một trong 2 cách : – Đợi bit GO/DONE được xóa. – Đợi ngắt A/D. ©2009, CE Department
- dce 2009 Các bước thực hiện chuyển đổi A/D • Bước 6: Đọc kết quả từ thanh ghi (ADRESH:ADRESL). Sau đó xóa bit ADIF nếu như sử dụng ngắt. ©2009, CE Department
- dce 2009 Mô hình chân analog ©2009, CE Department
- dce 2009 Acquisition time ©2009, CE Department
- dce 2009 Điện áp tham khảo • Internal : AVDD và AVSS • External: VREF+ và VREF- ©2009, CE Department
- dce 2009 Các chức năng đặc biệt • Chuyển đổi A-D. • Bộ lấy mẫu, so sánh và điều chế độ rộng xung. • Bộ phát hiện điện áp thấp. • Chế độ tiết kiệm năng lượng và bộ WDT. ©2009, CE Department
- dce 2009 Bộ lấy mẫu, so sánh và điều chế độ rộng xung. • Bộ lấy mẫu : Capture • Bộ so sánh : Compare • Bộ điều chế độ rộng xung: Pulse Width Modulation (PWM). ©2009, CE Department
- dce 2009 Bộ lấy mẫu (Capture mode) • Event: pin RC2/CCP1/P1A – TMR1H: TMR1L CCPR1H:CCPR1L – TMR3H: TMR3L CCPR1H:CCPR1L • Event: (CCP1CON ) – Mỗi cạnh xuống (every falling edge) – Mỗi cạnh lên (every rising edge) – Mỗi 4 cạnh lên (every 4th rising edge) – Mỗi 16 cạnh lên (every 16th rising edge) ©2009, CE Department
- dce 2009 Bộ lấy mẫu (Capture mode) • Khi một sự kiện xảy ra, cờ ngắt (CCP1IF (PIR1 )) sẽ được bật lên 1. Bít này phải được xóa bởi software. • Nếu một sự kiện xảy ra trước khi giá trị CCPR1 được đọc thì giá trị cũ sẽ bị ghi đè bởi giá trị mới. ©2009, CE Department
- dce 2009 Cấu hình pin CCP • RC2/CCP1/P1A : set bit TRISC . ©2009, CE Department
- dce 2009 Lựa chọn timer1 hoặc timer3 • Timer được sử dụng trong chế độ capture thì phải chạy trong mode Timer hoặc Synchronized Counter . Trong chế độ Asynchronous Counter, chế độ capture có thể không hoạt động. • Sử dụng thanh ghi T3CON để cấu hình cho module CCP. ©2009, CE Department
- dce 2009 CCP PRESCALER • Có 4 chế độ prescale được chọn trong 4 bit CCP1M3:CCP1M0 ©2009, CE Department
- dce 2009 Block Diagram ©2009, CE Department
- dce 2009 Bộ so sánh (Compare mode) • 16-bit trong thanh ghi CCPR1 (CCPR2) sẽ so sánh với giá trị trong TMR1 hoặc TMR3. • Khi 2 giá trị giống nhau thì pin RC2/CCP1/P1A (RC1/T1OSI/CCP2) sẽ : – Is driven High – Is driven Low – Toggles output (High to Low or Low to High) – Remains unchanged (interrupt only) • Các hoạt động của 2 pin RC2/CCP1/P1A (RC1/T1OSI/CCP2) sẽ được điều khiển bởi CCP1M3:CCP1M0 (CCP2M3:CCP2M0). ©2009, CE Department
- dce 2009 Cấu hình CCP pin • Cấu hình CCPx pin là output bằng cách clear TRISB bit tương ứng. ©2009, CE Department
- dce 2009 Chọn Timer1/Timer3 • Timer1 và/hoặc Timer3 phải chạy trong chế độ Timer hoặc Synchronized Counter khi CCP module sử dụng chức năng compare. Trong chế độ Asynchronous Counter, hoạt động compare có thể không hoạt động được. ©2009, CE Department
- dce 2009 SOFTWARE INTERRUPT MODE • Khi sử dụng interrupt thì pin CCP1 không có tác dụng. Chỉ có ngắt CCP được tạo ra. ©2009, CE Department
- dce 2009 Block diagram ©2009, CE Department
- dce 2009 Bộ điều chế độ rộng xung • Pin CCP1 output 10-bit resolution PWM. • Khi pin CCP1 pin được dồn kênh (multiplexer) với PORTC. • Bit TRISC bit phải được xóa để CCP1 là output. ©2009, CE Department
- dce 2009 Block diagram ©2009, CE Department
- dce 2009 PWM output ©2009, CE Department
- dce 2009 Chu kì PWM • Fpwm = 1/ PWM Period • Khi TMR2 = PR2 thì có 3 sự kiện xảy ra – TMR2 được xóa. – Pin CCP1 được set (if PWM duty cycle = 0%, thì pin CCP1 pin sẽ không bao giờ được set). – The PWM duty cycle được copy từ CCPR1L tớiCCPR1H ©2009, CE Department
- dce 2009 PWM duty cycle ©2009, CE Department
- dce 2009 SETUP FOR PWM OPERATION 1. Set PWM period bằng cách ghi vào thanh ghi PR2 . 2. Set PWM duty cycle bằng cách ghi vào thanh ghi CCPR1L và CCP1CON . 3. Clear bit TRISC để CCP1 là output 4. Set giá trị TMR2 prescale và enable Timer2 bằng cách ghi vào thanh ghi T2CON. 5. Cấu hình CCP1 cho hoạt động PWM. ©2009, CE Department
- dce 2009 Các chức năng đặc biệt • Chuyển đổi A-D. • Bộ lấy mẫu, so sánh và điều chế độ rộng xung. • Bộ phát hiện điện áp thấp. • Chế độ tiết kiệm năng lượng và bộ WDT. ©2009, CE Department
- dce 2009 Bộ phát hiện điện áp thấp • Low-voltage detect • Có thể được lập trình bằng software • Tối thiểu tiêu thụ năng lượng của IC ©2009, CE Department
- dce 2009 Bộ phát hiện điện áp thấp (tt) ©2009, CE Department
- dce 2009 Block diagram ©2009, CE Department
- dce 2009 Bộ phát hiện điện áp thấp (tt) • 4 bit LVDL3:LVDL0 (LVDCON ) để chọn các mức điện áp. • LVDL3:LVDL0 = 1111 chọn LVDIN ©2009, CE Department
- dce 2009 Block diagram ©2009, CE Department
- dce 2009 Bộ phát hiện điện áp thấp (tt) • Thanh ghi LVDCON LVDEN: LowLVDL3:LVDL0:-Voltage Detect Low Power-Voltage Enable Detection Limit bits bit Ví dụ: IRVST:1 Internal = Enables Reference LVD, powers Voltage up LVD Stable circuit Flag bit 1111 = External analog input is used (input comes 1 = Indicates0 = Disables that the LVD, Low powers-Voltage down Detect LVD logic circuit will generate the interrupt flag at thefrom specified the LVDIN pin) voltage range 1110 = 4.50V-4.78V 0 = Indicates that the Low-Voltage1101 = Detect 4.20V- logic4.46V will not generate the interrupt flag at the 1100 = 4.00V-4.26V specified voltage range and 1011the LVD = 3.80V interrupt-4.04V should not be enabled ©2009, CE Department
- dce 2009 Hoạt động • Thiết lập giá trị cho các bit LVDL3:LVDL0 để chọn giá trị điện áp so sánh mong muốn. • Đảm bảo ngắt LVD đã được disabled (xóa bit LVDIE hoặc xóa bít GIE). • Enable module LVD module (set bit LVDEN (LVDCON)). • Đợi module LVD ổn định (kiểm tra bit IRVST đã set lên chưa). • Xóa cờ ngắt LVD bằng cách xóa bit LVDIF. • Enable ngắt LVD bằng cách set bit LVDIE và bit GIE. ©2009, CE Department
- dce 2009 Các chức năng đặc biệt • Chuyển đổi A-D. • Bộ lấy mẫu, so sánh và điều chế độ rộng xung. • Bộ phát hiện điện áp thấp. • Chế độ tiết kiệm năng lượng và bộ WDT. ©2009, CE Department
- dce 2009 Chế độ tiết kiệm năng lượng • Chế độ Sleep, • Chế độ Idle. ©2009, CE Department
- dce 2009 Chế độ Sleep • Bit IDLEN và SCS1:SCS0 được xóa (default). • Thực hiện lệnh SLEEP Vào chế độ SLEEP
- dce 2009 Giản đồ thời gian vào chế độ SLEEP
- dce 2009 Chế độ Sleep • Thoát khỏi chế độ Sleep – Interrupt – Reset – WDT time-out
- dce 2009 Giản độ thời gian thoát chế độ SLEEP
- dce 2009 Chế độ IDLE • Chế độ Pri_idle • Chế độ Sec_idle • Chế độ Rc_idle
- dce 2009 Chế độ Pri_idle • Không tắt nguồn tạo clock chính (the primary system clock). • Vào chế độ Pri_idle – Set bit IDLEN – Clear SCS bít – Thực hiện lệnh SLEEP
- dce 2009 Giản đồ thời igan vào chế độ Pri_idle
- dce 2009 Chế độ Pri_idle • Thoát khỏi chế độ Pri_idle – Interrupt – Reset – WDT time-out
- dce 2009 Giản đồ thời gian thoát chế độ Pri_idle
- dce 2009 Chế độ Sec_idle • Tắt nguồn tạo clock chính -> chuyển qua nguồn tạo clock của Timer1. • Và chế độ Sec_idle – Set bit IDLEN – SCS1:SCS0 = 01 – Thực hiện lệnh SLEEP
- dce 2009 Giản đồ thời gian vào chế độ Sec_idle
- dce 2009 Chế độ Sec_idle • Thoát khỏi chế độ Sec_idle – Interrupt – Reset – WDT time-out
- dce 2009 Giản đồ thời gian thoát chế độ Sec_idle
- dce 2009 Chế độ RC_idle • Tắt CPU • Thiết bị ngoại vi được cấp clock bởi bộ tạo xung bên trong sự dụng INTOSC. • Vào chế độ Rc_idle – Set bit IDLEN – Set bit SCS1 – Thực hiện lệnh SLEEP
- dce 2009 Giản đồ thời gian vào chế độ Rc_idle
- dce 2009 Giản đồ thời gian thoát chế độ Rc_idle
- dce 2009 Tóm tắt chế độ tiết kiệm năng lượng