Sunteți pe pagina 1din 7
Ky thuat bang 0) Kién thite can biét = Tép igh - B6 nhé di ligu va b6 nhé chuong trinh (Kién trite Harvard) = Con tré chuong trinh - Té chite b6 nhé ctia PIC (cdc BANK) - Khai nigm Stack 1) Gidi thigu vé ky thuat bang Dé hiéu vé ky thuat bang, trudc tién ching ta xem vi dy sau: Gia sit ching ta cn xuat dit ligu ra man hinh LCD véi day chit : “PIC_Tutorial”. 6 day, chiing ta khong cin quan tim dén hoat dng ciia LCD va hinh thite xudt dr Ligu hu thé ndo, Chi can ede ban nim duge ring, dé xuat di ligu nhw trén ra, ching ta phai xudt tuan ty cde ky t“P, 1, C,_,T, ut, 0,6, i, a, I" ra. duge ede chit nay ra? van dé G day cé hai van dé, van dé thir nbat 1 Lim sao luu trit duge cae gid tri nay, thir hai 1a 1am sao sap xép thir wr céc chit cdi niy dé ching ta goi ching ra mot cach ty. Trude tin, ching ta gidi quyét vin dé thir hai trude, béi vi né rat don gian. Cach gidi quyét li thay vi ching ta phai tim cae chit cdi trong bang chit cdi (ca chit in lin chit thuimg) dé goi ra vio ding thii diém de chit cai niy ra, ching ta du cdc chit cdi nay véi cdc chi s6, va khi goi thi chiing ta chi goi chi sé dau tién 1a 0 (hoge 1, tuy theo su quy dinh), sau 46, chiing ta cit ting chi s6 nay Ién 1 dom vi, va 0% tiép chit cdi tiép theo. Cong vige nay sé dimg lai khi né dat dén chi s6 cudi cing. thé tham khdo phin b@ nhé dt Tigu vi b§ nhé chxong trinh trong phan kién tric Harvard va kién tric Von Neumann. Tuy nhién, chiing ta sé nhac lai ring, 46i voi PIC dong Mid Range, b9 nhé chyong trinh ¢6 14 bit cho méi lénh, vi vay, cho dit cde ban thyc hign Iénh nao di nia, thi Iénh dé ludn chiém 14 bit trong bd nhé chuong trink. Mit khdc, 66 nhé dir ligu thi lai bi gidi han va mot lin twomg tac v6i b6 nhs di ligu, cdc ban phai théng qua thanh ghi W, nhu vay, cdc ban tén thém it nhat 2 1énh cho vige tuong tie véi thanh ghi W. Két qua, eéch thong minh nhit 18 lu céc dit ligu dé vao trong b6 nhé chuong trinh, thay vi hru né vao trong b6 nhé dit ligu. Lai nhac lai vé tap Iénh, néu cac ban dé y ic ban s@ lai thay ring, c6 mét s6 Iénh cho phép tuong tae voi gid tri k (8 bit), va gia tri k nay kh6ng hau tri trong bg nhé dit ligu, ma hu trong bd nhé churong trinh. ky thugt bing 1 ky thudt Igp trinh dé truy xudt dir ligu mét each e6 thé « (thirty hiéu theo nghia rng 14 mdt quy ludt truy xudt nao d6), va khi cdc dir ligu d6 18 hang sé, thi ky thuat nay cho phép ching ta hru trit cde dit ligu dé trong bé nhé chwong trinh, khéng lim tén kém b6 nhé dit ligu, va viée truy xuat duge thye hign ‘mét cdch nhanh nhat. 2) Cfich xéy dung bang ‘Tir ¥ tuéng nay, c6 thé cé rat nhiéu céch lip trinh truy xuat dif ligu bang. Tuy nhién, do sy gidi han ca tai ligu nay, ching t6i chi trinh bay ky thudt bang tiéu biéu nbdt, va cling tét nhat, dng théi sir dung tai ligu application note ANSS6 cla Microchip nhw ‘mt tai ligu tham khao chinh, Dudi day 1a mét doan code dién hinh sit dung ky thuat bang trong ANSS6 Table addwe PCL,F add offset to pe to igenerate a computed goto retlw ‘A’ ;return the ASCIT char A retlw ‘B’ — ;return the ASCII char B retlw ‘C’ —;return the ASCIT char C ‘Trong vi du nay, chung ta sé phan tich va thay rang, ti nhan [Table] con tro chuong trinh drge cng véi gid trj nm trong thanh ghi W va hu Iai vao con tré chuong trinh. Nhu vay, vi trf con tré chuong trinh hign tai dang nim 6 dng lénh. addwf PCL, F Sau khi thye hign Iénh nay PCL = W + PCL Tiép theo d6, con tr6 chuong trinh duge ting thém mgt don vj; vi mac dinh, eit mdi lin thye hign xong mét Iénh, con trd chuong trinh s& tng lén mot dom vi dé thye hign enh tiép theo. Gia sir ring, gid tri nim trong thanh khi W truée khi nhay dén nhan [Table] dang la 1 Nhu vay, con tré chuong trinh sé 1a PCL = 1 + PCL. Cé nghia 1a con tré chong trinh sé nhay dén dang 1énh retlw Tuy nbién, sau dé, n6 mac dinh cng thém mot don vi dé thyc hign Iénh tiép theo, va hu vay, lie nay con tré chuong trinh sé nhay dén dong lénh retlw ‘B? Nhu vay, sau khi thye hign Iénh addwe, lénh tiép theo durge thye hign sé 18 Iénh rethw “B’ ma khdng phai 1a lénh rethw ‘A’ Nhac lai l@nh RETLW rang, gia tri k ciia lénh sé duge lun vao thanh ghi W va sau dé con tr8 churong trinh sé nhay vé TOS (top of stack). Nhu vay, thanh ghi W sau khi nay vé TOS sé mang gid tri ‘B’, va chi cin thay d8i id tri cia W trude khi nhay dén nhan [Table] ching ta c6 thé truy xuat bat ky gid tr} nao theo ¥ ching ta mudn, vi gid tri ctia W sau khi tra gid tri 6 chi s6 trong img voi W ban dau. 6 day, ching ta thay, gid ti dau tin cua bang la ‘A’ sé img voi chi s6 0 cla W khi nhay dén bang. ‘Ching ta sé goi gid tri W ban dau 1a chi sé (offset / index) dé phan biét vai gia tri W sau khi tri vé. Vige quy dinh nay c6 thé Li hoi mudn trong chutong nay, nhung tir nay vé sau, trong cde img dung bang, ching ta sé chi quan tim dén vige thay déi chi sé theo mét quy ludt no dé, ma khéng edn quan tim nhiéu dén gid tr trong bang nita Ching ta xem nur d3 vugt qua giai doan déu cia vige xdy dug bang. Vi du trén kia 1a vi dy dién hinh nhit cho vigc str dung bang. 3) Cfich goi bing By gid, ching ta 43 biét cach thiét lap mot bing. Chuing ta hay tam gic lai vige s8 xtt ly di ligu bing ra sao, ma chi quan tim dén vige, néu bit chi s6 cua bing, Him thé nao duge gid tri ctia bang ra. Kién thie vé con tr chuong trinh 4n thiét trong phan nay. Do vay, ching téi dé nghj cde ban xem lai chyong vé con tr6 chyong trinh, O day, ching ta chi nhie lai Hing, con tro chuong trinh gom 2 thinh phan, PCL va PCH. Trong dé, PCL 18 8 bit thép, c6 thé ghi va doc, con PCH Ii 5 bit cao, khéng thé ghi va doc, ma chi cé thé ‘wong téc mét cach gidn tiép qua thanh ghi PCLATH. Do vay, khi thay déi, PCL chi c6 thé mang gia tri tir 0 dén 255 (0x00 dén OxFF). Néu bang duge lép ra mi d6 dai bang lén hon 255 thi ching ta Kh6ng thé tray xudt duge gid tri cudi cing trong bang. Tong tw nhu vay, néu mét bang cé 46 dai ngn hom, nhung vi tri bat dau cua bang nam trong ving tir 0 dén 255, cin vi tri cudi cing cia bang Igi nam ngoai 255, thi diéu nay cing kh6ng thy hign duge. Khi 46 dai bang, hoe yéu cdu trinh bay chuong trinh mét eéch 13 rang, khién cde ban Khong thé dat bang trong bd nhé chong trinh tir 0 dén 255, céc ban bat bude phai xay dimg 2 bang rigng bigs. ‘Trude tién, chiing ta thye hign vige goi bing théng thudmg, khi gid tri cua bing nim trong viing tir 0 dén 255 trong b9 nhé churong trinh.

S-ar putea să vă placă și