You are on page 1of 6

BI 2

GII THIU B NH CA PIC


KIN TRC B NH CA PIC
KHO ST B NH CHNG TRNH CA PIC
MI NH CA B NH CHNG TRNH L 14 BIT
KHO ST B NH D LIU V THANH GHI TRNG THI CA PIC











Ca. -: :x ea ey :xa: :e Wq% 7-a a.e a.e :x 7,xye C. 7x
I4 Ca. ,.a, 8. "- :x: J- s :xa 791 I6}x::
1. GII THIU B NH CA PIC
PIC16F877A c 3 khi b nh tch hp bn trong: b nh chng trnh (Program memory) c dung
lng 8K, b nh d liu RAM c 368 nh byte cng vi cc thanh ghi c chc nng c bit SFR
(Special Function Register) v b nh EEPROM c dung lng 256 byte.
Hnh nh cc b nh tch hp bn trong PIC16F8xx:

Hnh 2-1. Hnh nh b nh tch hp bn trong vi iu khin.
2. KIN TRC B NH CA PIC
PIC c kin trc b nh dng Harvard, mt kin trc ci tin so vi kin trc Von Neumann.
Hnh 2-2 trnh by hai kin trc:

Ca. -: :x ea ey :xa: :e Wq% 7-a a.e a.e :x 7,xye C. 7x
Ca. ,.a, 8. "- :x: J- s :xa 791 I6}x:: I5
Hnh 2-2. Kin trc Von Neumann v Harvard.
Kin trc Von Neumann: vi kin trc ny th b nh giao tip vi CPU thng qua 1 bus d liu 8
bit, b nh c cc nh cha d liu 8 bit, b nh va lu tr chng trnh v d liu.
u im: kin trc n gin.
Khuyt im: do ch c 1 bus nn tc truy sut chm, kh thay i dung lng lu tr ca nh.
Kin trc Harvard: vi kin trc ny th b nh c tch ra lm 2 loi b nh c lp: b nh lu
chng trnh v b nh lu d liu, CPU giao tip vi 2 b nh c lp nn cn 2 bus c lp. V c lp
nn c th thay i s bit lu tr ca tng b nh m khng nh hng ln nhau. Vi PIC th b nh
chng trnh vi mi nh lu tr 14 bit, cn b nh d liu vi mi nh lu d liu 8 bit.
u im: do ch c 2 bus nn tc truy sut nhanh, ty thay i s bit ca nh.
Khuyt im: kin trc phc tp.
3. KHO ST B NH CHNG TRNH CA PIC
B nh chng trnh ca PIC16F8xx c dung lng 8K c chia lm 4 trang b nh, mi trang 2K,
xem hnh 2-3.
Thanh ghi b m chng trnh PC (Program Counter) s qun l a ch ca b nh chng trnh,
thanh ghi PC c di 13 bit s qun l 8192 nh tng ng vi 8K nh. Mi nh chng trnh lu
14 bit d liu.
Khi PIC b reset th thanh ghi PC c gi tr l 0000H v PIC s bt u thc hin chng trnh ti a
ch 0000H.
Khi c bt k ngt no tc ng th PIC s thc hin chng trnh phc v ngt ti a ch 0004H.

Hnh 2-3. S b nh chng trnh v ngn xp.
Mi trang ca b nh chng trnh c a ch xc nh nh trong hnh 2-3, vic phn chia theo trang
b nh ch c tc dng i vi lnh nhy v lnh gi chng trnh con. Khi ni nhy n hoc chng trnh
con nm trong cng 1 trang th lnh s vit ngn gn hn so vi trng hp nm khc trang, s c trnh
by phn cc kiu truy xut b nh.
Ca. -: :x ea ey :xa: :e Wq% 7-a a.e a.e :x 7,xye C. 7x
I6 Ca. ,.a, 8. "- :x: J- s :xa 791 I6}x::
Trong cc h vi iu khin khc th b nh ngn xp dng chung vi b nh d liu, u im l cu
trc n gin, khuyt im l vic dng chung nu khng bit gii hn s ln chim ln nhau v lm mt
du liu lu trong b nh ngn xp v chng trnh thc thi sai.
vi iu khin PIC th nh thit k tch b nh ngn xp c lp vi b nh d liu v ch dng
lu a ch tr v khi thc hin lnh gi chng trnh con v khi thc hin ngt. Dung lng b nh b nh
ngn xp ch c 8 nh t stack level 1 n stack level 8 - xem hnh 2-3. Do ch c 8 nh nn khi thc
hin cc chng trnh con lng vo nhau ti a l 8 cp.
Khi khng s dng ngt th chng trnh c th vit bt u v lin tc ti a ch 0000H, nhng nu
s dng ngt th nn dng lnh nhy trnh vng nh bt u ti a ch 0004H - v vng nh ny dng
vit chng trnh con phc v ngt.
B nh chng trnh c chc nng lu tr chng trnh. Chng trnh sau khi vit xong trn my
tnh, dch ra s nh phn s c np vo b nh chng trnh vi iu khin thc hin.
4. MI NH CA B NH CHNG TRNH L 14 BIT
Vi cc vi iu khin 8 bit ca cc hng khc th b nh chng trnh t chc theo n v l byte, mi
nh lu tr d liu 1 byte. Nu m lnh 2 byte (gm 1 byte m lnh v 1 byte d liu hay a ch) th dng
2 nh lin tip lu v khi CPU c m lnh thc hin lnh th CPU phi thc hin 2 ln c - mi
ln 1 byte. Xem hnh 2-4:

Hnh 2-4. T chc b nh theo byte.
Vi vi iu khin PIC th mi nh ca b nh chng trnh c th lu tr d liu nhiu bit bao gm
c m lnh v d liu. Khi CPU c m lnh thc hin th CPU ch thc hin 1 ln c c m lnh v d
liu. Xem hnh 2-5:

Hnh 2-5. T chc b nh cha c m lnh v d liu.
Vy vi t chc b nh ca PIC th tit kim c 1 chu k c d liu v th PIC s c tc thc
hin chng trnh nhanh hn.
Tp lnh ca PIC l tp lnh rt gn nn ch dng c 6 bit nh phn m ha cc lnh, cng vi d
liu x l l byte - 8 bit nn tng cng l 14 bit.
Ca. -: :x ea ey :xa: :e Wq% 7-a a.e a.e :x 7,xye C. 7x
Ca. ,.a, 8. "- :x: J- s :xa 791 I6}x:: I7
5. KHO ST B NH D LIU V THANH GHI TRNG THI CA PIC
a. Cu trc b nh d liu:
B nh d liu c phn chia thnh 4 Bank, mi bank c 128byte bao gm mt s thanh ghi chc
nng c bit, cn li l cc nh thng dng c chc nng lu tr d liu.
Cc thanh ghi c chc nng c bit nm vng a ch thp, cc nh cn li khng c g c bit
nm ng a ch bn trn cc thanh ghi chc nng c bit xem nh cc nh RAM dng lu d liu.
Tt c cc bank thanh ghi u cha nhng thanh ghi c bit - xem hnh 2-6:

Hnh 2-6: T chc File thanh ghi.
Quy c: (1) Cc nh t mu xm l cha thit k nu c s c gi tr l 0.
Quy c: (2) Cc du (*) khng phi l thanh ghi vt l.
Ch : (1) Nhng thanh ghi ny khng c trong PIC 16F876A.

Ton b cc nh ca b nh d liu c gi l File thanh ghi.
Theo hnh 2-6 th b nh d liu c chia lm 4 bank thanh ghi, mi bank c 128, tng cng l 512
nh, nhng do c 1 s thanh ghi c chc nng c bit bank no cng c nn lm gim s lng. V d
thanh ghi trng thi (status) 4 bank u c, thay v 4 thanh ghi th ch xem l 1, tng t cho cc thanh ghi
khc. S lng thc ch cn 368 nh.
C 2 cch truy xut b nh d liu: truy xut trc tip v truy xut gin tip.
Ca. -: :x ea ey :xa: :e Wq% 7-a a.e a.e :x 7,xye C. 7x
Ix Ca. ,.a, 8. "- :x: J- s :xa 791 I6}x::
Khi truy xut trc tip: th cc lnh ch c php truy xut 1 bank, mun truy xut cc nh hay
thanh ghi nm bank khc th phi i bank. C 2 bit chn bank l RP1 v RP0 nm trong thanh ghi trng
thi.
Khi truy xut gin tip: th cc lnh truy xut gin tip ch c php truy xut bank 0,1 hoc bank
2,3. Khi ang bank 0, 1 nu mun truy xut cc nh bank 2,3 th phi i bank. C 1 bit chn bank
0,1 hoc bank 2, 3 l IRP nm trong thanh ghi trng thi.
b. Thanh ghi trng thi
TGTT cha trng thi ca khi ALU, trng thi Reset v cc bit chn bank b nh d liu.

Chc nng ca cc bit trong thanh ghi trng thi:
Bit 7 IRP: bit la chn thanh ghi (dng a ch gin tip).
1 = bank 2, 3 (100h-1FFh)
0 = bank 0, 1 (00h- FFh)
Bit 6-5 RP1:RP0: cc bit la chn thanh ghi (dng a ch trc tip)
11 = bank 3 (180h-1FFh)
10 = bank 2 (100h- 17Fh)
01 = bank 1 (80h- FFh)
00 = bank 0 (00h- 7Fh)
Mi bank l 128 byte.
Bit 4 : Time-out bit (Bit thi gian ch)
1 = sau khi m ngun, lnh CLRWDT hoc SLEEP
0 = thi gian ch ca WDT c thc hin
Bit 3 : Power-down bit (bit tt ngun)
1= sau khi m ngun hoc bng lnh CLRWDT
0= thc thi lnh SLEEP
Bit 2 Z: Zero bit (bit 0)
1 = khi kt qu bng 0.
0 = khi kt qu khc 0.
Bit 1 DC: Digit carry/ bit (cc lnh ADDWF, ADDLW, SUBLW, SUBWF)
(bit trn / mn)
1 = khi cng 4 bit thp b trn.
0 = khi cng 4 bit thp khng b trn.
Bit 0 C: Carry/ bit (cc lnh ADDWF, ADDLW, SUBLW, SUBWF)
1 = khi kt qu php ton c trn.
0 = khi kt qu php ton khng b trn.
Ch : Nu php ton tr th trng thi ca c C nh sau: nu php tr ln hn 0 th c C bng 0, nu
kt qu tr nh hn hay bng 0 th c C bng 1.
Cc thanh ghi cn li s c kho st cc phn c lin quan.




TO
PD
borrow
borrow

You might also like