Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 1/14

Tutorial 01.03
Gi n: Ni dung: on Hip, Don Minh ng, picvietnam@googlegroups.com BI 1: PIC16F877A T D TI KH MICROSOFT WORD Tm tt: Tutorial post ln lung PIC16F877A T D TI KH thuc chuyn mc C BN V VI IU KHIN V PIC. Bi u tin bao gm ni dung sau: ng dng n gin nht dnh cho vi iu khin PIC16F877A, l xut d liu ra mt port no ca vi iu khin. Cc bc tin hnh bao gm: _ Bc 1: Xy dng mch test. _ Bc 2: Xy dng chng trnh. _ Bc 3: Nhn xt v kt lun. Mt s c im v cc port iu khin ca vi iu khin PIC16F877A. Chng trnh v s nguyn l mch test i km.

1.

iu khin cc port I/O


y l mt trong nhng ng dng n gin nht gip ta lm quen vi vi iu khin. Trong ng dng ny ta s xut mt gi tr no ra mt PORT ca vi iu khin, chng hn nh PORTB. Gi tr a ra PORTB s c kim tra bng cch gn cc LED vo cc chn I/O ca PORT .

1.1.

Xy dng mch test cho ng dng

Trc tin ta cng xy dng mch test cho ng dng ny. Ngoi tr vi iu khin PIC16F877A, cc thnh phn cn li trong mch u rt thng dng v d dng tm thy trn th trng, do hy thi cng mch test ny ta c th xem xt cc hiu ng c th ca vi iu khin mt cch trc quan v nghim tc, v sau bi ny, cc bn s thy rng ta khng th ngi mt ch c sch hay ti liu m c th lng trc c ht nhng hiu ng m vi iu khin to ra, thm ch l cc hiu ng t ng dng n gin nht ny. Do y l bi u tin, cho nn cc bc tin hnh s rt nghim tc v thn trng. No, bt u!

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 2/14

Ta c vi iu khin PIC16F877A vi s chn nh sau:

1
2 3 4 5 6 7

RB7/PGD RB6/PGC RA0/AN0 RB5 RA1/AN1 RB4 RA2/AN2/VREF-/CVREF RB3/PGM RA3/AN3/VREF+ RB2 RA4/TOCKI/C1OUT RB1 RA5/AN4/SS/C2OUT RBO/INT

MCLR/VPP

40 39 38 37 36 35 34 33
32 31

8 9 10
11 12

RE0/RD/AN5 RE1/WR/AN6 RE2/CS/AN7


VDD GND

VDD GND

PIC16F877A

13 14

RD7/PSP7 RD6/PSP6 RD5/PSP5 RD4/PSP4 RC7/RX/DT RC6/TX/CK RC5/SDO RC4/SDI/SDA RD3/PSP3 RD2/PSP2

30 29 28 27

OSC1/CLKIN OSC2/CLKOUT

15 16 17 18
19 20

RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCK/SCL RD0/PSP0 RD1/PSP1

26 25 24 23

22 21

Hnh 1.1 Vi iu khin PIC16F877A.

By gi ta hy cp ngun cho vi iu khin hat ng, v cu hi t ra l cp ngun nh th no? Tt nhin, ngun cung cp s l ngun 5V, vn y l, vi iu khin PIC16F877A c n hai chn cp ngun VCC v hai chn GND. Cc bn c cm thy bi ri v thc mc l ti sao li c n 4 chn cp ngun nh vy khng? V sau y l cu tr li, ta phi cp ngun vo tt c cc chn ngun trn, nh vy th vi iu khin mi hot ng c. V mch nguyn l sau khi cp ngun nh sau:

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 3/14

MCLR/VPP

2 3 4 5 6 7
8 9 10
HI

RB7/PGD RB6/PGC RB5 RA0/AN0 RB4 RA1/AN1 RA2/AN2/VREF-/CVREF RB3/PGM RB2 RA3/AN3/VREF+ RB1 RA4/TOCKI/C1OUT RBO/INT RA5/AN4/SS/C2OUT VDD GND
RD7/PSP7 RD6/PSP6 RD5/PSP5 RD4/PSP4 RC7/RX/DT RC6/TX/CK RC5/SDO RC4/SDI/SDA RD3/PSP3 RD2/PSP2

40 39 38 37 36 35 34 33
HI

