You are on page 1of 10

Hng dn s dng phn mm Pinnacle 52

B mn K thut in t- trng HSPKT Nam nh

S dng phn mm Pinnacle 52 trong lp trnh v m phng vi iu khin 8051


Mc ch: Trong bi thc hnh ny chng ta s lm quen vi phn mm lp trnh v m phng cho vi iu khin 8051. Chng ta s lm quen vi cc b-c son tho ch-ng trnh, dch tm li v sa li, m phng ch-ng trnh trn my tnh. B-c u hnh thnh k nng lp trnh, sa li trn my tnh. Nhim v: Vit mt ch-ng trnh iu khin led n ni vi cc cng ca vi iu khin. Son tho ch-ng trnh trn my v l-u ch-ng trnh Dch ch-ng trnh sang m my Tm v sa li c php M phng v sa li gii thut Gii thiu v phn mm Pinnacle 52 Pinnacle 52 l phn mm lp trnh cho h vi iu khin 8051 bng ngn ng Assembly chy trong mi tr-ng Windows (t-ng thch window98, winme). Pinnacle 52 l mi tr-ng pht trin t hp IDE (Intergrate Developmet Environment) gm cc tin ch cho php ng-i lp trnh tin hnh son tho, dch, lin kt v m phng hot ng ch-ng trnh trn my tnh. Ng-i s dng c th ti phin bn Demo ca Pinnacle 52 ti a ch http://www.vaultbbs.com/pinnacle dng th. Bn Demo ny cho php dch v m phng ch-ng trnh c dung l-ng ln nht l 2 Kb. Mt cch rt tt lm quen vi cc cng c ca mt phn mm l lm mt bi tp c th t ta s bit chc nng v cch s dng ca tng thnh phn. Ni chung khi vit ch-ng trnh trn Pinnacle 52 c cc b-c c bn sau: 1. Khi ng Pinnacle 52, to mt file rng 2. Son tho ch-ng trnh 3. Dch v lin kt ch-ng trnh, sa li c php 4. M phng hot ng trn my tnh, sa li gii thut

1
Bin son: Gin Quc Anh

Hng dn s dng phn mm Pinnacle 52

B mn K thut in t- trng HSPKT Nam nh

2.Giao din ca Pinnacle 52

Mi tr-ng pht trin t hp ca Pinnacle bao gm: Thanh tiu , menu chnh, thanh cng c, thanh trng thi m phng, ca s son tho, thanh trng thi.

Menu: ging nh- cc ch-ng trnh chy trong windows khc, Pinnacle 52 c cc menu File, Edit, View, Windows, Help cho php ng-i s dng m file, ghi file ng thi thay i cch hin th ca cc ca s, thanh cng c trn mn hnh cho tin vi ng-i s dng. Ngoi ra, trong menu chnh ca Pinnacle cn c cc mc khc nh- Project, Execute, Simulator, Option cho php ng-i s dng to cc d n, thc hin m phng ch-ng trnh, chn cc ch m phng vi iu khin, v..v...

Thanh cng c bao gm cc nt cho php truy nhp nhanh n cc lnh th-ng dng nhto mt file mi, m mt file c trong a, in, reset ch-ng trnh trong ch m phng, bt u chy m phng (RUN F5), dng m phng (STOP), m phng tng lnh, m phng c ch-ng trnh con...

2
Bin son: Gin Quc Anh

Hng dn s dng phn mm Pinnacle 52

B mn K thut in t- trng HSPKT Nam nh

Thanh trng thi m phng cho bit v tr con tr ch-ng trnh, m thc hin, ch thch, thi gian thc hin, s chu k thc hin.

Khng gian lm vic l v tr ti ng-i s dng c th hin th ca s son tho, hin th cc thanh ghi, ca s m... trong qu trnh vit v m phng ch-ng trnh.

Thanh trng thi cho bit v tr con tr, loi vi iu khin ang -c chn v hng gii thch ngn gn hoc gi cc lnh tu theo v tr hin thi ca con tr mn hnh.

3. Cc b-c vit ch-ng trnh trn Pinnacle 52 B-c 1: Khi ng ch-ng trnh: Start --> Program --> Pinnacle --> Pinnacle 52 hoc nhy kp vo biu t-ng ca ch-ng trnh Pinnacle 52 trn mn hnh.

Ca s son tho

M menu File, click NEW to ra mt ca s son tho trn bn c th nhp m chng trnh. Nu m chng trnh c trc trong mt file, click Open m file ch-ng trnh .
3
Bin son: Gin Quc Anh

Hng dn s dng phn mm Pinnacle 52

B mn K thut in t- trng HSPKT Nam nh

