Giáo trình PIC 18f4520
Nguyễn Đức Thịnh
MỤC LỤC
I. Tổng quan về vi điều khiển pic18f4520 ................................................................. 3
1. Sơ đồ chân vi điều khiển pic18f4520. ................................................................. 4
2. Các thông số về vi điều khiển pic18f4520........................................................... 4
II. Ngắt. ..................................................................................................................... 8
1. Khái niệm. .......................................................................................................... 8
2. Hoạt động ngắt ở vi điều khiển Pic 18f4520. ...................................................... 8
3. Các thanh ghi điều khiển ngắt. .......................................................................... 9
III. Hoạt động vào ra ở các Port (I/O Ports)........................................................... 13
1. Các thanh ghi, sơ đồ khối điều khiển hoạt động vào ra ................................... 13
2. PORTA............................................................................................................. 14
3. PORTB ............................................................................................................ 16
4. PORTC............................................................................................................ 17
5. PORTD............................................................................................................ 18
6. PORTE ............................................................................................................ 19
IV. Hoạt động các bộ Timer ................................................................................... 20
1. Timer0 .............................................................................................................. 20
1.1. Đặc điểm, các thanh ghi điều khiển, sơ đồ khối Timer0 ............................ 20
1.2. Các chế độ hoạt động của Timer0 .............................................................. 23
2. TIMER1 ........................................................................................................... 23
2.1. Đặc điểm, các thanh ghi điều khiển, sơ đồ khối Timer1 ............................ 23
2.2. Các chế độ hoạt động của Timer1 .............................................................. 26
3 TIMER2 ............................................................................................................ 27
3.1. Đặc điểm, các thanh ghi điều khiển, sơ đồ khối Timer1 ............................ 27
3.2. Chế độ hoạt động của Timer2 .................................................................... 29
V. PWM. ................................................................................................................. 29
1. Khái niệm. ........................................................................................................ 29
2. PWM ở pic 18f4520. ......................................................................................... 30
VI. ADC. ................................................................................................................. 33
1. Khái niệm. ........................................................................................................ 33
Trang: 1
Giáo trình PIC 18f4520
Nguyễn Đức Thịnh
2. Các thanh ghi điều khiển hoạt động của ADC. ................................................ 34
VII. Truyền thông nối tiếp ...................................................................................... 37
1. giới thiệu........................................................................................................... 37
2. Tổng quan về khối MSSP ................................................................................. 37
2.1 SPI ............................................................................................................ 37
2.2 I2C ............................................................................................................. 44
3 EUSART .......................................................................................................... 78
3.0 Tổng quan về khối EUSART ...................................................................... 78
3.1 Các thanh ghi .............................................................................................. 79
3.2 Bộ phát tốc độ baud (BRG) ......................................................................... 83
3.3 Chế độ EUSART bất đồng bộ ..................................................................... 89
3.4 EUSART đồng bộ ........................................................................................ 94
Trang: 2
Giáo trình PIC 18f4520
Nguyễn Đức Thịnh
Datasheet PIC 18f4520
I. Tổng quan về vi điều khiển pic18f4520
Bộ vi điều khiển ghi tắt là Micro-controller là mạch tích hợp trên một chip có thể
lập trình được, dùng để điều khiển hoạt động của hệ thống. Theo các tập lệnh của người
lập trình, bộ 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
và tiến hành đóng mở một cơ cấu nào đó .
Trong các thiết bị điện và điện tử các bộ vi điều khiển điều khiển hoạt động của 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, bộ vi
điều khiển sử dụng trong robot, các hệ thống đo lường giám sát .Các hệ thống càng
thông minh thì vai trò của vi điều khiển ngày càng quan trọng. Hiện nay trên thị trường
có rất nhiều họ vi điều khiển như: 6811 của Motorola, 8051 của Intel, Z8 của Zilog, PIC
của Microchip Technology …
Trong đề tài này nghiên cứu về pic18f4520 vì nó có nhiều ưu điểm hơn các loại vi
điều khiển các như : ADC 10 BÍT, PWM 10 BÍT, EEPROM 256 BYTE,
COMPARATER, …ngoài ra nó còn được các trường đại học trên thế giới đặc biệt là ở
các nước Châu Âu hầu hết xem PIC là 1 môn học trong bộ môn vi diều khiển nói vậy
các bạn cũng thấy sự phổ biến rộng rãi của nó. Ngoài ra PIC còn được rất nhiều nhà sản
xuat phần mềm tạo ra các ngôn ngữ hổ trợ cho việc lập trình ngoài ngôn ngữ Asembly
như :MPLAB, CCSC, HTPIC, MIRKROBASIC,…
Hiện nay có khá nhiều dòng PIC và có rất nhiều khác biệt về phần cứng, nhưng
chúng ta có thể điểm qua một vài nét như sau :
8/16 bít CPU, xây dựng theo kiến trúc trên kiến trúc Harvard sửa đổi, với tập lệnh
rút gọn (do vậy PIC thuộc loại RISC).
Flash và Rom có thể 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 0 và 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ộ
Bộ chuyển đổi ADC
Bộ so sánh điện áp
MSSP Pripheral dùng cho các giao tiếp I2C, SPI
Bộ nhớ nội EEPROM - có thể ghi/ xoá lên tới hàng triệu lần
Trang: 3
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 những tính năng xử lý tín hiệu số.
1. Sơ đồ chân vi điều khiển pic18f4520.
2. Các thông số về vi điều khiển pic18f4520
CPU tốc độ cao có 75 cấu trúc lệnh, nếu được cho phép có thể kéo dài đến 83 cấu
trúc lệnh.
Hầu hết các cấu trúc lệnh chỉ mất một chu kỳ máy, ngoại trừ lệnh rẽ nhánh
chương trình mất 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) là 32kbyte
Bộ nhớ dữ liệu SRAM là 1536 byte
Bộ nhớ dữ liệu EEPROM là 256 byte
Trang: 4
Giáo trình PIC 18f4520
Nguyễn Đức Thịnh
5 port Vào hoặc ra
4 bộ timer
1 capture/compare/PWM modules
1 enhanced capture/ compare/PWM modules
Giao tiếp nối tiếp : MSSP, enhanced USART.
Cổng giao tiếp song song.
13 bộ Analog to Digital module 10 bít
POR,BOR.
Bên cạnh đó là một vài đặc tính khác của vi điều khiển như:
+ Bộ nhớ Flash có khả năng ghi xoá được 100.000 lần.
+ Bộ nhớ EEPROM với khả năng ghi xoá được 1.000.000 lần.
+ Flash/Dữ liệu bộ nhớ EEPROM có thể lưu trữ hàng 100 năm.
+ Khả năng tự nạp chương trình với sự điều khiển của phần mềm.
+ Watchdog timer với bộ dao động trong.
+ Chức năng 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 nhau.
Trang: 5
Giáo trình PIC 18f4520
Nguyễn Đức Thịnh
3. Sơ đồ khối của vi điều khiển pic18f4520
4. Sơ đồ khối bộ nhớ dữ liệu pic18f4520
Trang: 6
Giáo trình PIC 18f4520
Nguyễn Đức Thịnh
Trang: 7
Giáo trình PIC 18f4520
Nguyễn Đức Thịnh
II. Ngắt.
1. Khái niệm.
Ngắt là một sự kiện bên trong hay bên ngoài làm ngắt bộ vi điều khiển để báo cho
nó biết rằng thiết bị cần dịch vụ của nó. Trong phương pháp sử dụng các ngắt thì mỗi
khi có một thiết bị bất kỳ cần đến dịch vụ của nó thì nó báo cho bộ vi điều khiển bằng
cách gửi một tín hiệu ngắt. Khi nhận đựợc tín hiệu ngắt thì bộ vi điều khiển ngắt tất cả
những gì nó đang thực hiện để chuyển sang phục vụ thiết bị. Chương trình đi cùng với
ngắt được gọi là trình dịch vụ ngắt ISR (Interrupt Service Routine) hay còn gọi là trình
quản lí ngắt (Interupt handler).
2. 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 của 18f4520 được chia ra 2 loại: ngắt có mức ưu tiên cao
(ngắt cao) và ngắt có mức ưu tiên thấp (ngắt thấp). Việc 1 ngắt được sử dụng là ngắt cao
hay ngắt thấp có thể được thiết lập bằng phần mềm.
Trang: 8
Giáo trình PIC 18f4520
Nguyễn Đức Thịnh
Khác với các dòng vi điều khiển khác như 8051 hay AVR, Pic không có vecto
ngắt cụ thể dẫn đến từng ngắt mà chỉ có vecto dẫn đến ngắt cao (0x08) hoặc ngắt thấp
(0x18). Khi vi điều khiển đang thực hiện một trình phục vụ ngắt thuộc một ngắt nào đó
thì lại có một ngắt khác được kích hoạt. Trong những trường hợp như vậy thì một ngắt
có mức ưu tiên cao hơn có thể ngắt một ngắt có mức ưu tiên thấp hơn. Lúc này ISR của
ngắt có mức ưu tiên cao hơn sẽ được thực thi. Khi thực hiện xong ISR của ngắt có mức
ưu tiên cao hơn thì nó mới quay lại phục vụ tiếp ISR của ngắt có mức ưu tiên thấp hơn
trước khi trở về chương trình chính. Đây gọi là ngắt trong ngắt. Không thể làm gián
đoạn 1 ngắt có mức ưu tiên cao.
Chú ý: Giả định là khi một ISR nào đó đang thực thi thì xảy ra một yêu cầu ngắt
từ một ISR khác có mức ưu tiên thấp hơn thì ISR có mức ưu tiên thấp hơn không được
phục vụ, nhưng nó sẽ không bị bỏ qua mà ở trạng thái chờ. Nghĩa là ngay sau khi ISR
có mức ưu tiên cao hơn thực thi xong thì đến lượt ISR có mức ưu tiên thấp hơn sẽ
được phục vụ.
3. Các thanh ghi điều khiển ngắt.
Trong Robocon, thường chỉ cần quan tâm đến ngắt ngoài (để đọc giá trị từ
encorder), có thể 1 số trường hợp sẽ dùng ngắt timer. Vì vậy tôi sẽ tập trung giới thiệu
về cách sử dụng 2 loại ngắt này, từ đó, bạn có thể dễ dàng tìm hiểu về các loại ngắt khác
như: ngắt do 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 trong thanh ghi RCON lên 1.
Thanh ghi INTCON:
Với giá trị RCONbits.IPEN=1.
GIE/GIEH: 1 = Cho phép ngắt có mức ưu tiên cao.
0 = Cấm toàn bộ ngắt.
PEIE/GIEL: 1 = Cho phép ngắt có mức ưu tiên thấp.
0 = Cấm các ngắt có mức ưu tiên thấp.
TMR0IE: bit cho phép ngắt timer 0
1 = Cho phép ngắt timer 0.
Trang: 9
Giáo trình PIC 18f4520
Nguyễn Đức Thịnh
0 = Cấm ngắt timer 0.
INT0IE:
bit cho phép ngắt ngoài 0
1 = Cho phép ngắt ngoài 0.
0 = Cấm ngắt ngoài 0.
RBIE:
Ngắt từ PORTB.
TMR0IF: Cờ ngắt tràn timer 0, được set lên 1 khi xảy ra ngắt do timer 0, xóa bằng
phần mềm.
INT0IF:
mềm.
Cờ ngắt ngoài 0, được set lên 1 khi xảy ra ngắt ngoài 0, xóa bằng phần
RBIF:
Cờ ngắt PORTB.
Thanh ghi INTCON2:
INTEDGE0:Chọn sườn gây ngắt cho INT0
1 = Ngắt khi có 1 sườn lên ở chân INT0 ( từ 0 lên 1).
0 = Ngắt khi có 1 sườn xuống ở chân INT0 ( từ 1 xuống 0).
INTEDGE1:Chọn sườn gây ngắt cho INT1
1 = Ngắt khi có 1 sườn lên ở chân INT1 ( từ 0 lên 1).
0 = Ngắt khi có 1 sườn xuống ở chân INT1 ( từ 1 xuống 0).
INTEDGE2:Chọn sườn gây ngắt cho INT2
1 = Ngắt khi có 1 sườn lên ở chân INT2 ( từ 0 lên 1).
0 = Ngắt khi có 1 sườn xuống ở chân INT2 ( từ 1 xuống 0).
INTEDGE3:Chọn sườn gây ngắt cho INT3
1 = Ngắt khi có 1 sườn lên ở chân INT3 ( từ 0 lên 1).
0 = Ngắt khi có 1 sườn xuống ở chân INT3 ( từ 1 xuống 0).
TMR0IP: Chọn mức ưu tiên ngắt timer 0
1 = ưu tiên cao.
0 = ưu tiên thấp.
Trang: 10
Giáo trình PIC 18f4520
INT3IP:
Nguyễn Đức Thịnh
Chọn mức ưu tiên ngắt INT3
1 = ưu tiên cao.
0 = ưu tiên thấp.
Chọn mức ưu tiên ngắt PORTB.
RBIP:
Thanh ghi INTCON3
INT2IP:
Chọn mức ưu tiên ngắt INT3
1 = ưu tiên cao.
0 = ưu tiên thấp.
INT1IP:
Chọn mức ưu tiên ngắt INT3
1 = ưu tiên cao.
0 = ưu tiên thấp.
INT3IE:
1 = cho phép ngắt ngoài 3.
0 = cấm ngắt ngoài 3.
INT2IE:
1 = cho phép ngắt ngoài 2.
0 = cấm ngắt ngoài 2.
INT1IE:
1 = cho phép ngắt ngoài 1.
0 = cấm ngắt ngoài 1.
INT3IF:
cờ ngắt ngoài 3, được set lên 1 khi xảy ra ngắt, xóa bằng phần mềm.
INT2IF:
cờ ngắt ngoài 2, được set lên 1 khi xảy ra ngắt, xóa bằng phần mềm.
INT1IF:
cờ ngắt ngoài 1, được set lên 1 khi xảy ra ngắt, xóa bằng phần mềm.
Thanh ghi PIR1:
TMR2IF: cờ ngắt timer 2, được set lên 1 khi xảy ra ngắt, xóa bằng phần mềm.
TMR1IF: cờ ngắt timer 1, được set lên 1 khi xảy ra ngắt, xóa bằng phần mềm.
Trang: 11
Giáo trình PIC 18f4520
Nguyễn Đức Thịnh
Thanh ghi PIR2:
TMR3IF: cờ ngắt timer 3, được set lên 1 khi xảy ra ngắt, xóa bằng phần mềm.
Thanh ghi PIE1:
TMR2IE: 1 = cho phép ngắt timer 2.
0 = cấm ngắt timer 2.
TMR1IE: 1 = cho phép ngắt timer 1.
0 = cấm ngắt timer 1.
Thanh ghi PIE2:
TMR3IE: 1 = cho phép ngắt timer 3.
0 = cấm ngắt timer 3.
Thanh ghi IPR1:
TMR2IP: Chọn mức ưu tiên ngắt timer 2
1 = ưu tiên cao.
0 = ưu tiên thấp.
TMR1IP: Chọn mức ưu tiên ngắt timer 1
1 = ưu tiên cao.
0 = ưu tiên thấp.
Thanh ghi 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 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 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, đặ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 đầu vào là số hay tương tự (xem
phần A/D )
CMCON là thanh ghi điều khiển bộ so sánh (xem phần So Sánh)
CVRCON là thanh ghi điều khiển đ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 quan đến PortB
INTCON, INTCON2, INTCON3 là 3 thanh ghi điều khiển ngắt(xem phần ngắt)
ADCON1 là thanh ghi điều khiển A/D, thiết lập các đầu vào là số hay tương tự (xem
phần A/D )
4. PORTC
- Gồm có 8 chân từ RC0 đến RC7 có thể cấu thành các đầu vào ra dữ liệu số hay đầu
vào ra cho các bộ Timer, PWM và các chức năng đặc biệt khác phụ thuộc vào các thanh
ghi điều khiển
- Bảng chức năng của các chân ở PortC
Trang: 17
Giáo trình PIC 18f4520
Nguyễn Đức Thịnh
- Các thanh ghi liên quan đến PortC
5. PORTD
- Gồm có 8 chân từ RD0 đến RD7 có thể cấu thành các đầu vào ra số hay đầu ra của bộ
PWM, đặc biêt PortD còn có chế độ giao tiếp song song khi được kết hợp với 3 chân
WR, RD, CS của PortE (xem phần chế độ giao tiếp SS)
Trang: 18
Giáo 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 số hay đầu vào tương tự cho bộ biến đổi A/D, đặc biệt nó còn được
thiết lập thành các chân RD, WR, CS cho chế độ giao tiếp Song Song cùng với PortD,
riêng chân RE3 chỉ có chiều vào nó còn được thiết lập thành chân Reset phụ thuộc vào
bit cấu hình MCLRE
- Bảng chức năng của các chân ở PortE
Trang: 19
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 Đức Thịnh
+ Có thể thiết lập ngắt dùng Timer
- Thanh ghi điều khiển Timer: T0CON
Trang: 21
Giáo 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
Nguyễn Đức Thịnh
1.2. Các chế độ hoạt động của Timer0
- Lựa chọn chế độ Timer/Counter
+ Timer để lựa chọ chế độ này đặt bit T0CS=0 (T0CON<5>) sau đó lựa chọn chế
độ chia tần bằng bit PSA (=1 không qua bộ chia tần,=0 qua bộ chia tần), nếu sử dụng
chia tần chọn hệ số chia bằng bit P0PS0: P0PS2
+ Counter để lựa chọ chế độ này đặt bit T0CS=1 (T0CON<5>) sau đó lựa chọn
chế độ chia tần bằng bit PSA (=1 không qua bộ chia tần,=0 qua bộ chia tần), nếu sử
dụng chia tần chọn hệ số chia bằng bit P0PS0: P0PS2, sau đó chọn sườn xung bằng bit
T0SE (T0CON<4>)
- Timer0 8 bit/16 bit: Timer0 ở chế độ 8 bit T08BIT = 1 còn chế độ 16 thì bit T08BIT =
0, ở chế độ 16 của Timer0 việc đọc và ghi vào thanh ghi TMR0H phụ thuộc và thanh
ghi TMR0L
+ Đọc ở thanh ghi TMR0H, giá trị của thanh ghi TMR0H được đọc ra giá trị mới
nhất sau lệnh đọc ở thanh ghi TMR0L
+ Ghi vào thanh ghi TMR0H, giá trị của bộ đệm TMR0H sẽ được ghi vào bytes
cao của bộ đếm sau lệnh ghi vào thanh ghi TMR0L
- Ngắt tràn Timer0
Ngắt Timer0 xảy ra khi tràn thanh ghi TMR0 khi đếm từ 0xFF sang 0x00 ở chế
độ 8 bit hoạc 0xFFFF sang 0x0000 ở chế độ 16 bit khi đó cờ báo tràn TMR0IF =1, để
thiết đặt chế độ ngắt từ Timer0 đặt bit TMR0IE =1 (INTCON<5>) (xem phần ngắt).
2. TIMER1
2.1. Đặc điểm, các thanh ghi điều khiển, sơ đồ khối Timer1
- Đặc điểm và các tính năng của Timer1
+ Lựa chọn chế độ hoạt động Timer hay Counter ở chế độ 16 bit
+ Thanh ghi có thể đọc hoạc ghi
+ Có thể lựa chọn nguồn xung cho bộ Timer1 từ hệ thống hoạc bên ngoài, nguồn
xung ngoài có thể lựa chọn từ bộ phát xung timer1 (chân T1OSO và T1OSI) hoạc
nguồn xung bên ngoài chân T13CKI
+ Có 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 phép ngắt khi được đặt bằng 1, cấm tất cả các ngắt khi đặt
băng 0.
PEIE/GIEL là bit cho phép ngắt ngoại vi khi đặt bằng 1, cấm ngắt ngoại vi khi
đặt bằng 0.
+ PIR1: thanh ghi cờ yêu cầu ngắt ngoại vi, bit cờ được thiết lập TMR1IF = 1 khi
tràn Timer1, bit này phải được xóa bằng phần mềm.
+ PIE1: thanh ghi cho phép ngắt, bit TMR1IE là bit cho phép ngắt khi xảy ra tràn
Timer1.
+ IPR1: thanh ghi ưu tiên ngắt, bit ưu tiên ngắt TMR1IP = 1, ngắt tràn Timer1 được
ưu tiên ở mức cao. TMR1IP = 0 ưu tiên ngắt ở mức thấp.
+ TMR1L: chứa bytes thấp của bộ Timer1
+ TMR1H: chứa bytes cao của bộ Timer1
+ T1CON: là thanh ghi điều khiển Timer1
Trang: 25