Microcontrolere MCS-51: model de program, structură, comenzi. Microcontrolere din familia mcs51 Principalele caracteristici ale produsului

Microcontrolere MCS-51: model de program, structură, comenzi. Microcontrolere din familia mcs51 Principalele caracteristici ale produsului

Versiunea de bază MCS–51 Informații scurte. Microcontrolerele de astăzi pe 8 biți (MCU) generează astfel de resurse de control în modul în timp real, care a fost exploatat anterior de layout-uri scumpe bogate în cristale sub formă de plăci microEOM mari și, de asemenea:

● există o capacitate de memorie suficientă, parte fizică și logică a memoriei programului și memorie de date (arhitectura Harvard) și sistem de comandă, orientate către diferiți algoritmi de control;

● include toate dispozitivele (procesor, ROM, RAM, porturi I/O, sistem de întrerupere, metode de procesare a informațiilor pe biți și altele), implementări necesare unei configurații minime ale sistemului de control cu ​​microprocesor. La aniversarea a 70 de ani a secolului trecut compania Intel Lansarea industrială a familiei de microcontrolere MCS-48 pe 8 biți, care este echipată cu o serie de caracteristici importante (capacitate, sistem de comandă, set de blocuri funcționale de bază etc.), a fost dezvoltată și stăpânită. Versiunea de bază a acestei familii include:

● procesor pe 8 biți;

● memorie internă de program (1/2/4K octeți);

● memorie internă de date (64/128/256 octeți);

● până la 27 de linii I/O interne și 16 externe;

● un timer de 8 biți;

● întreruperea unui sistem cu un singur nivel cu două unități de alimentare. În 1980 Aceeași companie a dezvoltat o nouă familie de microcontrolere pe opt biți MCS-51, care este combinată cu arhitectura familiei MCS-48, dar are și capacități mai largi.

Arhitectura familiei MCS-51 a devenit unul dintre standardele pentru MK-urile pe 8 biți. Prin urmare, scopul dezvoltării familiei MK este că a existat o extindere largă în sistemele de control relativ simple.

Pentru familia MCS-51, există diverse metode de pregătire a programelor (compilatoare, simulatoare hardware-software etc.), precum și un număr mare de biblioteci de subprograme standard. Stocul familiei include diverse modificări ale microcircuitelor (versiuni de cristal) ale microcontrolerelor. Articolele din această secțiune revizuiesc pe scurt versiunea de bază a microcontrolerelor din familia MCS-51 (microcircuitul 8051 este similar cu KP1816BE51), care este cel mai simplu din punct de vedere structural și funcțional. Arată roz.

Seria mai nouă de microcircuite, deși rămânând similară cu versiunea de bază, se diferențiază de aceasta prin tehnologia de producție îmbunătățită, parametrii electrici, caracteristicile hardware suplimentare și capacitățile funcționale. Următoarele statistici sunt atribuite caracteristicilor structurale și funcționale ale modificărilor actuale ale microcircuitelor din familia MCS-51.
Diagrama bloc MCS-51 a fost ajustată. Pentru depozitul MK, diagrama structurală prezentată în Fig. 7.1.1, includ:

● CPU procesor central pe 8 biți, care combină ALU, bucatarie incorporata UU adresa ta formovacha F;

● Masca ROM cu o capacitate de 4K bytes pentru salvarea programelor;

● RAM are o capacitate de 128 de octeți pentru a salva date;

● că porturile P0–P3 sunt programate pentru introducerea și afișarea informațiilor;

● bloc de interfață serială PSU pentru schimbul de informații de la dispozitive externe printr-o linie dublă;

● bloc de temporizatoare/dozatoare BT/S pentru a suporta modul în timp real;

● bloc de întrerupere a sursei de alimentare pentru organizarea întreruperii programelor configurate. Ce faci? rezident parte a microcontrolerului, plasată central pe cristal. Depozitul MK include un număr mare de registre care sunt conectate la alte blocuri funcționale și nu sunt prezentate pe diagramă.

De asemenea, diagrama nu arată coloana de control. Schimbul bidirecțional de informații între blocuri are loc în spatele unui interior de 8 biți magistralele de date SD-8.

În spatele pe 16 biți intern adrese de autobuzША-16 este format în CPU; adresele sunt afișate în PZP (12 cifre de adresă) și în OZP (8 cifre mai tinere ale adresei).

Când memoria externă este îndepărtată, portul P0 afișează 8 biți de ordin inferior ai adresei și portul P2 - 3 și 8 biți de ordine superioară.

Pentru o extindere logică a interfeței, funcțiile porturilor de linie sunt combinate. fundul de iac din fig. 7.1.1 linia punctată arată linia către portul P3 care ar trebui conectat alternativă Funcțiile de transmisie a semnalului care sunt efectuate vor fi discutate mai jos. Pentru a crea un generator de ceas intern, un rezonator cu cuarț și doi condensatori sunt conectați la pinii de microcircuit ai MK (Fig. 7.1.1). În loc de generatorul de ceas intern pentru sincronizare, puteți folosi un oscilator extern. Denumirea mai grafică a microcircuitelor MK este prezentată în Fig. 7.1.2, scopul vizat al simbolurilor este în tabel. 7.1.1. Să aruncăm o privire la blocurile funcționale ale MK și la principiul funcționării acestora. Dispozitive aritmetico-logice. Dispozitiv aritmetico-logic pentru determinarea operațiilor aritmetice (inclusiv înmulțirea și împărțirea) și logice pe operanzi de opt biți, precum și operații de adunare logică, zero, setare etc. Schema bloc a ALU este prezentată în Fig. 7.1.3.

Intră în depozitul ALU

● paralel de opt biți sumator Tip combinațional SM cu o purtare ulterioară, care separă operațiile aritmetice (adunare și înlocuire) și logice (adunare, înmulțire, ambiguitate și identitate);

baterie A, va asigura funcțiile registrului aritmetic principal;

Inregistreaza-teÎn, ceea ce este utilizat pentru implementarea operației de înmulțire și subsecțiune ca registru superoperator suplimentar, ale cărui funcții sunt atribuite de corespondent;

registru(software nu este disponibil) economie de timpРВХ1, РВХ2, destinate captării și salvării operanzilor pentru ora operației finale;

● ROM constante ROM care salvează codul corect pentru furnizarea de date cu două zecimale, codul masca pentru operațiuni pe biți și codul pentru constante;

registrul cuvântului voi deveni un program PSW, care fixează starea LSA după operațiunea finalizată. In masa 7.1.2 au fost furnizate informații despre atribuirea biților din alte categorii la registrul PSW. Aplicați keruvannya. Dispozitivul CPU (CU) al procesorului central atribuit pentru a coordona activitatea tuturor nodurilor MK cu ajutorul sincronizării impulsurilor care vibrează și a altor semnale. Pentru a intra în acest depozit (Fig. 7.1.4):