B-c 2: Nhp m ch-ng trnh vo ca s son tho Gi thit bn mun to ra mt ch-ng trnh iu khin cc led gn vi cng p0 sng dn t phi qua tri, bn nhp vo ca s son tho m ch-ng trnh sau: org 0 ;ch-ng trnh ghi t a ch s 0 trong ROM start: ;nhn ca dng lnh mov r0,#8 ;nhp gi tr 8 vo thanh ghi r0 mov p0,#0 ;tt ht cc led( anode chung) clr a ;xo ni dung thanh ghi A call delay ;tr mt khong thi gian quan st cc led tt ht loop: setb c ;t bic C trong thanh ghi trng thi ch-ng trnh ln mc cao rlc a ;quay tri thanh ghi A qua c C mov p0,a ;cho cc led sng dn call delay ; tr mt c th quan st -c s thay i trng thi ca cc led djnz r0,loop ;lp li 8 ln sng dn 8 led jmp start ;khi tt c cc led sng ht th lp li t u ;ch-ng trnh con tr lm nhim v tr mt khong thi gian nht nh mt ng-i c ;th phn bit -c gia cc ln thay i trng thi ca cng p0 delay: push 0 ;ct gi ni dung thanh ghi R0 ln ngn xp push 1 ;ct gi ni dung thanh ghi R1 ln ngn xp mov r0,#250 ;np gi tr ban u cho R0=250 nhan1: mov r1,#250 ;np gi tr ban u cho R1 =250 djnz r1,$ ;gim R1 i mt n v v so snh vi 0, nu R1 khc khng ;th tip tc tr R1, nu R1 =0 th thc hin lnh tip theo djnz r0,nhan1 pop 1 pop 0 ret end Mn hnh son tho c dng

4
Bin son: Gin Quc Anh

Hng dn s dng phn mm Pinnacle 52

B mn K thut in t- trng HSPKT Nam nh

B-c 3: L-u m ch-ng trnh vo b nh: trong menu File chn Save As. Chn a mun lu trong Drivers, nhy kp vo th mc cn lu trong Folder. Trong mc File name nhp tn t cho chng trnh (khng cn ui .asm, khi thc hin chng trnh s

t ng thm vo). Sau nhn nt OK(Lu nn lu chng trnh ngay sau bc 1 v l-u ch-ng trnh th-ng xuyn khng b mt d liu do cc s c v ngun in hoc treo my) B-c 4: M menu Project v click vo Compile & Link FILENAME, trong FILENAME l tn chng trnh bn va to ra (chng trnh s t ng chn tn filename vo).
5
Bin son: Gin Quc Anh

Hng dn s dng phn mm Pinnacle 52

B mn K thut in t- trng HSPKT Nam nh

Bn cng c th dng phm nng Ctrl+F2 thc hin b-c ny. Sau , ch-ng trnh s tin hnh dch, thng bo cc li trong ch-ng trnh B-c 5: Nu nh qu trnh Compile & Link thng bo chng trnh cn li, bn ng ca s thng bo li, quay li ca s son tho sa cha nhng li va -c thng

bo. Ca s thng bo li cng cho bit v tr pht hin li ti dng bao nhiu v gi nguyn nhn li. Sau khi sa, bn lm li thao tc ca b-c 4, qu trnh lp li cho n khi cn thng bo li: Build complete. 0 error(s), 0 warning(s) Khi c thng bo ny, ch-ng trnh ca bn ht li v mt c php v bn c th m phng hot ng ca ch-ng trnh. Ch-ng trnh t ng to ra cc file cn thit .lst, .map, .hex, obj. Trong file .hex l file m my s -c s dng np vo b nh ch-ng trnh. Trong ca s thng bo ny, Pinnacle s cho bit thng tin v s byte m my m ch-ng trnh s dng, v d trong ch-ng trnh ny l 39 byte. B-c 6: Ch-ng trnh ca bn -c dch v lin kt to thnh file m my. File m my c ui .Hex -c to ra trong cng th- mc vi file m ngun. Ch-ng trnh -c

6
Bin son: Gin Quc Anh

Hng dn s dng phn mm Pinnacle 52

B mn K thut in t- trng HSPKT Nam nh

l-u vo trong b nh o ca b m phng. Nu ch-ng trnh ch-a -c -a vo b nh o ca b m phng, vo Simulator/Load Memory/Code Memory v chn ch-ng trnh cn m phng. B-c ny cng -c s dng nu bn ang tin hnh son tho mt ch-ng trnh m mun m phng mt ch-ng trnh khc. Nhy chut vo nt c du ... bn cnh Filename to Load chn chng trnh cn ti vo b nh o, hoc nhp trc tip tn v ng dn vo Filename to Load. Sau khi chn xong, nhn OK. L-u , m phng, ch-ng trnh phi c ui .hex hoc .bin B-c 7: Vo menu View quan st cc thanh ghi, m ch-ng trnh, b nh Ram trong, ngoi... V d mun quan st m ch-ng trnh ta vo View/Code Memory( Disassembly). Ca s Code xut hin cho php ta quan st a ch trong Rom ca tng lnh ct th nht, ct th hai biu din m Hexa ca m ch-ng trnh, ct th 3 biu din m ASCII ca ch-ng trnh ,ct th 4 biu din cc nhn, ct th 5 l dng m, ct th 6 l cc ch thch.