RE0/RD/AN5 RE1/WR/AN6 RE2/CS/AN7

32 31
30 29 28 27
26 25 24 23
22 21

11 12

VDD GND

PIC16F877A

13 14
15 16 17 18

OSC1/CLKIN OSC2/CLKOUT
RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCK/SCL RD0/PSP0 RD1/PSP1

19 20

Hnh 1.2 Vi iu khin PIC16F877A sau khi cp ngun.

Tip theo, ngoi ngun cung cp, ta cn phi cung cp xung hot ng cho vi iu khin. PIC16F877A v cc vi iu khin ni chung cho php nhiu cch cung cp xung hot ng khc nhau. y ta s dng thch anh lm ngun xung, v cng vic ca ta l gn thch anh vo hai chn 13 v 14 ca vi iu khin. Tuy nhin cc bn cng bit rng, cc xung dao ng do thch anh to ra cng khng thc s n nh mt cch tuyt i, v cch khc phc l gn thm cc t lc vo thch anh. Nh vy, cn phi gn cc t nh th no v gi tr bao nhiu? Cu tr li nm trong ci datasheet. Cc bn lt ci datasheet PIC16F87xA do Microchip cung cp ra. Trang 145, hnh 4.1 hng dn cch gn cc t C1, C2 vo thch anh, v trang 146, bng 14-2 hng dn cch chn gi tr cho t. y la dng thch anh 4 MHz nn t C1 v C2 s c gi tr 15 pF. Mt im ng ch na l cht lng thch anh ti th trng Vit Nam khng thc s tt, cho nn tng s n nh, ta s dng t 30 pF. Xong! V sau y l mch nguyn l sau khi gn thm thch anh:

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 4/14

1
2 3 4 5 6 7

RB7/PGD RB6/PGC RA0/AN0 RB5 RA1/AN1 RB4 RA2/AN2/VREF-/CVREF RB3/PGM RA3/AN3/VREF+ RB2 RA4/TOCKI/C1OUT RB1 RA5/AN4/SS/C2OUT RBO/INT

MCLR/VPP

40 39 38 37 36 35 34 33
HI

8 9 10
HI

RE0/RD/AN5 RE1/WR/AN6 RE2/CS/AN7


VDD GND

VDD GND

32 31

C1

11 12

PIC16F877A

0
30 pF
C2

13 14

RD7/PSP7 RD6/PSP6 RD5/PSP5 RD4/PSP4 RC7/RX/DT RC6/TX/CK RC5/SDO RC4/SDI/SDA RD3/PSP3 RD2/PSP2

30 29 28 27

OSC1/CLKIN OSC2/CLKOUT

4 MHz

0
30 pF

15 16 17 18
19 20

RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCK/SCL RD0/PSP0 RD1/PSP1

26 25 24 23

22 21

Hnh 1.3 PIC16F877A sau khi cp ngun v thm thch anh.

By gi l mch reset cho vi iu khin s dng ch reset t chn MCLR ca vi iu khin (chn s 1). Ta bit vi iu khin s c reset khi chn MCLR chuyn t mc logic 1 xung mc logic 0 v ta s dng mt cng tc c kh thc hin vic chuyn i , nh vy ta mi c th tc ng cho vi iu khin reset bng tay. Li mt cu hi na, phi thit k mch nh th no thc hin c cng vic ? D thi, ta c th thit k nh hnh 1.4. Bnh thng cng tc h, chn MCLR ca vi iu khin mang mc logic 1 (v c ni vi ngun qua in tr hn dng R1). in tr R1 phi c gi tr nh hn 40K bo m in p cung cp cho vi iu khin. Khi n cng tc, chn MCLR c ni vi GND nn mang mc logic 0, khi vi iu khin s c reset.

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 5/14

RE0/RD/AN5 RE1/WR/AN6 RE2/CS/AN7

VDD GND
RD7/PSP7 RD6/PSP6 RD5/PSP5 RD4/PSP4 RC7/RX/DT RC6/TX/CK RC5/SDO RC4/SDI/SDA RD3/PSP3 RD2/PSP2

HI

C1

11 12

VDD GND

PIC16F877A

30 29 28 27
26 25 24 23
22 21

0
30 pF

13 14
15 16 17 18

OSC1/CLKIN OSC2/CLKOUT
RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCK/SCL RD0/PSP0 RD1/PSP1

C2

4 MHz

0
30 pF

19 20

Hnh 1.4 PIC16F877A sau khi tip tc thm vo mch seset. n y xem nh ta hon thnh nhng thnh phn c bn nht cho mt mch test dnh cho vi iu khin PIC16F877A. Ta tip tc pht trin cc thnh phn tip theo test cc port ca vi iu khin. PORTB ca vi iu khin s c test u tin. Mc ch ca mch test l kim tra xem cc gi tr ta xut ra port bng chng trnh c ng hay khng, v pht hin c cc gi tr mt cch trc quan, ta s dng 8 LED gn vo 8 chn trong PORTB ca vi iu khin. Khi ta xut gi tr mang mc logic 1 ra mt chn no trong PORTB ca vi iu khin, LED tng ng gn vi chn s sng ln (do lc ny in p chn ca vi iu khin l 5V) v ngc li, nu gi tr xut ra mang mc logic 0 th LED s khng sng (do lc ny in p chn ca vi iu khin l 0V). Tuy nhin, ta cn ch n mt im quan trng na, l LED sng bnh thng, in p t vo hai u ca LED vo khong 1,8V n 2,2V, trong khi in p ti chn I/O ca vi iu khin khi ta xut ra mc logic 1 s

HI

HI

R1

MCLR/VPP

SW1

2 3 4 5 6 7
8 9 10

RB7/PGD RB6/PGC RB5 RA0/AN0 RB4 RA1/AN1 RA2/AN2/VREF-/CVREF RB3/PGM RB2 RA3/AN3/VREF+ RB1 RA4/TOCKI/C1OUT RBO/INT RA5/AN4/SS/C2OUT

40 39 38 37 36 35 34 33

32 31

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 6/14

l 5V. Do cn mc thm in tr hn dng cho LED (c th dng in tr c gi tr 0.33 K). Da vo cc im phn tch trn ta c th xy dng c mch nguyn l hon chnh cho ng dng test PORTB nh sau:
HI

R2
R1
1
40 39 38 37 36 35 34 33
HI

D1

MCLR/VPP

SW1

2 3 4 5 6 7

RB7/PGD RB6/PGC RA0/AN0 RB5 RA1/AN1 RB4 RA2/AN2/VREF-/CVREF RB3/PGM RA3/AN3/VREF+ RB2 RA4/TOCKI/C1OUT RB1 RA5/AN4/SS/C2OUT RBO/INT VDD GND

R3

D2

R4

D3

R5
32 31

D4

8 9 10
HI

RE0/RD/AN5 RE1/WR/AN6 RE2/CS/AN7


VDD GND

C1

11 12

PIC16F877A

0
30 pF
C2

13 14

RD7/PSP7 RD6/PSP6 RD5/PSP5 RD4/PSP4 RC7/RX/DT RC6/TX/CK RC5/SDO RC4/SDI/SDA RD3/PSP3 RD2/PSP2

30 29 28 27

R6

D5

OSC1/CLKIN OSC2/CLKOUT

R7
26 25 24 23

D6

4 MHz

0
30 pF

15 16 17 18
19 20

RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCK/SCL RD0/PSP0 RD1/PSP1

R8

D7

22 21

R9

D8

Hnh 1.5 Mch nguyn l hon chnh cho ng dng test PORTB. Nh vy n y ta hon tt vic thit k phn cng cho ng dng. Trong phn tip theo ta tip tc bn n vic vit chng trnh cho ng dng trn.

1.2.

Xy dng chng trnh xut d liu ra PORTB vi iu khin PIC16F877A

Trc tin, vit c chng trnh, ta cn tm hiu mt s c im v cu trc ca vi iu khin PIC16F877A v c php ca mt s lnh s dng trong chng trnh.

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 7/14

1.2.1 Mt s c im v cu trc PORTB vi iu khin PIC16F877A.


Ta cn ch n cc im sau: PORTB ca vi iu khin PIC16F877A cng nh cc port iu khin khc u cho php truyn nhn d liu theo hai hng, c ngha l ta c php c v xut d liu ra port iu khin. Hng truyn nhn c thit lp bng cch a gi tr thch hp vo thanh ghi TRISB. Mi bit trong thanh ghi iu khin hng xut/nhp cho mt chn ca port (bit 7 ca thanh ghi TRISB iu khin chn RB7, bit 6 ca thanh ghi TRISB iu khin chn RB6, ... ). Nu mt bit trong thanh ghi TRISB mang mc logic 0 th vi iu khin s hiu rng chn iu khin bi bit l chn xut d liu v ngc li, nu mt bit trong thanh ghi TRISB mang mc logic 1 th vi iu khin s hiu rng chn iu khin bi bit l chn nhp d liu. V d, ta mun thit lp chn RB3, RB2, RB1, RB0 ca PORTB l nhp, chn PB7, RB6, RB5, RB4 ca PORTB l xut, khi gi tr tng ng a vo thanh ghi TRISB s l 00001111. D liu nhp vo hay xut ra PORTB s c cha trong thanh ghi PORTB. V d, gi s nh tt c cc chn ca PORTB u l chn xut d liu, khi mun a tt c cc chn ca PORTB ln mc logic 1, ta ch vic a vo thanh ghi PORTB gi tr 11111111. Nu tt c cc chn trong PORTB u l chn nhp d liu, mun bit c trng thi mc logic ca tng chn ta ch vic c gi tr ca thanh ghi PORTB. Trong cu trc b nh d liu ca PIC16F877A, thanh ghi PORTB nm BANK 0, cn thanh ghi TRISB nm BANK 1. Ta bit mun truy xut gi tr ca mt thanh ghi no trong b nh d liu ca vi iu khin PIC, trc tin cn chn BANK d liu cha thanh ghi , v vic chn BANK d liu c iu khin bi hai bit RP1:RP0 ca thanh ghi STATUS. C th nh sau: RP1:RP0 = 00 RP1:RP0 = 01 RP1:RP0 = 10 RP1:RP0 = 11 chn BANK 0. chn BANK 1. chn BANK 2. chn BANK 3.

Cc c im ny s l c s cho vic hnh thnh chng trnh xut d liu ra PORTB ca vi iu khin PIC16F877A.

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 8/14

1.2.2 Cc lnh s dng cho chng trnh


Phn ny s cp n cc lnh s dng trong chng trnh xut d liu ra PORTB ca vi iu khin PIC16F877A. Ta cn s dng cc lnh sau: Lnh BSF C php: BSF thanhghi,bit

(tham s bit mang gi tr t 0 n 7). Chc nng: lnh ny dng a bit c s th t cha trong tham s bit ca thanh ghi cha trong tham s thanhghi ln mc logic 1. V d: BSF PORTB,7

(bit 7 ca thanh ghi PORTB sau lnh ny s mang mc logic 1). Lnh BCF C php: BCF thanhghi,bit

(tham s bit mang gi tr t 0 n 7) Chc nng: lnh ny dng a bit c s th t cha trong tham s bit ca thanh ghi cha trong tham s thanhghi v mc logic 0. V d: BCF PORTB,7

(bit 7 ca thanh ghi PORTB sau lnh ny s mang mc logic 0). Lnh MOVLW C php: MOVLW hangso

(tham s hangso mang gi tr t 0 n 255) Chc nng: a gi tr ca tham s hangso vo thanh ghi W. Ta c mt s nh dng v tham s hangso nh sau: nh ng s hex: thm k t 0x vo trc tham s hangso. V d: MOVLW 0x5F

(a gi tr hex 5F vo thanh ghi W). nh dang s thp phn: thm k t d vo trc tham s hangso. V d: MOVLW d15

(a gi tr thp phn 15 vo thanh ghi W). nh dng s nh phn: thm k t b trc tham s hangso V d: MOVLW b10101010

(a gi tr nh phn 10101010 vo thanh ghi W).

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 9/14

Lnh MOVWF C php: MOVWF thanhghi

Tc dng: a gi tr cha trong thanh ghi W vo thanh ghi c ch nh bi tham s thanhghi. V d: MOVWF PORTB

(a gi tr cha trong thanh ghi W vo thanh ghi PORTB). Lnh CLRF C php: CLRF thanhghi

Tc dung: xa thanh ghi c ch nh bi tham s thanhghi. V d: CLRF PORTB

(xa thanh ghi PORTB). Lnh GOTO C php: GOTO label

Tc dng: nhy ti label c ch nh bi tham s label. V d: GOTO next

(nhy ti label next). Ta thy rng trong tp lnh ca vi iu khin PIC, khng c lnh no cho php a trc tip mt gi tr no vo mt thanh ghi m phi thng qua thanh ghi trung gian l thanh ghi W. V d, ta mun a gi tr b00000000 vo thanh ghi TRISB (thao tc ny c ngha l thit lp tt c cc chn ca PORTB l chn xut d liu), ta c th dng hai lnh nh sau: MOVLW MOVWF b00000000 TRISB

Tng t ta c th dng cp lnh trn a mt gi tr 8 bit bt k vo mt thanh ghi bt k trong b nh d liu. Tuy nhin y l mt trng hp c bit. Vic a vo thanh ghi TRISB gi tr b00000000 cng ng ngha vi vic xa thanh ghi TRISB, do ta c th thay th hai lnh trn bng mt lnh duy nht: CLRF TRISB

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 10/14

n y ta c c cc thng tin cn thit cho vic vit chng trnh iu khin. Chng trnh c th c trnh by phn tip theo.

1.2.3 Chng trnh test PORTB vi iu khin PIC16F877A.


;------------------------------------------------------------------------------------------; Ghi ch v chng trnh

;------------------------------------------------------------------------------------------; ; ; Chng trnh 1.1 PORTBTEST.ASM Chng trinh dng test PORTB ca vi iu khin PIC16F877A

;-------------------------------------------------------------------------------------------------; Phn khai bo vi iu khin

;------------------------------------------------------------------------------------------------processor 16f877a ; khai bo vi iu khin s dng chng ; trnh ny include <p16f877a.inc> ; header file nh km

__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _XT_OSC & _WRT_OFF & _LVP_ON & _CPD_OFF ; khai bo configuration bit ;------------------------------------------------------------------------------------------------; Chng trnh bt u ti y

;------------------------------------------------------------------------------------------------ORG GOTO start BCF BSF STATUS,RP1 STATUS,RP0 ; chn BANK 1 0x000 start ; a ch bt u chng trnh

CLRF

TRISB

; khi to PORTB ; PORTB l cng xut d liu

BCF

STATUS,RP0

; chn BANK 0

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 11/14

MOVLW MOVWF loop GOTO END

b10001111 PORTB

; gi tr cn xut ra PORTB ; PORTB <- 8Fh

loop

; vng lp v hn dng chng trnh ; kt thc chng trnh

1.3.

Mt s nhn nh

Nh vy ta hon tt mt ng dng dnh cho PORTB ca vi iu khin PIC16F877A. By gi hy kim tra kt qu thc hin ca chng trnh bng cch s dng mch test ta va thit k. Theo tnh ton trn l thuyt, do ta xut ra PORTB gi tr b10001111 nn cc LED gn vo cc chn RB7, RB3, RB2, RB1, RB0 s sng, cn cc LED gn vo cc chn RB6, RB5, RB4 s tt. Cn kt qu do vi iu khn PIC to ra th sao? y, cc LED c khoanh trn l cc LED m vi iu khin PIC16F877A lm cho sng ln:

Hnh 1.6 Kt qu th thi chng trnh 1.1 ca PIC16F877A.

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 12/14

Ta thy c mt im bt hp l y. l LED gn vo chn RB3 ca vi iu khin li khng sng. L do ti sao? l do chn RB3 ca PIC16F877A cn c thm mt chc nng l chn np chng trnh cho vi iu khin ch np LVP (Low Voltage Programming). Khi ch np ny c kch hot, chn RB3 ca vi iu khin s khng c hot ng nh chn I/O bnh thng, cho nn mc d ta c xut d liu ra chn RB3 th vi iu khin vn khng th hin tc ng ra chn RB3. Vy lm sao khc phc? Rt n gin, ta ch cn tt ch np LVP bng cch khai bo ... &_LVP_OFF .... khi khai bo cc Configuration bits phn khai bo vi iu khin. n y hn cc bn hiu ti sao ta phi thi cng mch test v kim tra kt qu thc thi chng trnh ca vi iu khin mt cch trc quan, cho d chng trnh ng dng c n gin nh th no i na, c nh vy ta mi tm hiu su hn c cc kha cnh, cc vn ca vi iu khin, ng thi san bng khong cch gia l thuyt v thc t. By gi ta th khng xa ht thanh ghi TRISB m a vo thanh ghi TRISB mt gi tr khc, chng hn nh gi tr b10000000. Cc bn bit phi lm th no ri ch? Chn BANK 1 ca b nh d liu v s dng cp lnh: MOVLW MOVWF b10000000 TRISB

Kt qu thc thi chng trnh l LED gn vo chn RB7 ca PORTB khng sng. L do nh sau, ta va khi to chn RB7 ca PORTB l chn nhp d liu (bit 7 ca thanh ghi TRISB mang gi tr logic 1), cho nn mc d ta c xut d liu ra chn RB7 (gi tr xut ra vn l b10001111) th chn vn khng xut c d liu ra bn ngoi, nhim v ca chn RB7 lc ny ch l nhp d liu t bn ngoi. Nh vy ti mt thi im, mt chn I/O ca vi iu khin ch c th thc hin mt trong hai nhim v xut d liu (Output) hoc nhn d liu (Input) ty theo chc nng m ta khi to (a d kiu thch hp vo thanh ghi TRISB). Tng t ta c th xut ra PORTB mt gi tr khc bng cch thay i gi tr a vo thanh ghi PORTB. Cc port cn li ca vi iu khin PIC16F877A cng nh cc vi iu khin PIC khc u c cu trc tng t, tc l c thanh ghi TRISx iu khin chc nng (Input hay Output) v thanh ghi PORTx cha d liu ca port . Da vo c im ny ta c th vit chng trnh iu khin cc port cn li ca PIC16F877A xut d liu ra bn ngoi theo cu trc nh chng trnh 1.1. y l thao tc nn thc hin kim tra li cc c tnh ca tng port trong vi iu khin PIC16F877A, ng thi gip cc bn lm quen vi cu trc chng trnh cng nh cch vit chng trnh dng cho vi iu khin PIC.

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 13/14

Sau y l mt vi c im v cc port ca vi iu khin PIC16F877A m cc bn nn ch : Chn RA4 ca PORTA l chn c cc thu h, cho nn khi test PORTA, ta cn gn thm in tr ko ln cho chn ny m bo kt qu hin th ra LED. PORTA v PORTE mc nh khi khi ng l cc chn I/O ca tn hiu analog, cho nn trc khi mun s dng cc chn ny nh cc chn I/O bnh thng ta cn tin hnh thm mt bc khi to na. Tuy nhin trong bi u tin ta ch xut d liu ra LED nn cha cn quan tm n bc khi to ny (kt qu hin th vn khng c g khc bit so vi tnh ton trn l thuyt), ta s bn k n cc bc khi to v c tnh analog ca cc chn trong PORTA v PORTE trong cc bi sau. Cc chn trong PORTB, PORTC, PORTD cng c cc chc nng khc ngoi chc nng I/O, tuy nhin khi khi ng cc chn ny c mc nh l cc chn I/O bnh thng nn trong qu trnh test port ta khng cn tr ngi g na.

y l bi u tin n gin nht nhng hn cc bn cng nhn thy rng c rt nhiu thng tin cn c x l n ni n chn mt cch thc t v vi s nghim tc cn thit. Vic thc hin thnh cng ng dng n gin nhng cng rt quan trng ny c th xem l mt bc ngoc trong qu trnh bn lm quen vi vi iu khin PIC16F877A ni ring v h vi iu khin PIC ni chung. Bn cnh cc bn cng nn lm quen dn vi cch ghi ch chng trnh, cng vic ny c v tha thi nhng tc dng m n mang li l rt tch cc. Th nht, ta c th dn nh hng cho mnh mt cu trc chng trnh vit cho vi iu khin PIC. Th hai, bn c th bit c mnh va ra lnh cho vi iu khin PIC thc hin cng vic g vi lnh mnh va vit ra. Th ba, ngi khc khi dc chng trnh ca bn cng cm thy thn thin v d hiu hn. ng dng ny phi c thc hin thnh cng trc khi ta xy dng cc ng dng khc phc tp hn. y cng l mc ch xy dng ca lot bi PIC16F877A t d ti kh, ta s bt u t ng dng n gin nht ny, v ly n lm c s xy dng cc ng dng ngy cng phc tp hn. Hy vng cc bn c th bit c thm mt s thng tin no v vi iu khin PIC16F877A sau bi u tin ny.

Ht bi 1!

Ngi bo co: Ngy:

Nguyn Trung Chnh 7/12/2005

Ti liu: Trang:

TUT01.03 14/14

You might also like