logo

Tổng quát về IC KS57S2308/2316

Tổng quát về IC KS57S2308/2316
MUÏC LUÏC PHAÀN I GIÔÙI THIEÄU IC KS57C2308/2316 Chöông 1 TOÅNG QUAÙT VEÀ IC KS57C2308/2316 Chöông 2 CAÙC KHOAÛNG ÑÒA CHÆ Chöông 3 ADDRESSING MODES Chöông 4 MEMORY MAP Chöông 5 SAM47 INSTRUCTION SET Chöông 6 OSCILLATOR CIRCUITS Chöông 7 INTERRUPTS Chöông 8 POWER-DOWN Chöông 9 RESET Chöông 10 I/O PORTS Chöông 11 TIMERS and TIMER/COUNTERS Chöông 12 LCD CONTROLLER/DRIVER Chöông 13 SERIAL I/O INTERFACE Chöông 14 ELECTRICAL DATA Chöông 15 BAÛNG TOÙM TAÉT LEÄNH CHÖÔNG TRÌNH GÔÕ ROÁI PHAÀN II HIEÄN THÖÏC CHÖÔNG TRÌNH PHAÀN III CHÖÔNG TRÌNH NGUOÀN TAØI LIEÄU THAM KHAÛO 1 PHAÀN I GIÔÙI THIEÄU IC KS57C2308/2316 CHÖÔNG 1 TOÅNG QUAÙT VEÀ IC KS57C2308/2316 Chip ñôn KS57C2308/2316 laø vi maïch ñieàu khieån CMOS ñaõ ñöôïc thieát keá vôùi ñaëc tính kyõ thuaät duøng laøm coát loõi CPU 4 bít môùi nhaát cuûa SAMSUNG SAM47 . Vôùi nhöõng ñaëc tính nhö : coù khaû naêng ñieàu khieån LCD tröïc tieáp ,boä ñeám vaø boä ñònh thôøi 8 bít , I/O lieân tieáp. KS57C2308/2316 ñöa ra moät giaûi phaùp thieát keá vöôït troäi vaø roäng lôùn hôn khaùc nhau veà nhöõng öùng duïng lieân quan ñeán chöùc naêng LCD Treân 32 chaân trong soá 80 chaân cuûa khoái coù theå daønh cho I/O .6 vectô ngaét xaùc ñònh nhanh choùng nhöõng söï coá trong vaø ngoaøi . Hôn nöõa,kyõ thuaät CMOS tieân tieán KS57C2308/2316 xaùc ñònh ñoái vôùi söï tieâu thuï naêng löôïng thaáp vaø khoaûng bieán ñoåi volt roäng. Veà OTP (One Time Programmable) vi maïch ñieàu khieån KS57C2308/2316 cuõng coù saün moät phieân baûn OTP. KS57C2308/2316 coù moät chip EPROM OTP 16K-byte thay ROM ñaõ ñaùnh daáu . KS57P2308/2316 ñöôïc so saùnh vôùi KS57C2308/2316 caû hai cuøng coâng duïng vaø soá chaân ñònh daïng. Nhöõng ñaëc tính IC: *Boä nhôù: -512x4bit RAM -8Kx8bit ROM (2308) -16Kx8bit ROM (2316) * Chaân I/O: chæ nhaäp : 8 chaân -I/O : 24 chaân -xuaát : 8 chaân duøng chung vôùi xuaát ñieàu khieån ñoaïn *Boä ñieàu khieån/laùi LCD -Toái ña 16 soá coù theå laùi LCD tröïc tieáp -32 ñoaïn, 4 chaân duøng chung -Mode bieåu thò: tónh, 1/2 duty (1/2 bias) 1/3 duty ( 1/2 hay 1/3 bias) 1/4 duty ( 1/3 bias) *Ñònh thôøi cô baûn 8 bít -Boä ñònh thôøi noäi coù theå laäp trính -Ñònh thôøi theo doõi 2 *Boä ñeám boä ñònh thôøi 8 bít -Boä ñònh thôøi 8 bít coù theå laäp trình -Boä ñeám söï coá ngoaøi 8 bít -Ngoõ xuaát taàn soá clock tuøy yù -Boä taïo clock giao tieáp I/O lieân tieáp *Ñònh thôøi ñoàng hoà: -Thôøi gian thöïc vaø ño thôøi gian noäi -4 ngoõ xuaát taàn soá ra chaân coøi baùo -Taïo nguoàn clock cho LCD *Giao tieáp I/O lieân tieáp 8 bít -Cheá ñoä nhaän 8 bít -Söï truyeàn LSB hay MSB tröôùc tuøy choïn -nguoàn clock noäi ngoaïi *Caùc ngaét: -3 vectô ngaét noäi -3 vectô ngaét ngoaïi -2 vectô ngaét töùc thôøi *Caáu truùc I/O aùnh xaï boä nhô:ù -Boä nhôù döõ lieäu bank15 *Hai cheá ñoä nguoàn thaáp: -Cheá ñoä nghæ (chæ clock CPU ngöøng) -Cheá ñoä stop (dao ñoäng heä thoáng chính vaø heä thoáng con bò ngöøng) *Nhöõng nguoàn dao ñoäng: -tinh theå,seramic,hay RC ñoái vôùi clock b heäthoáng chính -boä dao ñoäng tinh theå hay dao ñoäng ngoaøi cho clock heä thoáng con -taàn soá clock heä thoáng chính 4.19MHz -taàn soá clock heä thoáng phuï 32.768KHz -maïch chia clock CPU (bôûi 4,8 hay 64) *Nhöõng thôøi gian thöïc thi leänh -0.95,1.91,15.3ms taïi 4.19MHz(main) -122ms taïi 32.768KHz(subsystem) *Nhieät ñoä hoaït ñoäng: - -40 ñoäC ñeán +85ñoäC *Khoaûng Volt hoaït ñoäng: - 2.0V ñeán 5.5V *Kieåu ñoùng goùi: -80 chaân QFP 3 CHÖÔNG 2 CAÙC KHOAÛNG ÑÒA CHÆ 1/ Boä nhôù chöông trình (ROM) Caùc aùnh xaï ROM ñoái vôùi caùc thieát bò KS57C2308/2316 ñöôïc taïo nhaõn ôû xöôûng saûn xuaát KS57C2308 coù 8Kx8bit boä nhôù chöông trình vaø KS57C2316 coù 16Kx8bit boä nhôù chöông trình. Ngoaøi söï khaùc nhau veà kích thöôùc boä nhôù hai saûn phaåm nhö nhau veà nhöõng ñaë tính khaùc ,h ình daïng chuaån cuûa chuùng . Boä nhôù chöông trình 8.192x8bit cuûa thieát bò coù 4 vuøng coù theå ñònh vò ñòa chæ tröïc tieáp bôûi boä ñeám chöông trình (PC) -Vuøng 12 byte ñoái vôùi dòa chæ vectô -36 byte vuøng leänh tham chieáu -20 byte vuøng duøng muïc ñích chung -8064 byte vuøng muïc ñích chung ñoái vôùi KS57C2308 -16256 byte vuøng muïc ñích chung ñoái vôùi KS57C2316 * Ñòa chæ vectô: Vuøng 12 byte ñòa chæ duøng ñeå ghi ñòa chæ vectô yeâu caàu heä thoáng thöïc thi reset vaø ngaét.Ñòa chæ baét ñaàu ñoái vôùi nhöõng chöông trình con phuïc vuï ngaét ñöôc ghi ôû vuøng naøy,cuøng vôùi nhöõng gía trò cuûa côø cho pheùp choïn bank boä nhôù (EMB); bank thanh ghi (ERB) ñöôïc duøng ñeå ñaët gía trò khôûi ñaàu chöông trình con phuï vuï töông öùng .Vuøng 16 byte coù theå duøng xen keû nhö ROM muïc ñích chung * Boä nhôù chöông trình muïc ñích chung goàm 2 vuøng 20 byte vaø 8064 bytes. * Nhöõng leänh tham khaûo : 20H - 7FH ñöôïc duøng nhö moät vuøng tham khaûo cho nhöõng leänh REF 1 byte . Leänh tham khaûo ñeå giaûm kích thöôùc soá byte cuûa toaùn haïng leänh . Leänh REF coù theå tham khaûo leänh 2 byte 3 byte hay 2 leänh 1 byte *Vuøng boä nhôù muïc ñích chung: Vuøng 20 byte ôû ROM 000CH-001FH vaø vuøng 8.064 byte ôû ROM 0080H-1FFFH ñöôïc duøng nhö boä nhôù chöông trình muïc ñìch chung . Nhöõng ñòa chæ khoâng duøng trong vuøng ñòa chæ vectô hay vuøng leänh tham chieáu coù theå duøng nhö boä nhôù duøng chung.Baèng moïi caùch , phaûi caån thaän khoâng ghi ñeø döõ lieäu khi ghi chöông trình maø söû duïng nhöõng vuøng ñaëc bieät cuûa ROM. * Vuøng ñòa chæ vectô: Vuøng ñòa chæ vectô 12-byte ñöôïc duøng ñeå ghi ñòa chæ vectô ñoái vôùi heä thoáng thöï thi resets vaø ngaét. Ñòa chæ baét ñaàu cuûa chöông trình con phuïc vuï ngaét ñöôïc ghi ôû vuøng naøy , cuøng vôùi caùc caùc gía trò côø cho pheùp EMB, ERB 2/ Boä nhôù döõ lieäu: Boä nhôù döõ lieäu 512x4 bit coù 4 vuøng : 4 -32x4 bit thanh ghi laøm vieäc ôû bank 0 -224x4 bit vuøng muïc ñích chung ôû bank 0 noù cuõng ñöôïc duøng nhö vuøng stack -22x4 bit vuøng muïc ñích chung bank 1 -32x4 bit vuøng daønh cho döõ lieäu LCD ôû bank 1 -128x4 bit vuøng ôû bank 15 daønh cho ñòa chæ I/O aùnh xaï vaøo boä nhôù. Ñeå tham khaûo ñeán RAM deã, vuøng boä nhôù döõ lieäu coù 3 bank -bank 0,bank 1 bank 15. Leänh choïn bank (SMB) ñöôïc duøng ñeå choïn bank baïn muoán choïn boä nhôù döõ lieäu laøm vieäc. Döõ lieäu ñöôïc ghi ôû trong nh öõng vò trí cuûa RAM laø 1-,4-,vaø 8-bit ñòa chæ cho pheùp. Ngoaïi tröø vuøng thanh ghi döõ lieäu LCD , noù chæ ghi 1-bit vaø 4-bit ñòa chæ cho pheùp. Nhöõng gía trò khôûi taïo ñoái vôùi vuøng boä nhôù döõ lieäu khoâng ñònh nghóa bôûi phaàn cöùng ,vaø do ñoù phaûi khôûi taïo bôûi phaàn meàm chöông trình ,theo sau reset nguoàn .Baèng caùch naøo ñoù , khi tín hieäu reset ñöôïc taïo ôû cheá ñoä nguoàn thaáp , caùc noäi dung boä nhôù ñöôïc ghi. * Caùc bank boä nhôù 0,1 vaø 15: -Bank 0 (000H-0FFH) 32 nibbles thaáp nhaát (000H-01FH) duøng nhö thanh ghi laøm vieäc ; 224 nibbles keá( 020H-0FFH) coù theå duøng caû hai nhö vuøng stack vaø nhö boä nhôù duøng chung. Söû duïng vuøng stack ñeå thöïc thi goïi vaø trôû veà chöông trình con,vaø ñoái vôùi quaùt trình ngaét . -Bank 1 (100H-1FFH ) 224 nibbles thaáp nhaát bank 1 (100H-1DFH) ñöôïc duøng cho muïc ñích chung , söû duïng 32 nibbles coøn laïi (1E0H-1FFH) nhö thanh ghi bieåu thò hay nhö boä nhôù duøng chung . -Bank 15 (F80H-FFFH) Boä ñieàu khieån vi maïch duøng bank 15 cho I/O ngoaïi vi aùnh xaø vaøo boä nhôù . Noù gaén nhöõng vò trí RAM cho moãi ñòa chæ phaàn cöùng ngoaøi ñöôïc aùnh xaï vaøo vuøng naøy. *Mode ñònh ñòa chæ boä nhôù döõ lieäu : Côø EMB ñieàu khieån cheá ñoä ñònh ñòa chæ cho nhöõng bank boä nhôù döõ lieäu 0,1,15 . Khi côø EMB =‘0’ vuøng ñòa chæ bò haïn cheá ;tuøy caùch ñònh ñòa chæ tröïc tieáp hay gían tieáp .Vôùi caùch ñònh ñòa chæ tröïc tieáp baïn coù theå truy xuaát 000H-07FH ôû bank 0 vaø bank 15. Khi ñònh ñòa chæ gían tieáp chæ ñöôïc truy xuaát . Khi côø EMB = ‘1’ ñöôïc set ‘1’ caû 3 bank ñöïôc truy xuaát töông öùng gía trò SMB hieän taïi . *Nhöõng thanh ghi laøm vieäc : Vuøng thanh ghi laøm vieäc RAM ôû bank 0 ñöôïc chia theâm thaønh 4 bank thanh ghi (bank 0,1 ,2 ,3). Mo ãi bank thanh ghi coù 8 thanh ghi 4-bits vaø caëp thanh ghi 4-bit ñöôïc ñònh ñòa chæ 8-bit. Thanh ghi A ñöôïc duøng nhö 1 thanh ghi tích luõy 4-bit vaø caëp thanh ghi EA nhö caëp thanh ghi tích luõy keùo daøi .Bit côø nhôù coù theå cuõng ñuôïc duøng nhö 1 thanh ghi tích luõy 1 -bit. Nhöõng caëp thanh ghi WX , WL , vaø HL ñöôïc duøng chung nhö con troû ñòa chæ ñeå xaùc ñònh ñòa f chæ gíaùn tieáp. *Vuøng thanh ghi döõ lieäu LCD : Caùc gía trò bit ñoái vôùi ñoaïn döõ lieäu LCD ñöôïc ghi ôû bank 1 boä nho71 lieäu LCD coù theå ñöôïc khôûi taïo duøng muïc ñích chung. *Thanh ghi laøm vieäc : Thanh ghi laøm vieäc aùnh xaï vaøo trong boä nhôù RAM ñòa chæ 000H 5 01FH ôû bank 0 ,ñöôïc duøng ghi taïm keát quaû trong luùc thöïc thi chöông trình. Döõ lieäu thanh ghi laøm vieäc coù theå ñöôïc taïo nhö ñôn vò 1-bit hay ñôn vò 4-bit, caùc caëp thanh ghi duøng nhö ñôn vò 8-bit. *Caùc bank thanh ghi laøm vieäc: Ñoái vôùi muïc ñích ñònh ñòa chæ ,vuøng thanh ghi ñòa chæ 4 bank thanh ghi - bank 0 , bank 1 ,bank 2 ,bank 3 .Moät trong caùc thanh ghi coù theå ñöôïc choïn nhö bank thanh ghi laøm vieäc bôûi leänh SMBn vaø ñaët traïng thaùi côø ERB. Toång quaùt bank 0 thanh ghi laøm vieäc ñöôïc duøng cho chöông trình chính ,bank 1 ,2 ,3 cho chöông trình phuïc vuï ngaét . *Caùc caëp thanh ghi laøm vieäc : Moãi bank thanh ñuôïc chia thaønh caùc thanh ghi con 4-bit ,laø A,Y,Z,W,H,L,E,X , coù theå chuùng ñöôïc duøng rieâng leõ leänh 4-bit, hay cuøng nhau nhö caëp thanh ghi ñeå taïo döõ lieäu 8-bit. Caùc teân caëp thanh ghi 8-bit trong moãi bank naøy laø EA , HL , WX , YZ , WL . Caùc thanh ghi A ,L , Z luoân luoân thaønh nibble thaáp khi thanh ghi ñònh ñòa chæ nhö caëp thanh ghi . *Thanh ghi laøm vieäc muïc ñích ñaëc bieät : - thanh ghi A duøng nhö thanh ghi tích luõy 4-bit - caëp thanhghi EA duøng nhö thanh ghi tích luõy 8-bit. -côø carry cuõng coù theå duøng nhö tích luõy 1-bit. -thanh ghi keùp WX ,WL , HL duøng nhö pointer döõ lieäu cho ñòa chæ giaùn tieáp. *Giôùi thieäu quaù trình xöû lyù nhieàu ngaét : Neáu nhieàu hôn 4 ngaét ñöôïc xöû lyù ñoàng thôøi taïi moät thôøi ñieåm ,band coù theå traùnh söï maát döõ lieäu ôû thanh ghi laøm vieäc bôûi vieäc söû duïng leänh PUSH RR ñeå löu noäi dung caùc thanh ghi vaøo stack tröôùc khi chöông tr ình con thöïc thi ôû bank thanh ghi töông töï .Khi chöông trình con thöïc thi xong , baïn coù theå ghi laïi noäi dung thanh ghi töø stack vaøo boä nhôù laøm vieäc nhôø leänh POP . *Hoaït ñoäng Stack: Stack pointer SP laø thanh ghi 8-bit ñòa chæ duøng ñeå truy xuaát Stack , moät vuøng cuûa boä nhôù döõ lieäu ñaët beân trong cho vieäc ghi taïm döõ lieäu hay ñia chæ. SP coù theå ñoïc ghi bôûi leänh ñieàu khieån 8-bit .Khi ñònh ñòa chæ SP, bit 0 luoân luoân phaûi xoùa veà 0. Coù 2 taùc vuï Stack cô baûn : -ghi vaøo ñænh stack (push ), ñoïc töø ñænh stack (pop) do SP luoân chæ vaøo döõ lieäu sau cuøng ñöôïc ghi vaøo stack. *Bit sequential carrier (BSC): BSC laø thanh ghi chung 16-bit noù coù theå ñöôïc duøng taïo 1-,4- vaø 8-bit RAM caùc leänh ñieàu khieån, RESET xoùa taát caû gía trò bít veà 0. Duøng BSC ,baïn coù theå xaùc ñònh caùc ñòa chæ tuaàn töï vaø nhöõng vò trí bit duøng ñònh ñòa chæ giaùn tieáp 1-bit (memb.@L).Trong caùch naøy chöông trình coù theå xöû lyù döõ lieäu 16-bit bôûi söï di chuyeån tuaàn töï vò trí bit vaø taêng hay giaûm gía trò cuûa thanh ghi L. 6 BSC Register Organization Name Address Bit 3 Bit 2 Bit 1 Bit 0 BSC0 FC0H BSC0.3 BSC0.2 BSC0.1 BSC0.0 BSC1 FC1H BSC1.3 BSC1.2 BSC1.1 BSC1.0 BSC2 FC2H BSC2.3 BSC2.2 BSC2.1 BSC2.0 BSC3 FC3H BSC3.3 BSC3.2 BSC3.1 BSC3.0 * Boä ñeám chöông trình (PC) : Boä ñeám chöông trình 13-bit (PC12-PC0) ghi ñòa chæ cho leänh tìm trong luùc thöïc thi chöông trình (2316 coù 14-bit) .Baát cöù khi naøo taùc vuï reset hay ngaét xaûy ra PC12 ñeán PC0 ñöôïc ñaët vaøo ñòa ch æ vectô. Thöôøng PC ñöôïc taêng bôïi soá byte cuûa leänh ñöôïc tìm thaáy .Ngoaïi tröø leänh REF 1-byte noù ñöôïc duøng leänh tham chieáu ñaõ ghi trong ROM * Töø traïng thaùi chöông trình (PSW): PSW laø 1 töø 8 bit noù xaùc ñònh traïng thaùi heä thoáng vaø traïng thaùi thöïc thi chöông t rình vaø noù xaùc ñònh moät quaù trình ngaét ñeå ghi laïi sau moät yeàu caàu ngaét ñaõ ñöôïc phuïc vuï. Caùc gía trò PSW ñöôïc aùnh xaï nhö sau: PSW (MSB) (LSB) FB0H IS1 IS0 EMB ERB FB1H C SC2 SC1 SC0 IS1,IS0 :côø traïng ngaét EMB,ERB : côø choïn bank boä nhôù bank thanh ghi SC2,SC1,SC0: côø ñieàu kieän nhaûy. C : côø carry. Program Memory Address Ranges (hình 1) ROM Area Function Address Ranges Area Size( in Byte) Vectô address area 0000H-000BH 12 General-purpose program 000CH-001FH 20 memory REF instruction look-up table 0020H-007FH 96 area General-purpose program 0080H-1FFFH(2308) 8064 (KS57C2308) memory 0080H-3FFFH(2316) 16256(KS57C2316) ROM Address Structure (hình 2) EMB ERB “0” PC12 PC11 PC10 PC9 PC8 PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 7 Caáu truùc ñòa chæ ROM 0000H RESET 0002H INTB/INT4 0004H INT0 0006H INT1 0008H INTS 000AH INTT0 000BH 0000H-000BH VECTOR ADDRESS AREA (12bytes) 000CH GENERAL-PURPOSE 001FH AREA (20 bytes) 0020H INSTRUCTION REFERENCE AREA 007FH (96 bytes) 0080H GENERAL-PURPOSE AREA (8.064 bytes 1FFFH 16.256 bytes) 3FFFH (hình 4) Ñònh ñòa chæ vaø toå chöùc boä nhôù döõ lieäu Address REGISTER AREAS Bank EMB SMB Value Value 000H-01FH working registers 020H-0FFH Stack and general-purpose 0 0,1 0 registers 100H-1DFH General-purpose registers 1 1 1 1E0H-1FFH LCD Data registers F80H-FFFH I/O -mapped harware 15 0,1 15 registers 8 Thanh ghi SP F80H SP3 SP2 SP1 “0” F81H SP7 SP6 SP5 SP4 9 CHÖÔNG 3 ADDRESSING MODES Côø EMB ñieàu khieån 2 mode ñònh ñòa chæ cho boä nhôù döõ lieäu . Khi côø EMB laø ‘1’ : Baïn coù theå xaùc ñònh ñòa chæ trong vuøng RAM . Khi côø EMB laø ‘0’ : Vuøng ñòa chæ cho pheùp trong RAM bò haïn cheá taïi nhöõng vò trí xaùc ñònh. Côø EMB laøm vieäc trong söï lieân quan ñeán leänh choïn bank boä nhôù SMBn , noù duøng ñeå choïn bank RAM 0,1,15. Vieäc ñaët SMB luoân luoân chöùa trong 4 bit cao cuûa 12 bit ñòa chæ RAM .Caùc caùch ñònh ñòa chæ tröïc tieáp gíaùn tieáp 1-,4- vaø 8-bit coù theå ñöôïc duøng .Nhöõng vò trí RAM rieâng leõ ñöôïc ñònh ñòa chæ ôû moïi thôøi ñieåm , ngoaïi tröø vieäc ñaët côø EMB hieän taïi. ÔÛ ñaây coù vaøi höôùng daãn ñeå chuù yù ñoái vôùi vieäc ñònh ñòa chæ boä nhôù döõ lieäu : -Khi baïn ñònh ñòa chæ nhöõng vò trí phaàn cöùng trong bank 15 , kyù hieäu ñoái vôùi thaønh phaàn phaàn cöùng ngoaïi vi aùnh xaï vaøo boä nhôù coù theå duøng nhö toaùn haïng ôû nôi cuûa vò trí ñòa chæ thaät. -Luoân luoân duøng ñòa chæ RAM laø moät soá chaün nhö toaùn haïng trong vieäc ñònh ñòa ch æ tröïc tieáp hay giaùn tieáp -Vôùi vieäc ñònh ñòa chæ tröïc tieáp , duøng ñòa chæ RAM nhö toaùn haïng leänh vôùi vieäc ñònh ñòa chæ giaùn tieáp , leänh xaùc ñònh 1 thanh ghi chöùa ñòa chæ toaùn haïng. *Gía trò khôûi taïo EMB vaø ERB : Caùc bit côø EMB vaø ERB ñöôïc ñaët töï ñoäng bôûi gía trò cuûa ñòa chæ vectô reset vaø ñòa chæ vectô ngaét .Khi reset ñöôïc taïo beân trong ,bit 7 cuûa boä nhôù chöông trình 000H ñöôïc ghi vaøo côø EMB ,khôûi taïo noù töï ñoäng . Khi moät ngaét vectô ñöôïc taïo , bit 7 cuûa ñòa chæ boä nhôù chöông trình ñöôïc ghi vaøo côø EMB .Khi ngaét vectô ñöôïc taïo , bit 7 baûng ñòa chæ vectô rieâng ñöôïc ghi vaøo EMB. Ñieàu naøy ñaët töï ñoäng traïng thaùi côø EMB cho chöong trình phuïc vuï ngaét . Khi ngaét ñöôïc phuïc vuï ,gía trò EMB ñöôïc ghi töï ñoäng vaøo stack vaø ghi laïi khi chöông ngaét ñaõ thöïc thi xong. ÔÛ luùc baét ñaàu chöông trình ,gía trò khôûi taïo côø EMB ERB cho moãi ngaét vectô phaûi ñöôïc ñaët bôûi vieäc duøng leänh VENT. * Ñaët bank boä nhôù : EMB = ‘1’ baïn coù theå ñònh bank boä nhôù döõ lieäu bôûi gía trò bank boä nhôù löïa choïn (0 , 1 , 15 ) duøng leänh 1- , 4- , 8-bit . Baïn coù theå duøng caû 2 mode ñòa chæ . EMB = ‘0’ vuøng ñòa chæ ñöôïc ñònh nghóa ñoäc laäp vôùi gía trò SMB, vaø bò giôùi haïn xaùc ñònh vò trí phuï thuoäc khi mode ñòa chæ tröïc tieáp hay giaùn tieáp ñöôïc duøn g . *Thanh ghi choïn bank : SB ñöôïc duøng khôûi taïo bank boä nhôù vaø bank thanh ghi thanh ghi 8 - bit goàm thanh ghi choïn bank 4-bit vaø thanh ghi choïn bank boä nhôù 4-bit Thanh ghi SB SMB (F83H) | SRB (F82H) SMB 3 SMB 2 SMB 1 SMB 0 0 0 SRB 1 SRB 0 *Leänh choïn bank thanh ghi : 10 Gía trò SRB xaùc ñònh bank thanh ghi naøo ñöôïc duøng nhö bank thanh ghi laøm vieäc ,gía trò SRB ñöôïc ñaët bôûi leänh ‘SRBn’ , khi n= 0, 1, 2 , 3. *Leänh choïn bank boä nhôù : Ñeå choïn 1 trong 4 bank boä nhôù döõ lieäu , baïn phaûi thöïc hieän 1 leänh SMBn xaùc ñònh bôûi soá bank boä nhôù baïn muoán choïn ( 0 , 1 , 15 ) *Xaùc ñònh ñòa chæ tröïc tieáp hay giaùn tieáp : Döõ lieäu 1- ,4- ,8-bit ñaõ ghi trong nhöõng vò trí boä nhôù döõ lieäu coù theå ñöôïc xaùc ñònh tröïc tieáp duøng thanh ghi xaùc ñònh hay ñòa chæ bit nhö toaùn haïng leänh . Ñòa chæ giaùn tieáp xaùc ñònh 1 vò trí boä nhôù maø noäi dung chöùa laø ñia chæ tröïc tieáp coù lieân quan .Leänh KS57 cho saün ñòa chæ giaùn tieáp 1- , 4- , 8-bit . Ñoái vieäc ñònh ñòa chæ giaùn tieáp 8-bit ,moät ñòa chæ RAM laø soá chaün phaûi luoân ñöôïc duøng nhö toaùn haïng leänh . *Ñònh ñòa chæ 1-bit : Baûng 3-2( 1-bit direct and indirect RAM addressing) *Ñònh ñòa chæ 4-bit : Baûng 3-3( 4-bit direct and indirect RAM addressing) *Ñònh ñòa chæ 8-bit : Baûng 3-4( 8-bit direct and indirect RAM addressing) 11 CHÖÔNG 4 MEMORY MAP Chöông trình coù saün ñieàu khieån ngoaïi vi , ñòa chæ I/O cho ngoaïi vi ñöôïc aùnh xaï boä nhôù ôû bank 15 cuûa RAM .AÙnh xaï boä nhôù cho pheùp baïn duøng moät kyù hieäu nhö toaùn haïng leänh ôû nôi cuûa vò trí boä nhôù xaùc ñònh . Truy xuaát ñeán bank 15 ñöôïc ñieàu khieån bôûi leänh SMB vaø bôûi ñaët EMB Neáu côø EMB laø ‘0’ bank coù theå ñöôïc ñònh ñòa chæ duøng ñòa chæ tröïc tieáp ,baát chaáp gía trò SMB hieän taïi . *Aùnh xaï I/O cho caùc thanh ghi phaàn cöùng : Baûng 4-1 cho bieát chi tieát thoâng tin veà aùnh xaï I/O cho phaàn cöùng ngoaïi vi trong bank 15 . Duøng aùnh xaï I/O nhö moät nguoàn tham chieáu nhanh khi vieát chöông trình öùng duïng . Aùnh xaï I/O cho baïn thoâng tin sau: -Ñòa chæ thanh ghi -Teân thanh ghi ( kyù hieäu cho ñònh ñòa chæ chöông trình ) -Caùc gía trò bit ( caû hai dòa chæ coù theå vaø khoâng ñöôïc taïo) -Chò ñoïc , chæ ghi , hay ñoïc ghi ñòa chæ cho pheùp. -Taïo döõ lieäu 1-bit,4-bit,8-bit rieâng bieät. Baûng 4-1 I/O Map for Memory Bank 15. -35 thanh ghi ñieàu khieån -8 thanh ghi port *Moâ taû thanh ghi : Ngöôøi laäp trình söû duïng phaàn naøy nhö nguoàn tham chieáu nhanh khi vieát caùc chöông tr ình öùng duïng . * Moâ taû caùc thanh ghi : -BMOD : Thanh ghi cheá ñoä ñònh thôøi cô baûn (4-bit) -CLMOD : Thanh ghi cheá ñoä xuaát clock (4-bit) -IE0,1,IRQ0,1 : Thanh ghi chöùa caùc côø yeâu caàu ngaét vaø cho pheùp ngaét IE1,IE0,IRQ1,IRQ0 (4 -bit) . - IE2 , IRQ2 : Thanh ghi chöùa caùc côø yeâu caàu ngaét vaø cho pheùp ngaét IE2 , IRQ2 (4-bit) . - IE4 , IRQ4 , IEB , IRQB : Thanh ghi chöùa caùc côø yeâu caàu ngaét vaø cho pheùp ngaét IE4 , IRQ4 , IEB , IRQB (4-bit) . - IES , IRQS : Thanh ghi chöùa caùc côø yeâu caàu ngaét vaø cho pheùp ngaét IES , IRQS (4-bit) . - IET0 , IRQT0 : Thanh ghi chöùa caùc côø yeâu caàu ngaét vaø cho pheùp ngaét IET0 , IRQT0 (ngaét INTT0) (4-bit) . - IEW , IRQW : Thanh ghi chöùa caùc côø yeâu caàu ngaét vaø cho pheùp ngaét IEW , IRQW ( ngaét INTW ) (4-bit). -IMOD0 : Thanh ghi mode ngaét ngoaïi (INT0) (4-bit) -IMOD1 : Thanh ghi mode ngaét ngoaïi (INT1) (4-bit) -IMOD2 : Thanh ghi mode ngaét ngoaïi (INT2) (4-bit) -IPR : Thanh ghi öu tieân ngaét (4-bit) -LCON : Thanh ghi ñieàu khieån xuaát LCD (4-bit) 12 -LMOD : Thanh ghi mode LCD (8-bit) -PCON : Thnah ghi ñieàu khieån nguoàn (4-bit) -PMG1 : Thanh ghi chöùa caùc côø mode I/O port (Nhoùm 1 :ports 3 vaø ports 6) (8-bit) -PMG2 : Thanh ghi chöùa caùc côø mode I/O port (Nhoùm 2 :ports 2 , 4 , 5 vaø ports 7) (8 -bit) -PNE : Thanh ghi mode oáng môû n keânh (8-bit) -PSW : Töø traïng thaùi chöông trình (8-bit) . -PUMOD : Thanh ghi mode trôû khaùng pull-up (8-bit) -SCMOD : Thanh ghi ñieàu khieån mode clock heä thoáng (4-bit). -SMOD : Thanh ghi mode I/O lieân tieáp (8-bit) -TMOD0 : Thanh ghi mode boä ñeám 0 boä ñònh thôøi (8-bit) -TOE : Thanh ghi cho pheùp xuaát ñònh thôøi (4-bit) -WDFLAG : Thanh ghi côø xoùa boä ñeám chöông trình boä ñònh thôøi theo doõi (4-bit) . -WDMOD : Thanh ghi mode ñònh thôøi theo doõi (8-bit) -WMOD : Thanh ghi mode ñònh thôøi ñoàng hoà (8-bit) 13 CHÖÔNG 5 SAM47 INSTRUCTION SET ( 50 leänh) Toång quaùt : Taäp leänh SAM47 goàm nhöõng leänh 1-bit,4-bit , 8-bit cho vieäc taïo döõ lieäu , taùc vuï luaän lyù tính toùan , ñieàu khieån chöông trình vaø ñieàu khieån CPU. Nhöõng leänh I/O cho nhöõng thieát bò phaàn cöùng ngoaïi vi laøm cho vieäc söû duïng linh hoaït deã duøng . Teân phaàn cöùng coù theå ñöôïc thay theá nhö toaùn haïng leänh ôû nôi ñòa ch æ thoâng thöôøng .Nhöõng ñaëc tính quan troïng cuûa taäp leänh SAM47 goàm : -Söï tham khaûo 1-byte cuûa nhöõng leänh daøi (REF ) -Söï giaûm nhöõng leänh dö thuøa ( chuoãi thöïc thi) -Ñaëc tröng nhaûy cho nhöõng leänh ADC vaø SBC . nhöõng toaùn haïng leänh laøm cho phuø hôïp daïng toaùn haïng ñaõ ñònh nghóa ñoái vôùi moãi leänh . Nhöõng leänh rieâng leõ coù nhieàu daïng toaùn haïng Nhöõng gía trò ñònh nghóa tröôùc ñaây hay caùc nhaõn coù theå ñöôïc duøng nhö toaùn haïng leänh khi ñònh ñòa ch æ döõ lieäu töùc thôøi . Nhieàu kyù hieäu cho nhöõng thanh ghi xaùc ñònh vaø caùc côø cuõng coù theà thay theá nhö caùc nhaõn cho taùc vuï nhö DA ,mema , memb ,b ,v.v...Caùc nhaõn leänh duøng ghi chöông tr ình ñôn giaûn cao nhaát vaø thöïc hieän töøng böôùc caùc task Nhöõng ñaëc ñieåm taäp leänh : -Vuøng leänh tham khaûo -Giaûm dö thöøa leänh -Taïo bit linh ñoäng -Ñieàu kieän nhaûy leänh ADC vaø SBC *Vuøng tham khaûo leänh : Söû duïng leänh 1-byte REF ,baïn coù theå tham khaûo nhöõng leänh ñaõ ghi trong ñòa ch æ 0020H - 007FH cuûa boä nhôù chöông trình ,ñòa chæ baét ñaàu phaûi luoân ñöôïc bieåu thò baèng soá chaün . Leänh 3-byte nhö JP hay CALL cuõng coù theå tham khaûo bôûi leänh REF PC khoâng ñöôïc taêng khi leänh REF ñöôïc thöïc thi , sau khi thöïc thi xong leänh REF PC baét ña àu leänh ngay sau leänh REF . Nhôø REF coù theå giaûm toång soá caùc böôùc chöông trình Leänh REF coù theå duøng theo 3 caùch sau : - Duøng leänh 1-byte REF ñeå thöïc thi leänh 2-byte hay leänh 1-byte . - Reõ nhaùnh ñeán nhieàu vò trí bôûi söï tham khaûo ñòa chæ reõ nhaùnh ñieàu naøy ñöôïc ghi ôû baûng quan saùt. -Goïi chöông trình con taïi nhöõng vò trí bôûi söï tham chieáu ñòa chæ goïi ñöôïc ghi ôû baûng quan saùt. Baûng 5-1 Toå hôïp leänh 1-byte töông öùng cho REF quan saùt *Söï giaûm dö thöøa leänh 14 Khi dö thöøa LD A, #im vaø LD EA,#imm ñöôïc duøng lieân tuïc trong söï tuaàn töï chöông trình ,chæ leänh ñaàu ñöôïc thöïc thi ,leänh dö thöøa theo sau bò lôø ñi chuùng bò coi nhö 1 leänh NOP . Khi leänh LD HL, #imm ñöôïc duøng lieân tuïc nhöõng leänh dö thöøa cuõng bò lôø ñi . *Taïo bit linh hoaït : Theâm vaøo nhöõng leänh taïo bit töï nhieân nhö set vaø clear ,taäp leänh SAM47 cuõng coù theå daïng kieåm tra bit,truyeàn bit , taùc vuï luaän lyù bit Nhöõng bit cuõng coù theå ñöôïc taïo vaø xaùc ñònh ñòa chæ bôûi xaùc ñònh mode ñòa chæ .Coù 3 caùch xaùc ñònh ñòa chæ bit cho pheùp : -mema.b -memb.@L -@H + DA.b Baûng 5-2 nhöõng tham soá vaø mode ñònh ñòa chæ bit *Leänh coù ñieàu kieän nhaûy : Nhöõng leänh ‘ADC A,@HL ‘ vaø ‘SBC A,@HL ‘ coù theå taïo ra tín hieäu nhaûy , vaø set hay clear côø nhôù , khi chuùng ñöôïc thöïc thi ôû söï toå hôïp vôùi leänh ‘ADS A,#im’. Neáu 1 leänh ‘ADS A,#im’ theo sau ngay moät leänh ‘ ADC A,@HL’ hay ‘SBC A,@HL ‘ trong chöông trình tuaàn töï , leänh ADS khoâng nhaûy leänh theo sau ADS , ngay khi neáu coù nhieäm vuï nhaûy , neáu ba èng caùch naøo ñoù moät leänh ‘ADC A,@HL ‘hay ‘SBC A,@HL ‘ ñöôïc theo sau ngay bôûi leänh ‘ADS A,#im’ ,ADC (hay SBC) nhaûy khi traøng ( hay vay möôïn ) ñeán ngay sau ADS , vaø chöông trình thöïc thi tieáp tuïc . Baûng 5.3 Ñieàu kieän nhaûy cho nhöõng leänh ADC SBC *Moâ taû leänh : Caùc phaàn thoâng tin cuûa daïng moâ taû leänh nhö sau : -Teân leänh ( mnemonic) -Teân leänh ñaày ñuû -Daïng ñích/nguoàn cuûa toaùn haïng leänh -Toång quaùt taùc vuï -Moâ taû daïng text söï thöïc thi cuûa leänh -Maõ leänh chung -Caùc thí duï chæ caùch leänh ñöoöïc duøng. *ADC : Coäng vôùi carry ADC dst,src Toaùn haïng src cuøng vôùi côø nhôù ñöôïc coäng vôùi toaùn haïng ñích vaø toång ñöôïc ghi ôû dst ,noäi dung src khoâng ñoåi .Neáu coù traøng töø bit MSB cuûa keát quaû côø carry bò set ;ngöôïc laïi côø carry bò clear. Neáu ‘ADC A,@HL’ ñöôïc theo sau bôûi ‘ADS A,#im’ ,ADC nhaûy qua leänh leänh ADS neáu xaûy ra traøng .Neáu khoâng traøng leänh ADS ñöôïc thöïc thi bình thöôøng . *ADS : Coäng vaø nhaûy treân söï traøng 15 ADS dst,src src ñöôïc coäng vaøo dst toång caát ôû dst ,src khoâng ñoåi. Neáu coù traøng ôû MSB cuûa keát quaû tín hieäu nhaûy ñöôïc taïo vieäc nhaûy ñöôïc thöïc thi nhöng gía trò côø carry khoâng aûnh höôûng. Neáu ‘ADS A,#im ‘ theo sau ‘ADC A,@HL ‘ trong chöông trình ,ADC nhaûy qua ADS neáu xaûy ra traøng.Neáu khoâng traøng ,ADS ñöôïc thöïc thi töï nhieân . Neáu söï traøng xaûy ra sau leänh ADS leänh keá khoâng bò nhaûy. *AND : AND logic AND dst,src src and logic vôùi dst keát quaû ghi ôû dst , src khoâng bò aûnh höôûng. *Söï giaûm dö thöøa leänh Khi dö thöøa LD A, #im vaø LD EA,#imm ñöôïc duøng lieân tuïc trong söï tuaàn töï chöông trình ,chæ leänh ñaàu ñöôïc thöïc thi ,leänh dö thöøa theo sau bò lôø ñi chuùng bò coi nhö 1 leänh NOP . Khi leänh LD HL, #imm ñöôïc duøng lieân tuïc nhöõng leänh dö thöøa cuõng bò lôø ñi . *Taïo bit linh hoaït : Theâm vaøo nhöõng leänh taïo bit töï nhieân nhö set vaø clear ,taäp leänh SAM47 cuõng coù theå daïng kieåm tra bit ,truyeàn bit , taùc vuï luaän lyù bit Nhöõng bit cuõng coù theå ñöôïc taïo vaø xaùc ñònh ñòa chæ bôûi xaùc ñònh mode ñòa chæ .Coù 3 caùch xaùc ñònh ñòa chæ bit cho pheùp : -mema.b -memb.@L -@H + DA.b Baûng 5-2 nhöõng tham soá vaø mode ñònh ñòa chæ bit *Leänh coù ñieàu kieän nhaûy : Nhöõng leänh ‘ADC A,@HL ‘ vaø ‘SBC A,@HL ‘ coù theå taïo ra tín hieäu nhaûy , vaø set hay clear côø nhôù , khi chuùng ñöôïc thöïc thi ôû söï toå hôïp vôùi leänh ‘ADS A,#im’. Neáu 1 leänh ‘ADS A,#im’ theo sau ngay moät leänh ‘ ADC A,@HL’ hay ‘SBC A,@HL ‘ trong chöông trình tuaàn töï , leänh ADS khoâng nhaûy leänh theo sau ADS , ngay khi neáu coù nhieäm vuï nhaûy , neáu baèng caùch naøo ñoù moät leänh ‘ADC A,@HL ‘hay ‘SBC A,@HL ‘ ñöôïc theo sau ngay bôûi leänh ‘ADS A,#im’ ,ADC (hay SBC ) nhaûy khi traøng ( hay vai möôïn ) ñeán ngay sau ADS , vaø chöông trình thöïc thi tieáp tuïc . Baûng 5.3 Ñieàu kieän nhaûy cho nhöõng leänh ADC SBC *Moâ taû leänh : Caùc phaàn thoâng tin cuûa daïng moâ taû leänh nhö sau : -Teân leänh ( mnemonic) -Teân leänh ñaày ñuû -Daïng ñích/nguoàn cuûa toaùn haïng leänh -Toång quaùt taùc vuï -Moâ taû daïng text söï thöïc thi cuûa leänh -Maõ leänh chung -Caùc thí duï chæ caùch leänh ñöoöïc duøng. 16 *ADC : Coäng vôùi carry ADC dst,src Toaùn haïng src cuøng vôùi côø nhôù ñöôïc coäng vôùi toaùn haïng ñích vaø toång ñöôïc ghi ôû dst ,noäi dung src khoâng ñoåi .Neáu coù traøng töø bit MSB cuûa keát quaû côø carry bò set ;ngöôïc laïi côø carry bò clear. Neáu ‘ADC A,@HL’ ñöôïc theo sau bôûi ‘ADS A,#im’ ,ADC nhaûy qua leänh leänh ADS neáu xaûy ra traøng .Neáu khoâng traøng leänh ADS ñöôïc thöïc thi b ình thöôøng . *ADS : Coäng vaø nhaûy treân söï traøng ADS dst,src src ñöôïc coäng vaøo dst toång caát ôû dst ,src khoâng ñoåi. Neáu coù traøng ôû MSB cuûa keát quaû tín hieäu nhaûy ñöôïc taïo vieäc nhaûy ñöôïc thöïc thi nhöng gía trò côø carry khoâng aûnh höôûng. Neáu ‘ADS A,#im ‘ theo sau ‘ADC A,@HL ‘ trong chöông trình ,ADC nhaûy qua ADS neáu xaûy ra traøng.Neáu khoâng traøng ,ADS ñöôïc thöïc thi töï nhieân . Neáu söï traøng xaûy ra sau leänh ADS leänh keá khoâng bò nhaûy. *AND : AND logic AND dst,src src and logic vôùi dst keát quaû ghi ôû dst , src khoâng bò aûnh höôûng. *BAND : And logic bit BAND C,src.b Bit xaùc ñònh ôû src ñöôïc and logic vôùi gía trò côø nhôù . Neáu gía trò boolean cuûa bit nguoàn laø ‘0’ , côø C bò xoùa veà 0 ;ngöôïc laïi ñaët côø hieän taïi khoâng aûnh höôûng . scr khoâng ñoåi. *BIT R : Reset bit BITR dst.b Xoùa veà ‘0’ bit xaùc ñònh trong dst .Bit khaùc trong dst khoâng aûnh höôûng. *BITS : Bit Set BITS dst.b set bit xaùc ñònh trong dst ,BITS coù theå nhieàu bit ñöôïc duøng ñònh ñòa chæ mode tröïc tieáp hay gíaùn tieáp. *BOR : Bit logic Or BOR C,src.b Bit xaùc ñònh ôû nguoàn ñöôïc or vôùi gía trò C ,src khoâng ñoåi *BTSF : Bit kieåm tra nhaûy khi sai BTSF dst.b Bit xaùc ñònh ôû dst ñöôïc test .Neáu laø ‘0’ nhaûy qua leänh sau noù Ngöôïc laïi leänh sau noù ñöôïc thöïc thi.Gía trò bit dst khoâng bò aûnh höôûng. *BTST : Bit kieåm tra nhaûy khi ñuùng BTSF dst.b Bit xaùc ñònh ôû dst ñöôïc test .Neáu laø ‘1’ nhaûy qua leänh sau noù Ngöôïc laïi leänh sau noù ñöôïc thöïc thi.Gía trò bit dst khoâng bò aûnh höôûng. *BTSTZ : Bit kieåm tra nhaûy khi sai BTSTZ dst.b 17 Bit xaùc ñònh ôû dst ñöôïc test .Neáu laø ‘1’ nhaûy qua leänh sau noù Ngöôïc laïi leänh sau noù ñöôïc thöïc thi.Gía trò bit dst bò xoùa. *BXOR Bit xor BXOR C,src.b Bit xaùc ñònh ôû src xor vôùi gía trò C . Keát quaû ghi ôû C. src khoâng aûnh höôûng . *CALL Thuû tuïc goïi CALL dst CALL goïi chöông trình con coù ñòa chæ ôû dst. *CALLS Thuû tuïc goïi ( gaàn) CALLS dst CALLS goïi chöông trình con coù ñòa chæ ôû dst.Chöông trình con phaûi ôû trong khoái 2K byte (0000H-07FFH) cuûa boä nhôù chöông trình. *CCF Buø côø C CCF Côø C bò laáy buø. *COM Buø thanh ghi A COM A Gía trò A bò laáy buø *CPSE So saùnh vaø nhaûy neáu baèng CPSE dst,src So saùnh dst vôùi src vaø nhaûy neáu baèng . dst vaø src khoâng ñoåi. *DECS Giaûm vaø nhaûy khi vay möôïn DECS dst dst bò giaûm ‘1’ . Gía trò ñaàu laø ‘0’ seõ bò xuoáng 0FH .Neáu coù vay möôïn nhaûy xaûy ra ,gía trò côø khoâng ñoåi. *DI Caám ngaét DI Bit 3 cuûa thanh ghi öu tieõn ngaét IPR (IME) bò xoùa veà ‘0’ .Caám taát caû ngaét .Nhöõng ngaét coù theå ñaët khi caùc ngoõ traïng thaùi ngaét rieâng cuûa chuùng , nhöng CPU seõ khoâng phuïc vuï chuùng. *EI Cho pheùp ngaét EI Bit 3 cuûa thanh ghi öu tieõn ngaét IPR (IME) bò xoùa veà ‘1’ . Ñieàu naøy cho pheùp taát caû ngaét ñöôïc phuïc vuï khi chuùng xaûy ra. *IDLE Taùc vuï nghæ IDLE IDLE gaây ra ngöøng clock CPU trong khi clock heä thoáng tieáp tuïc bôûi ñaët bit 2 cuûa thanh ghi ñieàu khieån nguoàn (PCON) .Sau leänh IDLE ñaõ thöïc thi phaàn cöùng ngoaïi vi coøn hoaït ñoäng. *INCS Taêng vaø nhaûy khi coù carry INCS dst dst bò taêng ‘1’ . Gía trò ñaàu laø ‘0FH’ seõ bò traøng 00H .Neáu coù carry leänh keá bò nhaûy , gía trò côø khoâng ñoåi. *IRET Return töø ngaét 18 IRET IRET ñöôïc söû duïng taïi phaàn cuoái cuûa chöông trình phuïc vuï ngaét .Noù POP gía trò PC caàn thieát töø Stack vaø ghi chuùng ñeán boä ñeám chöông trình . Pointer stack ñöôïc tang 6 vaø PSW coù caùc bit EMB vaø ERB cuõng ñöôïc töï ñoäng ghi vaøo gía trò cuûa chuùng tröôùc khi ngaét . Chöông trình tieáp tuïc leänh sau ñieåm taïi yeâu caàu ngaét . *JP Nhaûy JP dst Jump gaây ra reõ nhaùnh khoâng ñieàu kieän ñeán ñòa chæ xaùc ñònh bôûi ñaët noäi dung cuûa boä ñeám chöông trình vôùi ñòa chæ xaùc ñònh trong toaùn haïng ñích . dst coù theå laø moïi nôi trong khoaûng boä nhôù chöông tr ình 16 K byte . *JPS Nhaûy (gaàn ) JPS dst Jump gaàn gaây ra reõ nhaùnh khoâng ñieàu kieän ñeán ñòa chæ xaùc ñònh bôûi khoaûng boä nhôù chöông trình 4K byte .Bit 0 - 11 PC ñöôïc vôùi ñòa chæ xaùc ñònh tröïc tieáp .Ñòa chæ ñích cho JPS xaùc ñònh keát hôïp bôûi nhaõn hay ñòa chæ thoâng thöôøng trong boä nhôù. *JR Jum Relative ( Very short) JR dst JR gaây ra ñòa chæ lieân heä ñeå theâm vaøo boä ñeám chöông trình qua ñieàu khieån ñeán leänh maø ñòa chæ ñang ôû PC .Khoaûng ñòa chæ taïi -15 ñeán +16 gía trò PC hieän taïi .Ñòa chæ ñoái vôùi JR naøy xaùc ñònh tôùi keát hôïp bôûi 1 nhaõn , 1 ñòa chæ thoâng thöôøng bôûi döõ lieäu töùc thôøi duøng kyù hieäu ( +) (-) *LD Load LD dst,src Noäi dung src ñöôïc naïp vaøo dst ,noäi dung src khoâng ñoåi. Neáu 1 leänh nhö ‘LD A,#im ‘ hay ‘LD HL,#imm ‘ ñöôïc vieát hôn hai laàn keá tieáp ,chæ LD ñaàu ñöôïc thöïc thi ;nhöõng leänh töông töï khaùc theo sau ngay LD ñaàu seõ ñöôïc ñoái xöû nhö leänh NOP . *LDB Load Bit LDB dst,src.b LDB dst.b,src Bieán boolean xaùc ñònh bôûi toaùn haïnh thöù nhaát hay thöù nh ì ñöïôc coppy vaøo vò trí xaùc ñònh bôûi toaùn haïng thöù nhì hay thöù nhaát 1 trong 2 toaùn haïng phaûi laø côø C , coøn toaùn haïng kia coù theå laø nhöõng bit ñòa ch æ xaùc ñònh tröïc tieáp hay giaùn tieáp . src khoâng ñoåi. *LDC Load code byte LDC dst,src Leänh naøy load byte töø boä nhôù chöông trình sang thanh ghi tích luõy keùo daøi (EA) .Ñòa chæ cuûa byte tìm thaáy laø 5 gía trò bit cao nhaát trong boä ñeám chöông trình vaø noäi dung cuûa thanh ghi laøm vieäc 8-bit (WX hay EA). Noäi dung nguoàn khoâng ñoåi. *LDD Load boä nhôù döõ lieäu vaø giaûm LDD dst Noäi dung cuûa vò trí boä nhôù döõ lieäu ñöôïc load vaøo A , vaø noäi dung cuûa L ñöôïc giaûm ñi 1 .Neáu coù vay möôïn xaûy ra leänh keá tieáp bò nhaûy .noäi dung boä nhôù döõ lieäu vaø côø C khoâng bò aûnh höôûng. *LDI Load boä nhôù döõ lieäu vaø taêng LDI dst 19 Noäi dung cuûa vò trí boä nhôù döõ lieäu ñöôïc load vaøo A , vaø noäi dung cuûa L ñöôïc taêng ñi 1 .Neáu coù traøng xaûy ra leänh keá tieáp bò nhaûy .noä i dung boä nhôù döõ lieäu vaø côø C khoâng bò aûnh höôûng. *NOP Taùc vuï NOP NOP Ngöng hoaït ñoäng ñöôïc ñònh daïng bôûi leänh NOP laø 1 kieåu duøng ñeå delay . *OR Logic or OR dst,src Toaùn haïng src ñöôïc OR logic vôùi toaùn haïng dst ,keát quaû ñöôïc ghi ôû dst , noäi dung src khoâng bò ñoåi. *POP Pop töø Stack POP dst Noäi dung cuûa vò trí RAM ñaõ ñònh ñòa chæ bôûi PS ñöôïc ñoïc ,vaø SP ñöôïc taêng 2 .Gía trò ñoïc ñöôïc truyeàn ñeán bieán xaùc ñònh bôûi toaùn haïng dst. *PUSH Push vaøo treân Stack PUSH src SP bò giaûm 2 vaø noäi dung toaùn haïng ñöôïc coppy sang vò trí RAM xaùc ñònh bôûi SP ; baèng caùch aáy theâm phaàn töû môùi vaøo ñænh stack. *RCF Reset côø C RCF Gæa söû C =‘1’ ,thì RCF xoùa C veà ‘0’ *REF Leänh tham khaûo Ref dst REF ñöôïc duøng ñeå ghi laïi daïng 1 byte , tuøy leänh 2-byte,3-byte hay 2 leänh 1-byte ñaõ ghi trong vuøng tham chieáu leänh trong boä nhôù chöông trình . REF giaûm soá truy xuaát boä nhôù chöông trình cho chöông trình . *RET Trôû veà töø chöông trình con RET RET pop gía trò PC hoaøn taát töø stack taêng SP bôûi 6 .Chöông trình thöïc thi tieáp tuïc töø ñòa chæ keát quaû . *RRC Quay phaûi A qua côø C RRC A 4-bit ôû thanh ghi A vaø C cuøng quay 1 bit sang phaûi *SBC Tröø vôùi C SBC dst,src SBC tröø src vaø côø C töø dst ,löu keát quaû ôû dst .SBC set côø C neáu m öôïn cho bit MSB ngöôïc laïi noù xoùa côø C.noäi dung nguoàn khoâng ñoåi. *SBS Tröø coù nhaûy khi vay möôïn SBS dst,src src bò tröø töø dst vaø keát quaû ñöôïc ghi ôû dst .noäi dung src khoâng ñoåi . Skip ñöôïc thöïc thi neáu coù vay möôïn ,gía trò côø C khoâng ñoåi. *SCF Set côø C SCF set côø C ‘1’ , ngoaïi tröø gía trò cuûa noù tröôùc ñoù. *SMB Choïn bank boä nhôù SMB n 20
DMCA.com Protection Status Copyright by webtailieu.net