Chương 1 : Họ vi điều khiển PIC và vi điều khiển PIC18F4520
1.2. Vi điều khiển Pic18F4520
1.2.5. Bộ định thời (Timer)
Timer0 Module
Modle này được coi cú những đặc điểm sau:
• Cú thể lựa chon phần mềm như một bộ định thời hoặc bộ đếm cú thể là 8 bit
hoặc 16 bit.
• Cú khả năng như thanh ghi đọc viết
• Riờng loại 8 bit cú thẻ coi là bộ đếm lập trỡnh bằng phần mềm • Khả năng lựa chon xung nguồn(cả bờn trong và bờn ngồi)
• Lự chon giới hạn cho xung từ bờn ngồi • Ngắt - mở - tràn
Đặc trưng cho Timer0 là thanh ghi T0CON
bit 7(TMR0ON): bit điều khiển đúng mỏ Timer0
− Giỏ trị 1:cho phộp hoạt động
− Giỏ trị 0: dừng hoạt động
bit 6 (T08BIT): bit điều khiển Timer0 8-Bit/16-Bit
− Giỏ trị 1:Timer0 cấu hỡnh như 8-bit timer/counter
− Giỏ trị 0: Timer0 cấu hỡnh như 16-bit timer/counter bit 5 (T0CS): bit lựa chọn nguồn xung cho Timer0
− Giỏ trị 1:truyền trờn chõn T0CKI
− Giỏ trị 0: chu kỳ xung lệnh bờn trong (CLKO) bit 4 (T0SE): bit lựa chon giới hạn nguồn choTimer0
− Giỏ trị 1: truyền trờn chõn T0CKI thay đổi từ cao-thấp.
− Giỏ trị 0: truyền trờn chõn T0CKI thay đổi từ thấp-cao. bit 3 (PSA): bit thiết lập bộ đếm gộp trước choTimer0
− Giỏ trị 1: khụng thiết lập bộ đệm gộp trước Timer0. Xung dầu vào Timer0 được chuyển hướng bởi bộ đệm gộp trước..
− Giỏ trị 0: thiết lập bộ đệm gộp trước Timer0. Xung dầu vào Timer0 trở thành dầu ra bộ đệm gộp trước..
bit 2-0 (T0PS<2:0>): bit lựa chon bộ đệm gộp trước cho Timer0 111 = 1:256 giỏ trị bộ đệm gộp trước 110 = 1:128 giỏ trị bộ đệm gộp trước 101 = 1:64 giỏ trị bộ đệm gộp trước 100 = 1:32 giỏ trị bộ đệm gộp trước 011 = 1:16 giỏ trị bộ đệm gộp trước 010 = 1:8 giỏ trị bộ đệm gộp trước 001 = 1:4 giỏ trị bộ đệm gộp trước 000 = 1:2 giỏ trị bộ đệm gộp trước Timer1 module
Đặc trưng cơ bản của bộ định thời này gồm:
• Khả năng lựa chon bằng phần mềm giống như bộ định thời 16bit hoặc bộ dếm.
• Khả năng như thanh ghi đọc viết được 8bit(TMR1H, TMR1L).
• Khả năng lựa chon nguồn xung bờn trong qua bọ dao động Oscillator. • Ngắt-Tràn
• Cờ bỏo trạng thỏi xung thiết bị
Thanh ghi T1CON sử dụng điều khiển Timer1
bit 7 (RD16): bit cho phộp lựa chọn cỏc chế độ đọc/viết 16-Bit
− Giỏ tri 1: cho phộp thanh ghi đọc/viết của Timer1 trong hoạt động như một số 16 bit.
− Giỏ tri 0: cho phộp thanh ghi đọc/viết của Timer1 trong hoạt động như một số 8 bit.
bit 6 (T1RUN): Bit trạng thỏi hệ thống xung Timer1
− Giỏ tri 1: xung thiết bị là dẫn xuất từ bộ dao động Timer1.
− Giỏ tri 0: xung thiết bị là dẫn xuất từ mootj nguồn khỏc.
bit 5-4 (T1CKPS<1:0>): bit lựa chọn xung đầu vào bộ đếm gộp trước cho Timer1
11 = 1:8 Giỏ trị bộ đếm gộp trước 10 = 1:4 Giỏ trị bộ đếm gộp trước 01 = 1:2 Giỏ trị bộ đếm gộp trước 00 = 1:1 Giỏ trị bộ đếm gộp trước
bit 3 (T1OSCEN): bit cho phộp bộ dao động Timer1
− Giỏ tri 1: Cho phộp
− Giỏ tri 0: Dừng bộ dao động Timer1 .
bit 2 (T1SYNC): bit lựa chọn xung đồng bộ đầu vào bờn ngồi cho Timer1
• Khi TMR1CS = 1:
− Giỏ tri 1: khụng phải xung đồng bộ đầu vào bờn ngồi
− Giỏ tri 0: xung đồng bộ đầu vào bờn ngồi
• Khi TMR1CS = 0: bit này khụng sử dụng và lỳc này Timer1 sử dụng
nguồn xung từ bờn trong bit 1 (TMR1CS): bit lựa chọn nguồn xung cho Timer1
− Giỏ tri 1: nguồn xung từ bờn ngồi qua chõn RC0/T1OSO/T13CKI
− Giỏ tri 0: nguồn xung từ bờn trong (Fosc/4) bit 0 (TMR1ON): bit hoạt động Timer1
− Giỏ tri 1: Cho phộp
− Giỏ tri 0: Dừng Timer1 .
Timer1 cú thể hoạt động ở một trong 3 chế độ •Bộ định thời (Timer)
• Bộ đếm đồng bộ (Synchronous Counter)
• Bộ đếm khụng đồng bộ(Asynchronous Counter)
Timer2 Module
Đặc điểm nổi bật Timer2 gồm:
• Bộ định thời 8bit(TMR2) và thanh ghi ghi Period(PR2) • Khả năng đọc và viết được.
• Lập trỡnh phần mềm • Ngắt trờn TMR2 nhờ PR2
• Cài đặt khối xung cho modul MSSP
Timer 2 điều khiển hoạt động dựa thanh ghi T2CON
bit 7 (Unimplemented): mang giỏ trị ‘0’
bit 6-3 (T2OUTPS<3:0>): bit lựa chọn đầu ra Timer2 sau khi dừng. 0000 = 1:1 sau khi dừng
0001 = 1:2 sau khi dừng •
1111 = 1:16 sau khi dừng
bit 2 (TMR2ON): Bit hoạt dộng Timer2
− Giỏ tri 1: Cho phộp
− Giỏ tri 0: Dừng Timer1 .
bit 1-0 (T2CKPS<1:0>): bit chọn xung bộ đếm gộp trước cho Timer2 00 = bộ đếm gộp trước 1
01 = bộ đếm gộp trước 4 1x = bộ đếm gộp trước 16
Timer 3 Module
Đặc điểm Timer3 bao gồm:
• Lựa chon được hoạt động bằng phàn mềm giống như bộ đếm thời gian 16 bit. • Khả năng đọc và viết được giống thanh ghi 8 bit(TMR3H-TMR3L).
• Lựa chọn cỏc nguồn xung cả bờn trong và ngồi nhờ bộ dao động • Ngắt- Tràn
• Modul Reset trờn CCP (đặc biệt với kết quả Trigger)
Timer 3 điều chỉnh nhờ thanh ghi T3CON
bit 7(RD16): (RD16): bit cho phộp lựa chọn cỏc chế độ đọc/viết 16-Bit
− Giỏ tri 1: cho phộp thanh ghi đọc/viết của Timer1 trong hoạt động như một số 16 bit.
− Giỏ tri 0: cho phộp thanh ghi đọc/viết của Timer1 trong hoạt động như một số 8 bit.
bit 6,3 (T3CCP<2:1>): bit cho phộp Timer3 và Timer1 liờn kết CCPx modules
− Giỏ tri 1x : Timer3 là cấu hỡnh nguồn xung capture/compare cho CCP modules
− Giỏ tri 01: Timer3 là cấu hỡnh nguồn xung capture/compare cho CCP2 modules, Timer1 là cấu hỡnh nguồn xung capture/compare cho CCP1 modules
− Giỏ tri 00 : Timer1 là cấu hỡnh nguồn xung capture/compare cho CCP modules
bit 5-4 ((T3CKPS<1:0>): bit lựa chọn xung đầu vào bộ đếm gộp trước cho Timer3
11 = 1:8 Giỏ trị bộ đếm gộp trước 10 = 1:4 Giỏ trị bộ đếm gộp trước 01 = 1:2 Giỏ trị bộ đếm gộp trước 00 = 1:1 Giỏ trị bộ đếm gộp trước
bit 2 (T3SYNC): bit điều khiển xung đồng bộ đầu vào bờn ngồi cho Timer3
• Khi TMR3CS = 1:
− Giỏ tri 1: khụng phải xung đồng bộ đầu vào bờn ngồi
− Giỏ tri 0: xung đồng bộ đầu vào bờn ngồi
• Khi TMR3CS = 0: bit này khụng sử dụng và lỳc này Timer3 sử dụng
nguồn xung từ bờn trong bit 1 (TMR3CS): bit lựa chọn nguồn xung cho Timer3
− Giỏ tri 1: nguồn xung từ bờn ngồi từ bbộ dao động Timer1 hoặc T13CKI
− Giỏ tri 0: nguồn xung từ bờn trong (Fosc/4) bit 0 (TMR1ON): bit hoạt động Timer1
− Giỏ tri 1: Cho phộp
− Giỏ tri 0: Dừng Timer1 .