Universitatea de Sincronizare și Management Unitatea de control, care formează impulsuri de sincronizare care stabilesc ciclurile mașinii și marginile acestora (S) și fazele (P), iar în modul de funcționare al MK, vibrează setul necesar de semnale pentru control. Pentru fiecare comandă sunt introduse unul, două sau mai multe cicluri de mașină.

Ciclul mașinii de piele poate șase tabere S1–S6, O regiune a pielii include doua faze P1, P2, care determină perioada generatorului de ceas T0SC.

Viteza ciclului mașinii este aceeași cu 12T 0SC. Toate ciclurile mașinii sunt aceleași, începând cu faza S1P1 și terminând cu faza S6P2.

Impulsurile de ceas ale dispozitivelor de sincronizare din ciclul mașinii de piele generează două (sau unul) semnal pentru stroboscopul octetului inferior al adresei ALE sub forma unui impuls pozitiv în fazele S1P2-S2P1 și S4P2-S5P1. Diagramele în timp util din Fig. 7.1.5 ilustrează organizarea ciclurilor mașinii;

● registrul comenzilor RK, decodor de comenzi DC și PLM, care permit ciclului mașinii de piele să formuleze un set de microoperații în concordanță cu microprogramul comenzii atribuite;

● logica pentru intrarea si iesirea LVV pentru receptia si iesirea semnalelor pentru a asigura schimbul de informatii intre MK si dispozitivele externe prin porturile P0-P3;

● Registrul PCON, care setează bitul SMOD la poziția PCON.7 pentru a crește viteza de transmisie prin portul serial. Alți biți sunt rezervați pentru utilizare ulterioară.
adresa Formuvach. Adresa Formuvach (FA), sau doctor al echipelor RS, sarcinile pentru formarea unei adrese de flux de 16 biți a memoriei programului și a unei adrese de 8/16 biți a memoriei de date externe. Pentru a intra în acest depozit (Fig. 7.1.6):

● 16 biți tampon B, există o conexiune între magistrala de date de 8 biți SD și magistrala internă de 16 biți (IB) pentru formarea adresei;

● schema de incrementare CI pentru creșterea cu unu a valorii adresei de flux a memoriei programului;

● un registru pentru salvarea adresei de flux a comenzilor PTA care urmează să fie primite de la SI;

● registru de afișare a datelor DPTR , care constă din două registre de 8 biți DPH și DPL. Acesta servește la salvarea adresei de 16 biți a memoriei de date externe și poate fi folosit ca două software independente accesibile RON;

● înregistrați-vă pentru formatarea adresei XRF pentru a salva fie o adresă de memorie de program de 16 biți, fie o adresă de memorie externă de date de 8/16 biți. Acest registru este configurat să transmită date prin portul P0 către dispozitive externe atunci când sunt introduse comenzile MOVX @Rm, A și MOVX @DPRT, A.

Memoria omagiilor. Memoria omagiilor atribuit Pentru confortul dvs., salvați tipurile de informații care sunt accesate în timpul procesului de instalare a software-ului. Memoria internă (rezidentă) (Fig. 7.1.7) a acestor date constă dintr-o memorie RAM de 128 de octeți, afişare stivă S.P. registrul de adrese RAM RA decodor Dsh. Indicatorul de stivă SP este un registru de 8 biți utilizat pentru a primi și salva adresa stivei înainte de procesarea ulterioară. După drop, adresele 07H sunt instalate în indicatorul stivei, care reprezintă capul stivei cu adresa 08H. Registrul de adrese PA, împreună cu decodorul Dsh, vă permite să accesați spațiul de memorie necesar pentru a stoca octeți sau biți de informații.

MK are capacitatea de a crește memoria de date până la 64 KB prin metoda de conectare dispozitive externe. fundul de iac din fig. 7.1.8 prezintă organizarea side-by-side a memoriei externe de date a VPD-ului cu o capacitate de 2K octeți cu comenzi de tip MOVX. @ Rm(m = 0; 1). În acest caz, portul P0 acționează ca o magistrală de adrese/date multiplexate, trei linii către portul P2 sunt folosite pentru a adresa partea RAM externă și cinci linii pot fi folosite ca linii de intrare-ieșire.
În fig. 7.1.9 se bazează pe diagrame orare ale ciclurilor de citire și scriere atunci când MK rulează din RAM externă. Diagramele indică:

● RSN – octet înalt al procesorului de comandă PC;

● DPL, DPH - octet mic și mare al registrului indicator de date DPTR, care este utilizat ca registru pentru adresare indirectă în comenzile MOVX @DPTR,A și MOVX A,@DPTR;

● P2 SFR - introduceri in portul P2;

● Rm (m = 0, 1) - registru care se foloseste in comenzile MOVX @Rm, A si MOVX A, @Rm ca registru de adrese indirecte;

● Z – moara de inalta rezistenta;

● D - perioada în care orice date din portul P0 sunt introduse în microcontroler. Memoria programului Memoria de programe este folosită pentru salvarea programelor, are propriul spațiu de adrese (împreună cu memoria de date) și este accesibilă numai prin citire. Acest depozit include decodorul Dsh și PZP (Fig. 7.1.10). Pentru a aborda memoria programului, se folosește o memorie PC de 16 biți, astfel încât capacitatea sa maximă este de 64K octeți. Memoria internă a programului constă dintr-un ROM de 4K octeți și un decodor de 12 biți. Memoria externă este conectată la circuitul din Fig. 7.1.11. Dacă pinul EA MK este furnizat 0 V (după cum se arată în Fig. 7.1.11), memoria internă a programului este pornită. Toate fișierele de memorie încep la adresa 0000h. La conectarea dispozitivului ¯EA la dispozitiv, stocarea programelor în memoria internă a programelor la adresele 0000h–FFFFh și în memoria externă a programelor la adresele 0FFFh–FFFFh este creată automat.

Pentru a citi memoria externă a programului MK, semnalul PSEN vibrează. Când lucrați cu memoria internă, semnalul de citire nu este detectat. La actualizarea programelor în memorie externă, se formează mai întâi o adresă de 16 biți. Cel mai mic octet al adresei este transmis prin portul P0 în prima jumătate a ciclului mașinii și este fixat prin stroboscopul ALE din registru.În cealaltă jumătate a ciclului, portul P0 este folosit pentru a introduce un octet de date de la exterior. memorie în MK.

Cel mai semnificativ octet al adresei este transmis prin portul P2 timp de aproximativ o oră până când se ajunge la memorie.

Diagramele timp-oră ale ciclurilor de citire și scriere pe oră de funcționare a MK din RAM externă sunt prezentate în Fig. 7.1.12.
Diagramele indică:

● PCL OUT – vizualizarea octetului inferior al programului de curățare a comenzilor PC;

● RSN OUT – afișarea octetului înalt al procesorului de comandă al PC-ului;

● DPH - octet înalt al registrului indicator de date DPTR, care este utilizat ca registru pentru adresarea indirectă în comenzile MOVX @DPTR,A și MOVX A,@DPTR;

● P2 SFR - introduceri in portul P2;

● INS IN – introducerea unui octet de instrucţiune (comandă) din memoria programului;

● ADDR OUT - vizualizarea octetului inferior al adresei memoriei externe de date din registrele Rm (m = 0, 1) sau din registrul DPL (registrul DPTR scăzut). Porti vvodnya-vivodu. Scopul porturilor. Porti P0, P1, P2, P3 recunoscut pentru a face schimb de informații între MK și dispozitivele externe, precum și pentru a accesa funcții suplimentare:

● octetul inferior al adresei A7…A0 este scos prin portul P0; octeții de date sunt ieșiți din MK și introduși în MK în timpul funcționării din memoria de program externă și din memoria externă de date (într-o oră);

● prin portul P2, octetul mare al adresei A15...A8 este scos în timpul orei de funcționare din memoria externă de programe și din memoria externă de date (numai în timpul funcționării comenzilor MOVX A,@DPTR și MOVX @DPTR,A). );

● liniile către portul P3 pot fi alocate funcțiilor alternative, dacă blocarea acestei linii este introdusă ca 1, în alt caz, pe linia afișată este fixat 0. Alternative Funcțiile portului P3 sunt enumerate în tabel . 7.1.3.

Caracteristicile schematice ale porturilor

În fig. 7.1.13 prezintă diagrame pentru un canal de porturi de piele ale MK, care include:

● un fișier pentru înregistrarea bitului de date care este primit;

● booster de weekend cascadă(conducător auto);

● vuzol legături cu stadiul de ieșire (Crima P2);

● o lance pentru transmiterea bitilor de date pe partea laterala a portului de iesire, care consta din bufferele B2 si B3 (pentru portul P4). Declanșatorul este un declanșator D, care este declanșat de semnalul intern „Înregistrare la clemă”. Bitul de date de la ieșirea directă a declanșatorului D poate fi citit programatic prin intermediul tamponului B1 utilizând semnalul „Read Load” către linia magistralei de date interne (SD) a MK.

Cascada de ieșire portul P0 este un invertor, ale cărui particularități se manifestă prin faptul că tranzistorul de antrenare VT2 este activat numai la transferul în memoria externă (când se transmite adrese și date prin port). În toate celelalte moduri, tranzistorul este forțat să se închidă. Prin urmare, la vikoristan P0 (Fig. 7.1.13, a) ca port de ieșire al funcției externe, este necesar să se conecteze rezistențe externe vantage la acest terminal. Când scrieți 1 în portul terminal, tranzistorul invertorului VT1 este închis și puterea exterioară a portului P0.X este transferată la un nivel de rezistență ridicat. În acest mod, portul P0.X poate fi folosit ca intrare. Deoarece portul P0 este folosit ca port de intrare/ieșire în scopuri externe, pielea din portul său P0.X poate fi folosită independent ca intrare sau ieșire. Cascade de ieșire porturile P1, P2, P3 (Fig. 7.1.13, b, c, d) Urmați circuitele invertorului cu un rezistor intern, cum ar fi tranzistorul VT2.

Pentru a schimba timpul de reconectare în timpul tranziției pinii portului de la etapa 0 la etapa 1 în paralel cu tranzistorul VT2, este introdus tranzistorul suplimentar VT3. Tranzistorul VT3, în spatele elementelor suplimentare de la poarta porții, este oprit timp de o oră, ceea ce setează oscilatorul de cuarț la aceleași două perioade (prelungirea fazelor S1P1, S2P2 ale ciclului mașinii). Cascade de ieșire Porturile P0, P2 (Fig. 7.1.13, A, c) din spatele unui multiplexor MX suplimentar pot fi conectate fie la unități, fie la magistralele interne „Adrese/date” și „Adrese”. Etapa de ieșire la portul P1 (Fig. 7.1.13, 6) este conectată permanent la terminal.

Deoarece conexiunea la portul P3 este ieșirea și pinul său este 1, cascada sa de ieșire este controlată de semnalul intern hardware „Funcție alternativă la ieșire”, care este conectat la o funcție alternativă. Ieșirea externă este formată de unul dintre semnalele WR, RD sau RxD. De îndată ce semnalul de intrare este alocat portului de intrare, semnalul alternativ (TxD, INT0, INT1, T0, T1) care este trimis celui nou este transmis pe linia internă „Funcție alternativă de intrare”.

Mod înregistrare port.

Când o comandă este scrisă în port, o nouă valoare este scrisă la terminalul din faza S6P2 și este transmisă direct la contactul de ieșire al portului în faza S1P1 a următorului ciclu al mașinii.

Modul citire port

Comenzile de citire porturi citesc informații direct de la contactele externe din portul principal sau de la ieșirile terminalelor. În prima etapă, bitul de date din portul de ieșire este citit programatic prin intermediul bufferului B2 de semnalul „Probleme de citire” către linia magistralei de date interne (SD) a MK. Este semnificativ faptul că semnalele „Scrie într-o notă”, „Citește o notă”, „Citește o notă” sunt generate în hardware atunci când sunt selectate anumite tipuri de comenzi.

Într-un alt tip, este implementat modul „Read-Modify-Write”, în care comanda citește semnalul de încărcare, îl modifică dacă este necesar și apoi îl scrie înapoi pe clemă. Modul „Read-Modify-Write” este implementat atunci când sunt selectate următoarele comenzi: ANL, ORL, XRL, JBC; CPL; INC; DEC; DJNC; MOV PX, Y; CLR PX.Y; SETB PX,Y.

Citirea informațiilor de la ieșirile pinii vă permite să dezactivați erorile atunci când interpretați valoarea logică pe portul selectat. Continuați să citiți statisticile.

Arhitectura familiei MCS-51 este semnificativă datorită acesteia compactі ieftin dispozitive digitale. Toate funcțiile microEOM sunt implementate folosind un singur microcircuit. Stocul familiei MCS-51 include o gamă întreagă de microcircuite, de la cele mai simple microcontrolere până la câteva pliabile. Microcontrolerele din familia MCS-51 vă permit să configurați controlul diferitelor dispozitive, precum și să implementați diferite componente ale circuitelor analogice. Toate microcircuitele din această familie funcționează cu același sistem de comandă, majoritatea sunt construite în clădiri noi cu sokolovka, care poate fi evitată(Numerotarea picioarelor pentru corp). Acest lucru vă permite să utilizați microcircuite de la diferiți producători (cum ar fi Intel, Dallas, Atmel, Philips etc.) fara a relua schemele de circuit voi instala si programa.