Trong v d ny, ta mun quan st cc cng nn ta c th vo View\ports quan st hot ng ca cc cng n y ta c th quan st hot ng ca ch-ng trnh. C hai cch quan st, th nht cho chy ch-ng trnh lin tc bng cch n phm F5 (vo Simulator/Run), cch th hai l quan st tng lnh hot ng bng cch nhn phm F8
7
Bin son: Gin Quc Anh

Hng dn s dng phn mm Pinnacle 52

B mn K thut in t- trng HSPKT Nam nh

(Simulator/ Single Step) , mi ln nhn t-ng ng vi mt lnh -c thc hin. Cch th hai l cch rt tt theo di cc lnh thc hin v tm li. ng thi vi vic cho chy tng b-c ta phi quan st cc thanh ghi, b nh xem ch-ng trnh c hot ng theo ng nh hay khng. quan st cc thanh ghi ta vo View/Registers. quan st b nh trong ta vo View/Internal Ram. Menu View cha hu ht cc vng nh m ta cn quan st. Nn chn cch th nht m phng ch-ng trnh trong ln u m phng s b quan st hot
ng ca c ch-ng trnh, sau cho chy tng b-c tm li.

Bi tp: Bi 1: ;chuong trinh dieu khien cac led gan voi cong p2 sang dan tu phai qua trai org 0 main: mov p2,#0 ;xoa cong p2 call delay ;tre mot khoang thoi gian de quan sat clr a ;xoa thanh ghi Acc lap: setb c ;C=1 rlc a ;quay trai thanh ghi Acc qua co C mov p2,a ;chuyen noi dung thanh ghi Acc ra cong P2 call delay ;tre mot khoang thoi gian de quan sat jnc lap ;kiem tra co C: neu C=0 thi nhay den nhan lap jmp main ;neu C=1 thuc hien lai tu dau ;chuong trinh con lam nhiem vu tre mot khoang thoi gian de mat co the quan sat ;su thay doi tren cac led ro rang delay: mov r6,#250 ;nap gia tri ban dau cho thanh ghi r6 delay1: mov r7,#250 ;nap gia tri ban dau cho thanh ghi r7 djnz r7,$ ; R7=R7-1. Neu R7=
8
Bin son: Gin Quc Anh

Hng dn s dng phn mm Pinnacle 52

B mn K thut in t- trng HSPKT Nam nh

djnz r6,delay1 ret

Bi 2: ;chuong trinh dieu khien cac led gan voi cong P2 sang don org 0 start0: mov r1,#7 mov p2,#0 ;xoa cong p2 call delay ;goi chuong tre de quan sat cac led start: mov a,#01 ;nap gia tri ban dau cho thanh ghi ACC mov 0,r1 ;chuyen noi dung thanh ghi R1 vao thanh ghi R0 ;(thanh ghi R0 su dung che do dinh dia chi truc tiep) loop: orl p2,a ;thuc hien phep Hoac logic noi dung thanh ghi Acc va P2 call delay ;ket qua luu tren P2 xrl p2,a ;thuc hien phep Hoac tuyet doi noi dung thanh ghi Acc va P2 rl a ;quay trai thanh ghi Acc djnz r0,loop ;giam R0 di mot don vi, neu R0=0 thi nhay den "loop" orl p2,a ;thuc hien Hoac Logic P2 voi Acc call delay ;tre mot khoang thoi gian de quan sat djnz r1,start ;giam R1 di mot don vi setb p2.0 ;dua P2.0 =1 call delay ;goi chuong trinh tre de quan sat jmp start0 ;sau khi da ket thuc mot lan sang don thi lap lai ;chuong trinh con lam nhiem vu tre mot khoang thoi gian delay: push 0 push 1 mov r0,#250 nhan1: mov r1,#250 djnz r1,$ djnz r0,nhan1 pop 1 pop 0 ret end

Bi3: ;chuong trinh dieu khien cac led don gan voi cong P2 va P3 sang chay ;tu giua ra org 0000h
9
Bin son: Gin Quc Anh

Hng dn s dng phn mm Pinnacle 52

B mn K thut in t- trng HSPKT Nam nh

main: mov p3,#0 mov p2,#0 call delay mov p3,#80h mov p2,#01h call delay loop: mov a,p3 rl a mov p3,a mov a,p2 rr a mov p2,a call delay jmp loop

;lap lai

;chuong trinh tre delay: mov r6,#250 delay1: mov r7,#250 djnz r7,$ djnz r6,delay1 ret

10
Bin son: Gin Quc Anh

You might also like