Thông tin tài liệu:
Cực dương của LED được nối với điện trở, điện trở được nối với các chân vi điều khiển. Cực âm của
LED được nối với GND của vi điều khiển. Như vậy, khi chân vi điều khiển ở mức cao, tức là 5V, đèn
LED sẽ sáng. Khi chân vi điều khiển ở mức thấp (0V) đèn LED sẽ tắt.
Nội dung trích xuất từ tài liệu:
Giáo trình hoàn chỉnh vi điều khiển PIC 18
PHUÏ LUÏC 2 THANH GHI SFR (SPECIAL FUNCTION REGISTER)
P2.1 Thanh ghi TMR0: ñòa chæ 01h, 101h.
Thanh ghi 8 bit chöùa giaù trò cuûa boä ñònh thôøi Timer0.
P2.2 Thanh ghi PCL: ñòa chæ 02h, 82h, 102h, 182h.
Thanh ghi chöùa 8 bit thaáp cuûa boä ñeám chöông trình (PC).
P2.3 Thanh ghi STATUS: ñòa chæ 03h, 83h, 103h, 183h
Bit 7: IRP bit choïn bank boä nhôù döõ lieäu caàn truy xuaát (duøng cho ñòa chæ giaùn tieáp).
IRP = 0: bank 2,3 (töø 100h ñeán 1FFh)
IRP = 1: bank 0,1 (töø 00h ñeán FFh)
Bit 6,5:RP1:RP0 hai bit choïn bank boä nhôù döõ lieäu caàn truy xuaát (duøng cho ñòa chæ tröïc
tieáp)
Bit 4: bit chæ thò traïng thaùi cuûa WDT(Watch Dog Timer)
=1 khi vi ñieàu khieån vöøa ñöôïc caáp nguoàn, hoaëc sau khi leänh
CLRWDT hay SLEEP ñöôïc thöïc thi.
=0 khi WDT bò traøn
Bit 3: bit chæ thò trang thaùi nguoàn
= 1 khi vi ñieàu khieån ñöôïc caáp nguoàn hoaëc sau leänh CLRWDT
= 0 sau khi leänh SLEEP ñöôïc thöïc thi
Bit 2: Z bit Zero
Z =1 khi keát quaû cuûa pheùp toaùn hay logic baèng 0
Z = 0 khi keát quaû cuûa pheùp toaùn hay logic khaùc 0
Bit 1: DC Digit carry/Borrow
DC = 1 khi keát quaû pheùp toaùn taùc ñoäng leân 4 bit thaáp coù nhôù.
DC = 0 khi keát quaû pheùp toaùn taùc ñoäng leân 4 bit thaáp khoâng coù nhôù.
Bit 0 C Carry/borrow
C =1 khi keát quaû pheùp toaùn taùc ñoäng leân bit MSB coù nhôù.
C=0 khi keát quaû pheùp toùan taùc ñoäng leân bit MSB khoâng coù nhôù.
P2.4 Thanh ghi SFR: ñòa chæ 04h.
Thanh ghi chöùa con troû ñòa chæ giaùn tieáp cuûa boä nhôù döõ lieäu.
P2.5 Thanh ghi PORTA: ñòa chæ 05h.
Thanh ghi chöùa giaù trò nhaän vaøo hay xuaát ra PORTA.
P2.6 Thanh ghi PORTB: ñòa chæ 06h, 106h.
Thanh ghi chöùa giaù trò nhaän vaøo hay xuaát ra PORTB.
P2.7 Thanh ghi PORTC: ñòa chæ 07h.
Thanh ghi chöùa giaù trò nhaän vaøo hay xuaát ra PORTC
P2.8 Thanh ghi PORTD: ñòa chæ 08h.
Thanh ghi chöùa giaù trò nhaän vaøo hay xuaát ra PORTD.
P2.9 Thanh ghi PORTE: ñòa chæ 09h.
Thanh ghi chöùa giaù trò nhaän vaøo hay xuaát ra PORTE.
P2.10 Thanh ghi PCLATCH: ñòa chæ 0Ah, 8Ah, 10Ah, 18Ah.
Thanh ghi ñoùng vai troø laø buffer ñeäm trong quaù trình ghi giaù trò leân 5 bit cao cuûa boä
ñeám chöông trình PC.
P2.11 Thanh ghi INTCON: ñòa chæ 0Bh, 8Bh, 10Bh, 18Bh.
Thanh ghi chöùa caùc bit ñieàu khieån vaø caùc bit côø hieäu khi timer0 bò traøn, ngaét ngoaïi vi
RB0/INT vaø ngaét interrput-on-change taïi caùc chaân cuûa PORTB.
Bit 7 GIE Global Interrupt Enable bit
GIE = 1 cho pheùp taát caû caùc ngaét.
GIE = 0 khoâng cho pheùp taát caû caùc ngaét.
Bit 6 PEIE Pheripheral Interrupt Enable bit
PEIE = 1 cho pheùp taát caû caùc ngaét ngoaïi vi
PEIE = 0 khoâng cho pheùp taát caû caùc ngaét ngoaïi vi
Bit 5 TMR0IE Timer0 Overflow Interrupt Enable bit
TMR0IE = 1 cho pheùp ngaét Timer0
TMR0IE = 0 khoâng cho pheùp ngaét Timer0
Bit 4 RBIE RB0/INT External Interrupt Enable bit
RBIE = 1 cho pheùp ngaét ngoaïi vi RB0/INT
RBIE = 0 khoâng cho pheùp ngaét ngoaïi vi RB0/INT
Bit 3 RBIE RB Port change Interrupt Enable bit
RBIE = 1 cho pheùp ngaét RB Port change
RBIE = 0 khoâng cho pheùp ngaét RB Port change
Bit 2 TMR0IF Timer0 Interrupt Flag bit
TMR0IF = 1 thanh ghi TMR0 bò traøn (phaûi xoùa baèng chöông
trình) .
TMR0IF = 0 thanh ghi TMR0 chöa bò traøn.
Bit 1 INTF BR0/INT External Interrupt Flag bit
INTF = 1 ngaét RB0/INT xaûy ra (phaûi xoùa côø hieäu baèng chöông
trình).
INTF = 0 ngaét RB0/INT chöa xaûy ra.
Bit 0 RBIF RB Port Change Interrupt Flag bit
RBIF = 1 ít nhaát coù moät chaân RB7:RB4 coù söï thay ñoåi traïng
thaùi.Bit naøy phaûi ñöôïc xoùa baèng chöông trình sau khi ñaõ kieåm tra laïi
caùc giaù trò cuûa caùc chaân taïi PORTB.
RBIF = 0 khoâng coù söï thay ñoåi traïng thaùi caùc chaân RB7:RB4.
P2.12 Thanh ghi PIR1: ñòa chæ 0Ch
Thanh ghi chöùa côø ngaét cuûa caùc khoái ngoaïi vi.
Bit 7 PSPIF Parallel Slave Port Read/Write Interrupt Flag bit
PSPIF = 1 vöøa hoaøn taát thao taùc ñoïc hoaëc ghi PSP (phaûi xoùa baèng
chöông trình).
PSPIF = 0 khoâng coù thao taùc ñoïc ghi PSP naøo dieãn ra.
Bit 6 ADIF ADC Interrupt Flag bit
ADIF = 1 hoaøn taát chuyeån ñoåi ADC.
ADIF = 0 chöa hoaøn taát chuyeån ñoåi ADC.
Bit 5 RCIF USART Receive Interrupt Flag bit
RCIF = 1 buffer nhaän qua chuaån giao tieáp USART ñaõ ñaày.
RCIF = 0 buffer nhaân qua chuaån giao tieáp USART roãng.
Bit 4 TXIF USART Transmit Interrupt Flag bit
TXIF = 1 buffer truyeàn qua chuaån giao tieáp USART roãng.
TXIF = 0 buffer truyeàn qua chuaån giao tieáp USART ñaày.
Bit 3 SSPIF Synchronous Serial Port (SSP) Interrupt Flag bit
SSPIF = 1 ...