Malyunok 1. Schema bloc a controlerului K1830BE751

Schema bloc a controlerului este prezentată în Figura 1. Include următoarele unități funcționale principale: unitate de control, unitate aritmetic-logică, bloc temporizatoare/dezactivare, interfață serială și bloc de întrerupere, controler de program, memorie și ele, și memoria programului. Comunicarea bidirecțională are loc printr-o magistrală de date internă de 8 biți. Să aruncăm o privire la raportul despre semnificația blocului de piele. Aproape toți reprezentanții familiei MCS-51 au fost folosiți pentru această schemă. Diverse microcircuite ale acestei familii sunt împărțite în registre cu scop special (registre și număr de porturi). Sistem de comandă toți controlorii Familia MCS-51 conține 111 comenzi de bază cu un format de 1, 2 sau 3 octeți și nu se modifică la trecerea de la un microcircuit la altul. Acest lucru va asigura portabilitatea miraculoasă a programelor de la un microcircuit la altul.

Unitate de control și sincronizare

Unitatea de sincronizare și control este utilizată pentru generarea de semnale de sincronizare și de conducere pentru a asigura coordonarea întregii funcționări a unităților OEOM în toate modurile de funcționare permise. Unitatea de control al depozitului include:

  • dispozitiv pentru formarea intervalelor de oră,
  • logica de intrare-ieșire,
  • registru de comenzi,
  • registrul de gestionare a alimentării cu energie electrică,
  • decodor de comandă, logica de control EOM.

Dispozitiv pentru formarea intervalelor de oră Destinat pentru formarea și formarea semnalelor interne de ceas de fază, cicluri și cicluri de ceas. Numărul de cicluri de mașină înseamnă complexitatea secvenței de comenzi. Aproape toate comenzile OEOM sunt executate în unul sau două cicluri de mașină, cu excepția comenzilor de înmulțire, și a căror trivialitate are loc în mai multe cicluri de mașină. În mod semnificativ, frecvența generatorului, care este setată prin F r. Apoi ciclul mașinii este egal cu 12/F sau setați 12 perioade la semnalul generatorului care se setează. Logica de intrare-ieșire este concepută pentru a primi tipurile de semnale care asigură schimbul de informații de la dispozitive externe prin porturile de intrare-ieșire P0-P3.

Registrul de comenzi Scopul înregistrării este de a salva opcode-ul de 8 biți al comenzii care este adăugată. Codul de operare, cu ajutorul comenzilor și al logicii de control EOM, este convertit în microprogramul comenzii.

Registrul Keruvannya Sozhivannyam (PCON) vă permite să opriți robotul microcontroler pentru a modifica cantitatea de energie electrică consumată și pentru a modifica nivelul de intrare de la microcontroler. O schimbare și mai mare a cantității de energie electrică și o schimbare a transcodării pot fi realizate prin deconectarea generatorului de microcontroler care îl setează. Acest lucru poate fi realizat cu ajutorul inversării registrului de biți în legătură cu PCON. Pentru versiunea fabricată folosind tehnologia n-MOS (seria 1816 sau microcircuite străine, ale căror nume au litera „c” în mijloc), registrul de registru PCON conține doar un bit, ceea ce asigură o transmisie lină de portul serial SMOD și va să fie conectat la alimentarea cu energie electrică în fiecare zi.

Citiți simultan din articolul „Arhitectura microcontrolerelor MCS-51”:


http://site/MCS51/tablms.php


http://site/MCS51/SysInstr.php


http://site/MCS51/port.php

Intel este fondatorul arhitecturii familiei MCS-51, care își ia numele de la primul reprezentant al acestei familii - microcontrolerul 8051, lansat în 1980 pe baza tehnologiei n-MOS. În plus, un set de dispozitive periferice, posibilitatea unei alegeri flexibile a memoriei de programe externe și interne și un preț rezonabil au asigurat succesul acestui microcontroler pe piață. Din punct de vedere al tehnologiei, unitățile de microcontroler 8051 pentru timpul său este un dispozitiv foarte pliabil - au fost 128 de mii în cristal. tranzistori, care a fost de 4 ori mai mare decât numărul de tranzistori din microprocesorul pe 16 biți 8086. Funcțiile microcontrolerului sunt pierdute în nucleul familiei MCS-51 și 100% fiecare.

Elementele principale ale arhitecturii de bază a familiei (arhitectura microcontrollerului 8051) sunt:

ALU pe 8 biți;

4 banci de registre, cate 8 pentru fiecare;

Memoria programului intern (rezident) este de 4 KB, de tip ROM sau EPROM (8751);

Memorie de date internă (rezidentă) 128 octeți;

21 registre cu funcții speciale;

procesor boolean;

Două temporizatoare/dezactivatoare pe 16 biți;

Controler de port serial (UART);

Controlorul de prelucrare se amestecă între două niveluri de priorități;

Există porturi I/O pe 8 biți, dintre care două sunt folosite ca magistrală de adrese/date pentru accesarea programelor externe și a memoriei de date;

Generator de ceas Vbudovany.

Apoi a fost lansat microcontrolerul 8052, care a crescut cantitatea de memorie rezidentă a programului și a datelor, a introdus un al treilea temporizator și un controler de întrerupere extins.

p align="justify"> Următorul pas în dezvoltarea MCS-51 este transferul tehnologiei de fabricație către CMOS (modificare 8xC51). Acest lucru a făcut posibilă implementarea modurilor Idl (idle) și Power Down (consum redus de energie), care au asigurat o scădere bruscă a consumului de energie al cristalului și au deschis calea pentru ca microcontrolerul să se blocheze în accesorii epuizate de energie, pt. de exemplu, în dispozitivele autonome cu o durată de viață a bateriei m.

Ultima etapă importantă în dezvoltarea lui MK 8051 de către Intel a fost lansarea microcontrolerelor 8xC51FA/FB/FC și 8xC51RA/RB/RC, care sunt adesea denumite 8xC51Fx și 8xC51Rx. Caracteristica principală a acestui grup de cristale este prezența unui cronometru/vindecător special (RSA). În plus, microcontrolerele 8xC51Rx pot seta suplimentar un timer watchdog (WDT). Să aruncăm o privire asupra arhitecturii și capabilităților funcționale ale raportului PCA.

Depozitul RSA include:

temporizator/lichidator pe 16 biți;

Cinci module de eșantionare și aliniere pe 16 biți sunt conectate la propria linie la portul de intrare/ieșire al microcontrolerului.

Temporizatorul/curerul deservește toate cele cinci module de eșantionare și numărul care poate fi programat pentru una dintre următoarele funcții:

Eșantionarea pe 16 biți a valorii temporizatorului după marginea pozitivă a semnalului extern;

Eșantionarea pe 16 biți a valorii temporizatorului după marginea negativă a semnalului extern;

Eșantionarea pe 16 biți a valorii temporizatorului în spatele oricărei margini a semnalului extern;

Temporizator programabil pe 16 biți;

Dispozitive suedeze pe 16 biți;

PWM pe 8 biți.

Toate funcțiile revizuite sunt disponibile de la PCA la nivel hardware și nu implică procesorul central. Acest lucru vă permite să creșteți debitul de procesare, să îmbunătățiți acuratețea procesării și procesării semnalului și să reduceți timpul de răspuns al microcontrolerului la intrările externe, ceea ce este deosebit de important pentru sistemele în timp real. Au apărut implementări ale 8xC51Fx (8xC51Rx) RSA.

Programare

Max. frecvență (MHz)

ROM/EPROM (octet)

medicii

Să remarcăm că arhitectura acestor microcontrolere a devenit un standard industrial, iar PCA în sine a fost implementat pe scară largă în diferite modificări ale MK 8051.

Caracteristicile unui număr de microcontrolere MCS-51 fabricate de Intel sunt enumerate în Tabelul 1.1.

Inițial, cele mai „colegiale” părți ale arhitecturii MCS-51 au fost ALU-uri bazate pe baterie de 8 biți și un număr semnificativ mai mare de comenzi (pentru cele mai avansate comenzi, erau necesare 12 relee).

Tabelul 1.1

introducere/introducere

ADC, intrare x descărcare

periferie,

particularitate

Animal de companie. (ÎN)

Opțiune de joasă tensiune

4 nivele IRQ, ceas out

4 nivele IRQ, ceas out

Versiunea de joasă tensiune 8xC51Fx

4 nivele IRQ, ceas out

4 nivele IRQ, ceas out

4 nivele IRQ, ceas out

cicluri ale frecvenței de ceas (frecvența de sincronizare MK). Acest lucru a separat familia de microcontrolere de suplimente care generează coduri avansate de viteză și calcule complexe (16 și 32 de biți). Accentul principal a fost modernizarea fundamentală a arhitecturii MCS-51. Problema modernizării a fost complicată de faptul că, înainte de începutul anilor 90, se crease deja multă implementare în software-ul și hardware-ul familiei MCS-51, cu care una dintre principalele sarcini de proiectare a unei noi arhitecturi era o realitate.valoarea hardware-ului și software-ului cu capabilități bazate pe MCS -51.

Pentru a finaliza sarcina atribuită, a fost creat un grup comun cu fasciști de la Intel și Philips, iar ulterior cele două companii au fuzionat. Drept urmare, în 1995, au apărut două familii distincte: MCS-251/151 de la Intel și MCS-51XA de la Philips (diviziunea 1.2).

Principalele caracteristici ale arhitecturii MCS-251:

Spațiu de adrese liniar de 24 de biți, care asigură adresarea până la 16 MB de memorie;

O arhitectură de registry care permite accesul la registre, precum și la octeți, șiruri și șiruri subordonate;

Mod de adresare side-by-side pentru preluarea mai rapidă a comenzilor din memoria externă a programului;

Instructiuni Cherga;

Extensii de set de instrucțiuni pentru a include operații aritmetice și logice pe 16 biți;

Extinderea spațiului de adrese al stivei (până la 64 KB);

Victoria celei mai populare echipe în 2 măsuri.

Sistemul de comandă MCS-251 include două seturi de instrucțiuni - primul set este o copie a sistemului de comandă MCS-51, iar celălalt constă în instrucțiuni extinse pentru a implementa avantajele arhitecturii MCS-251. Înainte de a instala microcontrolerul, acesta trebuie ajustat. Cu ajutorul programatorului, „ardeți” biții de configurare, care indică ce set de instrucțiuni va deveni activ după pornirea vieții. Dacă instalați primul set de instrucțiuni, atunci în ce tip de MK din familia MCS-251 va fi comparat cu MCS-51 sau egal cu codul dublu. Acest mod se numește modul binar. Dacă instalați mai întâi un set de instrucțiuni extinse (Mod sursă), inclusiv programe scrise pentru MCS-51, puteți efectua recompilări între procese pentru MCS-251. Modul sursă vă permite să utilizați arhitectura MCS-251 cu eficiență maximă și să obțineți codul de cea mai mare viteză.

Pentru clienții care doresc să instaleze microcontrolere MCS-251 ca înlocuitor mecanic pentru MCS-51, Intel produce microcontrolere MCS-151, deja programate în modul binar.

Caracteristicile unui număr de microcontrolere MCS-251/151 sunt enumerate în Tabelul 1.1.

Nini Intel, direct pe piața procesoarelor Pentium, arde producția de cristale MCS-51. În general, pentru un anumit comerciant cu amănuntul, acest lucru poate fi pierdut și de neobservat, deoarece nu sunt aceleași microcontrolere 8xC51GB și 80C152Jx, deoarece nu au analogii lor exacti printre dispozitivele altor companii. Până la decizia microcontrolerelor din familia MCS-51, toate au fost distribuite pe scară largă de alte companii.

Ministerul Educației Externe și Profesionale al Federației Ruse Universitatea Tehnică de Stat Novosibirsk V.M. Veprik, V.A. Afanasiev, A.I. Druzhinin, A.A. Zemskov, A.R. Isaev, O.V. Malyavko MICROCONTROLLER FAMILY MCS-51 Manual de început cu privire la cursurile „Sisteme cu microprocesoare” și „Proiectarea sistemelor cu microprocesoare” pentru studenții seniori ai Facultății de Automatizare și Tehnologie Computațională a tuturor formelor de învățare Novosibirsk 199 7 V.M. Veprik, V.A. Afanasiev, A.I. Druzhinin, A.A. Zemskov, A.R. Isaev, O.V. Cel mic. Microcontrolere din familia MCS-51: Ghid de bază. - Novosibirsk. Dorim să vă prezentăm o descriere detaliată a arhitecturii, capabilităților funcționale și sistemelor de comandă ale familiei de microcontrolere cu un singur cip (Embedded Microcontrollers) MCS-51, fabricate de INTEL. Cealaltă parte a manualului conține o descriere a controlerului inițial cu microprocesor UMPC-51, atribuit studenților ca obiect de investigație la sfârșitul ciclului de robot de laborator. Materialul din ghid poate fi folosit pentru cursuri și proiecte de diplomă și poate fi util și pentru inginerii de circuite care sunt implicați în dezvoltarea și operarea echipamentelor electronice. Autorii recunosc responsabilitatea profundă a ATZT „Noile tehnologii” - distribuitorul oficial al INTEL pentru furnizarea de materiale bazate pe rezultatele acestei lucrări. Tabelul 15, figura 25, lista de ani. 12 titluri Revizor: O.D. Baran, G.G. Matușkin. Lucrarea a fost pregătită la Departamentul de Tehnologie Computațională, Universitatea Tehnică de Stat din Novosibirsk 2 ENTRY. Familia MCS-51 de microcontrolere cu un singur cip pe 8 biți a apărut pe piața de iluminat la începutul anilor 1980. Primele modificări ale cristalelor (aproximativ 7) s-au bazat pe tehnologia high-moss n-MOS (HMOS) și au fost completă din punct de vedere funcțional cu arhitectura microEOM Harvard cu un singur cip, unul dintre principiile de bază ale căreia se află în zonele de adrese separate logice ale memoriei programului. și date. Odată cu dezvoltarea tehnologiei de supraalimentare, versiunile mai noi ale microcircuitelor MCS-51 au început să fie fabricate folosind o tehnologie CMOS (CHMOS) mai aprofundată și de putere redusă (în modul de sincronizare activă a cipului, curentul a fost crescut la 10-50 mA). Sistemul de comandă MCS-51, orientat spre implementarea diverșilor algoritmi de control digital, păstrând în același timp asemănarea generală cu sistemul de comandă al familiei anterioare MCS-48, s-a extins în mod clar, introducând noi principii n: operații orientate pe biți și câmpuri de biți care sunt adresate memoriei de date. a făcut posibil să vorbim despre implementarea unui procesor de biți pe un cip; au fost implementate o serie de comenzi de multiplicare, ceea ce înseamnă că acestea sunt în curs de actualizare; robotul a fost îmbunătățit cu o stivă; Grupul de comenzi de transfer de control a fost extins; Sistemul de comandă a început să pară simetric, astfel încât să fie mai puțin învechit din cauza transmiterii datelor prin baterie. Capacitățile funcționale ale noilor dispozitive periferice s-au extins, de asemenea, prin adăugarea a două temporizatoare pe 16 biți; port serial duplex hardware; iriga sistemul de curte; patru porturi I/O pe 8 biți. p align="justify">Principiile schimbărilor în structura ciclului oră-timp al procesorului au dus la o lucru mai rapid din memoria externă a programelor și datelor, precum și la reacții la întreruperi externe și interne. Dimensiunea totală a spațiului de adrese al memoriei externe a programului și a datelor a crescut la 128 KB. Registrele pe 16 biți ale Program Counter și Data Pointer au permis extinderea rapidă a adreselor în orice interval, ceea ce a oferit dezvoltatorilor posibilitatea de a implementa algoritmi pentru procesarea rapidă a seturilor mari de date. Toate nodurile accesibile prin software ale microcontrolerului au fost stocate într-o zonă specială de memorie de date (Registrul de funcții speciale), ceea ce a făcut posibilă accesarea lor în același mod ca și părțile primare ale RAM rezidentă. În modificările ulterioare ale cristalelor, au fost aduse îmbunătățiri pentru a crește capacitățile funcționale suplimentare, salvând în același timp complexitatea software-ului nou față de versiunile anterioare. Caracteristicile modificărilor rămase ale microcontrolerelor din familia MCS-51 includ: design complet static; versiuni de 3 și 5 volți ale cristalelor; o gamă largă de dispozitive periferice disponibile; frecvența maximă de ceas – 24 MHz; pentru anumite grupe de cristale – 33 MHz. În prezent, în depozitul MCS-51 există aproape 60 de versiuni de cristale, în plus, documentația oficială este disponibilă (din păcate, există încă puțină traducere a limbii ruse). Pentru a pregăti suportul matematic pentru microcontrolerele MCS-51, folosim în principal limbajele „ASM-51”, „C”, pentru care există o serie de compilatoare care s-au dovedit bine, biblioteci de subprograme standard și emulatori software pe care le-am sunt în curs de dezvoltare Există diverse companii străine și interne. 3 Indiferent de „vechimea” suficientă a familiei (peste 15 ani) și de apariția pe piața de iluminat în ultimii ani a microcontrolerelor cu un singur cip cu o productivitate mai mare și arhitectură foarte sofisticată - MCS-51, MCS-251, MCS-96, controlerele M CS-51 vor continua să reziste mult timp Vykoristovyvayutsya la vârsta sistemelor de management simple. 4 1. SISTEM SEMNIFICAȚII COMPONENTE ALE COMPANIEI INTEL ȘI DEPOZITUL FUNCȚIONAL AL ​​FAMILIEI MCS-51 Pentru marcarea microcircuitelor de către INTEL, un sistem este configurat în mai multe câmpuri: 1 2 3 4 Х ХХ Х Х ХХ Х Х Х Х Х Х Х ХХ Х Х Х ХХ Х Х Х ХХ Х Х Х ХХ Х Х Х ХХ Х Х Х ХХ Х Х Х ХХ Х Х Х ХХ Х Х Х ХХ Х Х Х Х XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX motiv) , auto pentru o gamă extinsă de temperatură (-40/+125 C) M (militar), conform standardelor militare (-55/+125 C) Q sau C (comercial), interval de temperatură „comercial” (0/+70 C) cu (160 8) ani antrenament termic dinamic; L sau E (Extins), interval de temperatură „extins” (-40/+85 C) cu (160 8) - antrenament termic dinamic de un an; T (Extins), interval de temperatură „extins” (-40/85 C) fără antrenament termic; I (Industrial), victorios pentru standardele industriale. Într-un alt câmp, plasați un prefix de una sau două cifre, care indică tipul de ambalare al microcircuitului (Tipul pachet). Există zeci de tipuri diferite de pachete de microcircuite astăzi, așa că putem indica doar câteva dintre ele: A Ceramic Pin Grid Array, (PGA); C Pachet Ceramic Dual In-Line (CDIP); K Ceramic Quad Flatpack Package (QFP); Pachet KD Plastic Quad Flatpack, cu pas fin, matriță, (PQFP); Pachet KU Plastic Quad Flatpack, pitch fin, die Up, (PQFP); N suport de așchii cu plumb din plastic, (PLCC); P Pachet dublu în linie din plastic (PDIP); Modul de memorie SM Single In-Line Leadless, (SIMM); Pachet dublu în linie din plastic U, înmuiere de contracție, (PDIPS); Z Zigzag In-Line Package (ZIP). Al treilea câmp poate conține până la 15 caractere numerice și alfabetice, care indică tipul de dispozitiv specific construit pe cip. Al patrulea câmp poate include până la șase caractere numerice și alfabetice pentru a reprezenta diferite caracteristici și opțiuni de configurare ale microcircuitelor. Informații suplimentare despre tipurile de carcase și designul acestora pot fi găsite în cartea: Numărul de comandă de ambalare 240800. Există descrieri ale microcontrolerelor din familia MCS-51, primul caracter al celui de-al treilea câmp este tradițional (pentru Intel) nuє "8 ". Un alt simbol al celui de-al treilea câmp indică tipul de PZP introdus: 0 program PZP masca; cristal fără PZP (pentru versiunile ulterioare de cristale); 1 masca program PZP (Cod ROM Standard, Firmware); 3 masca PZP (pentru versiunile ulterioare de cristale), (Cod ROM personalizabil); 7 UFRZU sau PZP programat o singură dată (EPROM sau OTP ROM); 8 EEPROM (Flash - on-chip memory) Poate exista și o literă care indică caracteristicile tehnologice ale producției: prezența literei este tehnologie HMOS, viață de 5V; Tehnologie CHMOS, viață 5V; Tehnologia L CHMOS, viata 3B; 5 Simbolurile principale ale celui de-al treilea câmp pentru microcontrolere din familia MCS-51 includ numere (de exemplu, 31,32,51,54,58,152) și până la patru litere care reprezintă caracteristicile funcționale ale cristalelor (de exemplu, PPP). , specificul grupului de cristale, vizibilitatea sistemului Pentru a proteja memoria programului de accesul neautorizat, este posibil să se utilizeze un algoritm de programare amănunțit „Quick Pulse” etc.). În documentația tehnică originală de la Intel, toate microcontrolerele din familia MCS-51 sunt aranjate în grupuri („Linia de produse”), fiecare unită în funcție de capacitățile lor funcționale și parametrii electrici ai versiunilor ii cristale. Fragmentele denumirilor de microcircuite dintr-un grup sunt separate nesemnificativ, apoi pentru a desemna grupul de marginea pielii, se creează un simbol fix, creat din marcarea unor microcircuite specifice, prin înlocuirea simbolurilor, care este tăiată baby, pe „X ". Astfel, puteți vedea astfel de grupuri de microcontrolere. 1. Grupa 8X5X (linia de produse 8051 și linia de produse 8052): 8031AN, 8051AN, 8751N, 8051ANR, 8751N-8, 8751VN, 8032AN, 8052AN, 8752V. 2. Grupa 8ХС51 (linie de produse 80С51): 80С31ВН, 80С51ВН, 87С51. 3. Grupa 8ХС5Х (8ХС52/54/58 Linie de produse): 80С32, 80С52, 87С52, 80С54, 87С54, 80С58, 87С58. 4. Grupa 8ХС51FX (linie de produse 8XC51FA/FB/FC): 80C51FA, 83C51FA, 87C51FA, 83C51FB, 87C51FB, 83C51FC, 87C51FC. 5. Grupa 8ХL5X (linie de produse 8XL52/54/58): 80L52, 87L52, 80L54, 87L54, 80L58, 87L58. 6. Grup 8XL51FX (linie de produse 8XL51FA/FB/FC): 80L51FA, 83L51FA, 87L51FA, 83L51FB, 87L51FB, 83L51FC, 87L51FC. 7. Grupa 8ХС51RX (linie de produse 8XC51RA/RB/RC): 80C51RA, 83C51RA, 87C51RA, 83C51RB, 87C51RB, 83C51RC, 87C51RC. 8. Grupa 8ХC51GB (linie de produse 8XC51GX): 80C51GB, 83C51GB, 87C51GB. 9. Grupa 8ХС152JX (linie de produse 8XC152): 80C152JA, 83C152JA, 80C152JB, 80C152JC, 83C152JC, 80C152JD. 10. Grupa 8XC51SL (linie de produse 8XC51SL): 80C51SL-BG, 81C51SL-BG, 83C51SL-BG, 80C51-AH, 81C51SL-AH, 83C51SL-AH, 85C5 83C51SL-51SL, 83C51SL-51SL Primul grup de microcontrolere include modele mai tinere ale familiei, bazate pe tehnologia n-MOS și nu este recomandată decât mai târziu în noile dezvoltări; toate celelalte grupuri se bazează pe tehnologia actuală CMOS. Microcircuite ale altui, al treilea și al patrulea grup sunt astăzi reprezentanți clasici ai familiei MCS-51. Acest grup include versiuni de 3 volți ale cristalelor (Low-Voltage). Cristalele acestui grup sunt echipate cu RAM extinsă, care este de până la 512 octeți. Microcircuitele din grupele a opta, a noua și a zecea sunt specializate pentru microcontrolere (Application Specific). O mulțime de programe actuale folosesc microcontrolere foarte productive, cum ar fi capabilități avansate de adresare, arhitectură de registry, o cantitate mare de RAM și stivă internă și, de asemenea, sprijină eficient programarea de nivel înalt. Aceste microcontrolere includ microcontrolere New Architecture din familiile MCS-5 și MCS-251, pe care Intel a început producția în 1995. Funcționalitatea și caracteristicile cheie ale microcontrolerului MCS-51/MCS-251 sunt furnizate în supliment. 6 2. PRINCIPALELE CARACTERISTICI ALE MODELULUI DE BAZĂ AL FAMILIEI DE MICROCONTROLLER MCS-51. Modelul de bază al familiei de microcontrolere MCS-51 și baza pentru toate modificările viitoare este microcontrolerul I-8051. Principalele sale caracteristici: CPU pe opt biți, optimizat pentru implementarea funcțiilor de control; generator de ceas de intrare; spațiu de memorie program adresabil – 64 K; spatiu de memorie de date adresa – 64 K; memorie internă program – 4 K; memorie internă de date – 128 octeți; capabilități suplimentare pentru executarea operațiilor în algebră booleană (operații pe biți); 32 bidirecționale și individual adresate liniei de intrare/ieșire; 2 temporizatoare/dozatoare bogat funcționale de șaisprezece biți; primer asincron full-duplex; Sistemul vectorial este intercalat cu două niveluri de prioritate și șase unități de putere. Schema bloc a lui I-8051 este prezentată în Fig. 1, identificarea microcircuitelor este prezentată în Fig. 2. 128 octeţi T/C 0 contor 4K ROM control RAM T/C 1 intrări CPU BUS 4 I/O Serial OSC control Porturi Port P0 P1 P2 P3 T D R D Adresă/Date Fig.1. Diagrama bloc a I-8051 Întreaga serie MCS-51 folosește arhitectura Harvard pentru a extinde spațiul de adrese de memorie al programelor și datelor. Organizarea memoriei este prezentată în Fig. 3. Cantitatea de memorie internă (rezidentă) de program (ROM, EPROM sau OTP ROM) care este stocată pe cristal poate fi setată la 0 (fără ROM), 4K (cristal de bază), 8K, 16K sau 32K în funcție de tipul de microcircuit. Pentru consum, puteți extinde memoria de program a PZP-ului extern instalat. Accesul la PZP intern sau extern este atribuit valorilor semnalului de pe ieșirea EA (Acces extern): EA = Vcc (tensiune de viață) – acces la PZP intern; EA = Vss (potențial de masă) – acces la ROM extern. Pentru cristalele fără upgrade EA PZP (fără ROM), pot exista conexiuni permanente la Vss. Strobe pentru citirea PZP-ului extern - PS EN (Program Store Enable) este generat atunci când programul este descărcat în memoria externă și este inactiv în timpul descărcării în PZP care se află pe cip. 7 Zona adresei inferioare a memoriei programului este învingătoare de sistemul de întrerupere, arhitectura microcircuitelor 8051 oferă suport pentru cinci dispozitive de întrerupere: două întreruperi externe; Schimbați două tipuri de cronometre; Întreruperea la portul serial. P1.0 1 40 Vcc P1.1 2 39 P0. 0 (AD0) P1.2 3 38 P0.1 (AD1) P1.3 4 37 P0.2 (AD2) P1.4 5 36 P0.3 (AD3) P1.5 6 35 P0.4 (AD4) P1. 6 7 34 P0. 5 (AD5) P1.7 8 33 P0.6 (AD6) RESET 9 32 P0.7 (AD7) (RD) P3.0 10 31 EA/Vpp (TD) P3.1 11 30 ALE/ PROG (INT0) P3 .2 12 29 PSEN (INT1) P3.3 13 28 P2.7 (A15) (T0) P3.4 14 27 P2.6 (A14) (T1) P3.5 15 26 P2.5 (A13) (WR) P3.6 16 25 P2.4 (A12) (RD) P3.7 17 24 P2.3 (A11) XTAL2 18 23 P2.2 (A10) XTAL1 19 22 P2.1 (A9) Vss 20 21 P2.0 ( A8) Fig.2. Atribuții de memorie I-8051 Memorie program (Citire) Memorie de date (Citire/Scriere) FFFFH ROM externă FFFFH Memorie externă @DPTR RD Date PSEN WR @PC MOVC EA=0 Memoria internă @Date DPTR @PC Extern FFH intern 1 PZP 80H EA =0 0000H EA=1 inferior 128 00H 0000H PSEN Fig.3. Organizarea memoriei familiei MCS-51 8 Figura 4 prezintă o hartă a zonei inferioare a memoriei programului. ROM Memorie program 0033Н 002БН Port serial 0023Н Vector Timer1 001BN întrerupere EINT1 0013Н Timer0 000BH EINT0 0003Н Adresa de start 0000H (Reset) Fig.4. Memoria programului Adresele vectorilor sunt întrerupte la intervale de 8 octeți: - 0003Н întrerupere externă 0 (Întrerupere externă 0) - nou IN T 0; - 000BN override timer 0 (semnal de override timer - T F 0); - 0013Н întrerupere externă 1 (Interrupție externă 1) - conexiune IN T 1; - 001BH override timer 1 (semnal de override timer - T F 1); - 0023H întrerupere la portul serial (Serial Interrupt = Receive Interrupt sau Transmit Interrupt); Și așa mai departe. Memoria de date este combinată cu memoria programului. Această găluzie poate adresa 64K de OZP extern. Când datele sunt descărcate în memoria externă, CPU-ul microcontrolerului generează semnale de citire (RD) și scriere (WR), interacționând cu memoria internă de date la nivel de comandă, prin care semnalele RD și WR nu vibrează. Memoria de program externă și memoria de date externă pot fi combinate prin conectarea semnalelor R D și S EN la un circuit „I logic” pentru a elimina memoria stroboscopică externă (program/date). Cei 128 de octeți inferiori ai memoriei interne de date (inferioare 128) sunt prezenți pe toate cristalele MCS-51 și sunt prezentate în Fig. 5. Primii 32 de octeți sunt 4 bănci (Register Bank) a câte 8 registre fiecare (R7...R0). Registrele R0 și R1 din orice bancă pot fi considerate ca registre de adrese indirecte. Pașii din spatele băncilor de registry de 16 octeți creează un bloc de spațiu adresat de biți. Setul de instrucțiuni MCS-51 permite o gamă largă de operații pe biți, iar cei 128 de biți din acest bloc sunt adresați direct și variază de la 00H la 7FH. Toți octeții din jumătatea inferioară de 128 de octeți a memoriei pot fi adresați fie direct, fie indirect. Jumătatea superioară de 128 de octeți a memoriei RAM (superioară 128) din microcircuitul I-8051 este zilnică și, de asemenea, în versiunile de cristale cu 256 de octeți de RAM. În acest caz, zona „Upper 128” nu mai este disponibilă pentru adresare indirectă. Zona SFR (Registrul Funcțiilor Speciale) este accesibilă doar prin adresare directă. Amplasarea registrelor de funcții speciale în spațiul SFR este prezentată în Fig. 6. Acestea includ registre de porturi, temporizatoare, funcții de control periferic și așa mai departe. 9 7FH Zona RAM adresată pe octeți 30H (directă, indirectă) 2FH 7FH 7EH 7DH 7CH 7BH 7AH 79H 78H 2EH 77H 76H 75H 74H 73H 7H 10 20 H 0EH 0BH0 0BH 0BH0 0BH 0BH00 06H 05H 04H 03H 02H 01H 00H 1FH RB3 18H 17H RB2 10H 0FH RB1 08H 07H SP după RESET 00H RB0(R7+R0) Mic 5. Reduceți 128 de octeți de memorie RAM internă. Adresare pe biți 8 octeți F8H FFH F0H B F7H E8H EFH E0H ACC E7H D8H DFH D0H PSW D7H C8H CFH C0H C7H B8H IP BFH B0H P3 B7H OD TL0 TL1 NTH0 TH1 8FH PSW D7H C8H CFH C0H C7H B8H IP BFH B0H P3 B7H OD TL0 TL1 N /A 3/B 4/C 5/D 6/E 7/F Mic6. Plasarea registrelor funcțiilor speciale în spațiul SFR. Pentru 16 adrese, spațiul SFR are posibilitatea de adresare atât pe octeți, cât și pe biți. Pentru registrele cu adresa de biți, adresele hexazecimale se termină cu „0H” sau „8H”. Adresele de biți din acest câmp pot varia de la 80H la FFH. Întreaga serie de cristale din familia MCS-51 conține un set de bază de SFR, ca în microcircuitul I-8051, atribuite acelorași adrese. Cu toate acestea, cristalele, care reprezintă o dezvoltare ulterioară a familiei în zona SFR, adaugă noi registre de extindere 10

 

 

Tse tsikavo: