Mikrovaldikliai MCS-51: programos modelis, struktūra, komandos. Mcs51 šeimos mikrovaldikliai A. Papildomos komponentų charakteristikos ir charakteristikos

Šiuo metu įvairios kompanijos be modifikacijų išleidžia šios šeimos analogus, tiek iš Intel, tiek iš kitų gamintojų, laikrodžio dažnis ir atmintis išaugo dešimt kartų ir toliau auga. Taip pat plečiamas įmontuotų BIS modulių skaičius, daugelis dabartinių modelių turi nuolatinį greitaeigį ADC, kurio gali būti iki 12, o tuo pačiu gali būti ir daugiau iškrovų. Jis pagrįstas „Intel“ BIS 8051, 80С51, 8751, 87С51, 8031, 80С31 MCS51 šeima, kurios pirmosios versijos buvo išleistos devintajame dešimtmetyje.

MCS51 Viconani mikrovaldikliai, skirti Knoakiosol N -MOP technologijai (SERI 8XXXX, analogas - SERI 1816 Rosya BILOUROSIA) TA K -MOP technologija (Service 8xxxxxxxxxxx, Seria 1830). Kitas simbolis, po kurio yra 8, reiškia: 0 – ant kristalo nėra ROM, 7 – 4K ROM su ultravioletiniais trintukais. Trečias simbolis: 3 – ROM yra ant kristalo, 5 – jei ROM nėra, tai ant kristalo yra ROM kaukė.

І so 80С51 - BIS k-MOS technologijai su kaukės ROM mikroschemoje, 8031 ​​- BIS n-MOS be programos atminties (ROM, RPOM) luste, 8751 - BIS n-MOS su rezidentu (įdėta ant lusto ) RPOM su nutrinamumu ultravioletiniais spinduliais. Iš tolo matome BIS 8751, yra problemų, dėl kurių reikia būti atsargiems dėl kitų grandinių savybių, nustatant parametrus, kurie buvo paskelbti pirmajam serijiniam BIS. Papildomą informaciją apie visas dabartines modifikacijas, jei reikia, rasite įmonės konsultantuose ir techninėje dokumentacijoje.

A. Žagalny Simbolių charakteristikos ir reikšmė

MCS51 šeimos pagrindą sudaro penkios mikrovaldiklio modifikacijos (identiškos pagrindinėms charakteristikoms), kurių pagrindinis skirtumas yra atminties programos įgyvendinimas ir veikimo intensyvumas (3.1 lentelė). Aštuonių bitų mikrovaldiklis, tai yra. Jis naudoja komandas aštuonių bitų žodžiams apdoroti, naudoja Harvardo architektūrą, pagrindinių šeimos įrenginių laikrodžio dažnis yra 12 MHz.

3.1 lentelė.

Mikro grandinės

Vidinė programos atmintis, baitas

Programos atminties tipas

Vidinė duomenų atmintis, baitai

Laikrodžio dažnis, MHz

Strumo suvartojimas, mA

MK 8051 ir 80C51 turi kaukę programuojamą ROM programos atmintį, kurios talpa 4096 baitai ruošiant kristalą ir yra atleidžiama iš masinės gamybos produktų. MK 8751 turi 4096 baitų RPOM su ultravioletinių spindulių trynimu ir yra naudojamas rankiniu būdu sistemos kūrimo etape su pažangiomis programomis, taip pat generuojant mažomis partijomis arba kuriant sistemas, kurios yra svarbios proceso metu.

periodinis koregavimas.

MK 8031 ​​ir 80C31 netrukdo išsaugotos programos atminčiai. Jie, kaip aprašyta prieš modifikaciją, gali išnaudoti iki 64 KB išorinės programos atminties ir efektyviai išnaudoti sistemose, kurioms reikia daug daugiau nei 4 KB lusto PZP programos atmintis.

Kozhen MK šeima turi nuolatinę duomenų atmintį, kurios talpa yra 128 baitai, nes galima išplėsti vidinę duomenų RAM iki 64 KB per vieną išorinę IC RAM.

    centrinis aštuonių bitų procesorius;

    programos atmintis 4 KB (tik 8751 ir 87C51);

    duomenų atmintis 128 baitai;

    Yra aštuonių bitų užprogramuoti I/O prievadai;

    du 16 bitų kelių režimų laikmačiai/dalytuvai;

    automatinių vektorių sistema su penkiais vektoriais ir dviem programiniais prioritetų lygiais;

    galutinė sąsaja, kurioje yra universalus dvipusis siųstuvas-imtuvas, veikiantis keturiais režimais;

    laikrodžio generatorius.

MK komandų sistemoje yra 111 pagrindinių komandų 1, 2 arba 3 baitų formatu. Mikrovaldiklis gali:

    32 RON teisinio pripažinimo registrai, sutvarkyti kaip bankai visuose registruose pavadinimais R0...R7, kurio banko pasirinkimą nurodo telefono numerių diegimo programa programos mi PSW registre;

    128 programiniai-keraminiai ensignai (bitų procesorius, dal. atstumas);

    specialiųjų funkcijų registrų rinkinys, kuriame yra MK elementų. Yra šie mikrovaldiklio veikimo režimai:

1). „Žagalne skidannya“. 2) Normalus veikimas. 3) Sumažintas energijos suvartojimo režimas ir tuščiosios eigos režimas. 4). Rezidento RPZP programavimo režimas yra toks.

Čia pagrindinis dėmesys skiriamas pirmiesiems dviem roboto režimams, o ataskaita, aprašanti MK robotų sandėlį visiems režimams, pridedama prie P1 priedo.

Bitų procesoriaus RON zona yra gyvenamojo OZP adresų erdvėje, kurios adresai svyruoja nuo 0 iki 80 val.

Viršutinėje zonoje yra nuolatinės RAM adresas ir išplėsti specialiųjų funkcijų registrai (SFR, specialiųjų funkcijų registrai). Šios reikšmės nurodytos lentelėje. 3.2.

3.2 lentelė.

Paskyrimas

vardas

Baterija

Registruotis B

Registras taps programa

Stack indikatorius

Duomenų demonstravimas. 2 baitai:

Žemas baitas

Aukštas baitas

Pertraukite prioritetų registrą

Registrą leidžiama nutraukti

Laikmačio / dozatoriaus režimų registras

Laikmačio / dozatoriaus registras

Laikmatis/prisijungimas 0. Didelis baitas

Laikmatis/užraktas 0. Mažas baitas

Laikmatis/prisijungimas 1. Didelis baitas

Laikmatis/užraktas 1. Mažas baitas

Paskutinis uosto valdymas

Nuosekliojo prievado buferis

Svetainės valdymas

* - Registruotis, ką pripažinti pagal bitovas kreipiantis

Dabar pažvelkime į SFR registrų funkcijas, kurios pateiktos 3.2 lentelėje.

Baterija ACC - Baterijų registras. Komandos skirtos robotams.

Jei esate už akumuliatoriaus, naudokite mnemoninį „A“, pavyzdžiui, MOV A, P2 . „ACC“ mnemonika naudojama, pavyzdžiui, kai akumuliatorius adresuojamas bitais. Taigi, simboliškiau, penktojo baterijos bito pavadinimas, kai ateis vikoristano surinkėjas A5M51: ACC. 5. .

Registras U . Vikorystvovaetsya pagal daugybos ir sub operacijos valandą. Dėl kitų nurodymų registrą galima peržiūrėti kaip papildomą superoperacinį registrą.

Registras Aš tapsiu programas P.S.W. Įdėkite informaciją apie programą ir dažnai įdiegiama automatiškai, atsižvelgiant į pasirinktos operacijos, kuri dažnai atliekama, rezultatą. Registro skaitmenų reikšmė aiškiai parodyta 3.3 ir 3.4 lentelėse.

3.3 lentelė.

Paskyrimas

3.4 lentelė.

Paskyrimas

Kovų paskyrimas

Prieiga prie bitų

Praporščikas perduotas. Nemažai aritmetinių ir loginių nurodymų laikui bėgant keičiasi.

Techninė ir programinė įranga

Papildomo perdavimo ženklas. Techninė įranga įdiegiama/pašalinama per valandą, pridėjus arba išduodant naują instrukciją perkėlimui arba pozicijoms įterpti 3 bite, kai rezultate sukuriamas mažiausias baitas (D0-D3).

Techninė ir programinė įranga

Praporščikas 0. Praporščikas, kuris yra nurodytas kaip koristuvach.

Programiškai

Programiškai

Vkazivnik darbo registrų bankas

Programiškai

0 bankas su adresais (00Н - 07Н) 1 bankas su adresais (08Н - 0FН) 2 bankas su adresais (10Н - 17Н) 3 bankas su adresais (18Н - 1FН)

Praporas pervadintas. Įdiegta arba išmesta aparatinė įranga, kai iš naujo įdiegiamos aritmetinės įterpimo instrukcijos

Techninė ir programinė įranga

Rezervas. Revenge triger, galima įrašyti ir skaityti, kurį galima vikorizuoti

Truputis pariteto. Techninė įranga yra išmesta arba įdiegta į odos ciklą su instrukcijomis, kaip įterpti suporuotą arba nesusietą akumuliatoriaus išsikrovimų skaičių, kuris yra nustatyme „1“.

Techninė ir programinė įranga

Pokazčikas krūva SP - 8 bitų registras, kuris yra padidinamas prieš įrašant duomenis į krūvą, kai išduodamos PUSH ir CALL komandos. Išmetus dėklo indikatorių įdiegiamas 07H, o dėklo sritis duomenų RAM prasideda adresu 08H. Jei reikia iš naujo priskirti kamino indikatorių, dėklo sritį galima perkelti į bet kurią vietą mikrovaldiklio vidinėje duomenų atmintyje.

Pokazčikas duoklė DPTR susideda iš didelio baito (DPH) ir žemo baito

(DPL). Keiskite 16 bitų adresą, kai atnaujinate į išorinę atmintį. Jūs galite vicorista-

arba kaip 16 bitų registras, arba kaip du nepriklausomi aštuonių bitų registrai.

Port0 - PortZ. Kartu su specialiųjų funkcijų P0, P1, P2, RZ registro bitais taip pat yra bitai - pagrindinių prievadų P0, P1, P2, RZ „pakrovimas“.

Buferis iš eilės uostas SBUF yra dvi registro dalys: perdavimo buferis ir priėmimo buferis. Kai duomenys įrašomi į SBUF, jie siunčiami į perdavimo buferį, o SBUF baito įrašymas automatiškai inicijuoja perdavimą per nuoseklųjį prievadą. Kai duomenys nuskaitomi iš SBUF, duomenys parenkami iš priėmimo buferio.

Registras laikmatis. Registruoti statymai (TH0, TL0) ir (TH1, TL1) patvirtinami 16-

Bitų saugojimo registrai laikmačiui/dalytuvui 0 ir laikmačiui/dalytuvui 1.

Registras valdymas Slaptai valdyti ir pertraukti sistemą galima naudoti specialių funkcijų IP, IE, TMOD, TCON, SCON ir PCON registrus.

apsilankymai / ligoninės ir nuoseklusis prievadas. Smarvė bus detaliai ištirta iš tolo.

RxD TxD INT0 INT1 T0 T1 WR

P1.2 P1.3 P1.4 P1.5 P1.6 P1.7

RST BQ2 BQ 1 E.A.

P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7

P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7

P0,0 P0,1 P0,2 P0,3 P0,4 P0,5 P0,6 P0,7

Veikdamas MK suteiks:

    minimali komandos pristatymo valanda – 1 µs;

    aparatinės įrangos dauginimas ir grindys su minimalia vikonanos valanda - 4 μs.

MK turi galimybę nustatyti vidinio osciliatoriaus dažnį į papildomą kvarcinį, LC žibintą arba išorinį generatorių.

Išplėsta komandų sistema suteiks baitų ir bitų adresavimą, dviejų ir dviejų dešimtųjų aritmetiką, perjungimo ir susiejimo/atsijungimo rodymą bei galimybę įdiegti loginį procesorių.

Svarbiausia ir galingiausia MCS51 šeimos architektūros savybė yra ta, kad ALU gali manipuliuoti vieno bito duomenimis, atlikdamas nuoseklias operacijas su 8 bitų duomenų tipais. Kai kurie programinės įrangos bitai gali būti įdiegti, pašalinti arba pakeisti papildomais, gali būti iš naujo įdiegti, patikrinti ir

3.2 pav. Išorinės konstrukcijos

mikrovaldiklis

vikorystuvatsya prie loginių skaičiavimų. Tai taip pat palaiko paprastų tipų duomenis (jei

Pagal daugelį tendencijų iš pirmo žvilgsnio galime atrodyti šiek tiek atgal, todėl MCS51 šeimos mikrovaldikliai ypač tinka programoms, kuriose naudojami valdikliai. Likę algoritmai daro prielaidą, kad yra įvesties ir išvesties Būlio kintamieji, kuriuos sunku įgyvendinti naudojant standartinius mikroprocesorius. Visa ši galia vadinama loginiu MCS51 šeimos procesoriumi. Tačiau toks patvarus MCS51 šeimos mikrovaldiklių ALU instrukcijų rinkinys puikiai tinka tiek apdorojimui realiuoju laiku, tiek daug duomenų reikalaujantiems algoritmams.

Mikrovaldiklio grandinės schema parodyta fig. 3.2. Pagrindinėje paketo versijoje yra 40 kontaktų DIP paketas. Pažvelkime į simbolių reikšmę.

Daugiau iš vysnovki maisto «0 IN" і "5 IN" , Kuriems vynams seka pagrindinis maistas. Strum informacija pateikta lentelėje. 3.1.

Visnovok "RST" - Iš naujo nustatykite mikrovaldiklį. Kai tai taikoma, pradedamas aktyvus aukštas lygis režimu miega nuolaida ir MK atlikite šiuos veiksmus:

Nustato kompiuterio komandų valiklį ir visus specialiųjų funkcijų registrus, įskaitant įkėlimo prievadus P0-P3, krūvos indikatorių SP ir SBUF registrą į nulį;

    Krūvos indikatorius įgyja didesnę nei 07H reikšmę;

    apsaugo nuo visų trukdžių, laikmačių-gydytojų darbą ir vėlesnius

    pasirenka BANK 0 RAM, paruošia prievadą P0-RZ duomenų priėmimui ir atpažinimui

bendrina ALE ir PME komponentus kaip išorinio sinchronizavimo įvestis;

      specialiųjų funkcijų PCON, IP ir IE registruose rezerviniai bitai nustatomi į atsitiktines reikšmes, o visi kiti bitai atstatomi į nulį;

      SBUF registras turi kintamų reikšmių.

      sumontuoja fiksavimo laikiklius prievadams P0-RZ "1".

Mikrovaldiklio registro būsena po atstatymo parodyta 3.5 lentelėje.

3.5 lentelė.

Informacija

Neatpažintas

0ХХХ0000V k-MOS 0XXXXXXXB n-MOS

RST piktograma turi alternatyvią funkciją. Per tai tiekiama rezervinė saugykla, skirta išsaugoti nuolatinę atmintį vietoje mikrovaldiklio RAM, kai pašalinama pagrindinė.

Visnovki BQ1, BQ2 Skirta prijungti kvarcinį rezonatorių, kuris nustato MK laikrodžio dažnį.

Visnovok EA“. (E išorinis A suknele išorės adresai) - instrukcijos, kaip įjungti raktų kodų skaitymo iš išorinės programos atminties režimą, kai taikomas aktyvus žemas lygis. Koncepcija turi alternatyvų tikslą (funkciją). Į naują įrenginį tiekiama įtampa ROM programavimui.

Visnovok PME (P rograma M atmintis E nable Dozvil atmintis programa) - keruvanos nuskaitymo iš programos atminties ciklui ir MK automatiškai aktyvuojamas odos mašinos cikle.

Visnovok ALE (A suknele L ilgio E nable Dozvil jaunas adresas) Perbraukia jaunesnę adreso dalį P0 prievade. Įrenginys suaktyvinamas, kai užprogramuojamas EPROM, ir į jį siunčiamas impulsų programavimo procesas.

MK gali tilpti keturios prievadų grupės: P0, P1, P2 ir P3. Prarasta 40 mikrovaldiklio kontaktų. Šie prievadai gali būti naudojami informacijos bitams įvesti ir išvesti, be to, jie turi savo specializaciją. Prievado funkcinė schema parodyta fig. 3.3. Prievade yra lauko tranzistorių išvesties jungikliai, jungtys su išėjimu, perjungimo funkcijos, D-trigerio terminalas ir valdymo logika. Į vidinę MK magistralę galima įrašyti vieną arba nulį. Šią informaciją galima pasiekti perjungiant MK išvesties mygtukus ir ekranus. Tuo pačiu metu tranzistoriai N ir N1 yra uždaryti, bet N2 yra atviri. Nulinėje stotyje N atveria kreivę -

Xia ir N2 užsidaro. Tuo metu, kai prievadas pasirenka alternatyvią funkciją, dėl specializacijos pakrovimo režimas yra išjungtas. Mikrovaldiklis taip pat gali paveikti prievado įterpimo ir išvesties režimą, nustatant išoriniu signalu. Tam tikslui MK surinkime yra specialios komandos, skirtos aktyvuoti polines. Skaitymui būsiu nusiųstas prie belaidžio prievado kaiščio.

buti anksčiau įrašytas

Vaizdas į vidų

Valdymas Zasuvka

Keisti funkcijas

Vcc

Savaitgalis

vienas. Kai įjungta eilutė „skaityti apkrovą“, išvestis yra vidurinė „I“, prieš kurią prijungiama ši linija

niy autobusas MK D Q

Įrašykite ties lazdele C Q

Skaityti dalykus

Vaizdas į uostą

Yra pakrovimo stotis, kuri įjungiama į vidinę MK magistralę

"Chitannya vyvedennya" - išorinių vyvedennya stovykla į uostą.

Uostas P0 - Universalus dvikryptis prievadas

prisistatymas-žiūrėjimas. Už sim prievado

fiksuota išorinių magistralių organizavimo funkcija adresu ir

Mažas 3.3. Mikrovaldiklio prievado funkcinė schema

duomenys, skirti išplėsti programos atmintį ir duomenų atmintį

mikrovaldiklis. Kai programa atsisiunčiama į išorinę atmintį arba įvykdoma komanda atsisiųsti išorinę duomenų atmintį, antraštės prievade įdiegiama jaunesnė adreso dalis (A0...A7), kurią suaktyvina aukštas ALE išvestis. Tada, įrašant duomenis į atmintį, informacija, kuri yra įrašyta iš MK vidinės magistralės, patenka į kaiščio prievadą P0. Tačiau skaitymo operacijose informacija iš pagrindinio prievado patenka į vidinę magistralę. Ypatinga P0 prievado savybė yra „ištraukiamasis“ tranzistorius N2, kuris užtikrina gyvybės tiekimą terminalui. Rašant į įrenginio kaiščių prievadą, reikšmės tiesiog perkeliamos į didelės varžos būseną, kuri yra būtina normaliam duomenų magistralės veikimui. Jei reikia, įjunkite maitinimą per bet kokių išorinių įrenginių išvestis ir perkelkite išorinius rezistorius iš Lanczug į išvesties prievadą.

Uostas P1 – universalus dvikryptis įvesties/išvesties prievadas be alternatyvių funkcijų.

Uostas P2 – universalus dvikryptis prievadas/įvestis/išvestis, kuri yra alternatyvi funkcija norint peržiūrėti didžiąją adreso dalį (A8…A15), kai perkeliama į išorinę atmintį.

Uostas P3 – universalus dvikryptis įvesties-išvesties prievadas, kuris taip pat perduoda įvairias alternatyvias funkcijas. Alternatyvios funkcijos įgyvendinamos tik tuo atveju, kai viena yra įrašyta į pagrindinio prievado kontaktus, kitais atvejais blokuojamas alternatyvių funkcijų įėjimas. Nustatykime juos pagal odą:

P3.0 RxD (R ead e X vidinis D ate, skaityti išorinius duomenis) – naujo nuoseklaus imtuvo įvestis.

P3.1 TxD (T ype e X vidinis D ate, perduoti išorinius duomenis) – gauto nuoseklaus priėmimo-perdavimo išvestis.

P3.2 INT0". (INT Pertrūkis, pertraukimas) – išorinio pertrūkio įvestis 0.

P3.3 INT1". - Išorinis pertraukimo įėjimas 1.

P3.4 С/T0 - Nulinio suaktyvinto laikmačio / dozatoriaus įvestis.

P3.5 C/T1 - Pirmojo aktyvuoto laikmačio / gydytojo įvestis.

P3.6 WR“. (W rite, write) – rodo įrašymo ciklo valdymą duomenų atmintyje.

P3.7 RD". (R skaityti, skaityti) – išvedamas skaitymo iš duomenų atminties ciklas.

Kaiščiai į prievadus P1, P2 ir P3 viename įrenginyje matys apie 0,2 mA srovę ir gaus 3 mA srovę esant nuliui, kaiščiai į prievadą P0 yra įtempti ir pastatas viename matys maždaug srovę. 0,8 mA ir paimkite 5 mA srovę ties nuliu . Trumpa informacija apie mikrovaldiklio komponentų priskyrimą pateikta 3.6 lentelėje.

3.6 lentelė.

Paskyrimas

Priskirta visnovkai

8 bitų dvikryptis prievadas P1. Įvesties adresai A0-A7 tuo metu, kai tikrinamas vidinis ROM (RPM)

Prisijungti prisijungimas

Zagalny išmetimo signalas. OZP rezervinio veikimo įvedimas iš išorinio korpuso (1816 m.)

8 bitų dvikryptis P3 prievadas su papildomomis funkcijomis

Prisijungti prisijungimas

Naujausi priėmimo duomenys – RхD

Naujausi perdavimo duomenys – ТхD

Išorinis pertraukimo įėjimas 0-INT0`

Išorinis pertraukimo įėjimas 1-INT1`

Laikmačio / dozatoriaus įvestis 0: - T0

1 laikmačio/dalytuvo įvestis: - T1

Blyksnio signalo išvestis duomenų įrašymo valandą iš išorinės atminties: - WR`

Stroboskopinio signalo išvestis nuskaitymo valandą iš išorinės duomenų atminties – RD`

Jungtys kvarciniam rezonatoriui prijungti.

išėjimo įėjimas

Žagalny visnovok

8 bitų dvikryptis prievadas P2. Adresų A8-A15 išvedimas roboto režimu iš išorinės atminties. Vidinio ROM tikrinimo režimu naujinimai P2.0 - P2.6 pasirenkami kaip įvesties adresai A8-A14. Visnovok R2.7 - leidžiama skaityti ROM.

Prisijungti prisijungimas

Leidžiama programos atmintis

Išvesties signalas, leidžiantis taisyti adresą. RPOM signalo programavimo valandą: PROG

Prisijungti prisijungimas

Roboto blokavimas iš vidinės atminties. Programuojant RPZP, duodamas UРR signalas

Prisijungti prisijungimas

8 bitų dvikryptis prievadas P0. Adresas / duomenų magistralė iš išorinės atminties. Duomenų išvestis D7-D0 vidinio PPP (IPPP) tikrinimo režimu.

Prisijungti prisijungimas

Vividennya v dzherel įtampa +5V

PASKAITŲ PLANAS

1. Įvadas

2. Aritmetiniai ir loginiai nurodymai

3. Duomenų perdavimo komandos

4. Būlio operacijos

5. Perėjimo instrukcijos

1. Įvadas

Komandų sistema MCS-51 palaiko vieną instrukcijų rinkinį, reikšmes iki 8 bitų įrenginių valdymo algoritmų įdiegimo. Galima naudoti lanksčius metodus, skirtus vidinei RAM adresui, bitų operacijoms atlikti su mažomis duomenų struktūromis. Suaktyvinta vieno bito keičiamų duomenų adresavimo kaip atskiro duomenų tipo sistema, leidžianti loginėse ir pagrindinėse Būlio algebros komandose pasirinkti bitų briaunas.

Adresavimo režimai : rinkti komandas MCS-51 palaiko tokius adresavimo režimus. Tiesioginis adresavimas: operandas nurodomas 8 bitų adresu instrukcijoje Tiesioginis adresavimas ribojamas jaunesne vidinės duomenų atminties ir registrų puse SFR. Netiesioginis adresavimas: Instrukcija adresuoja registrą, kad atitiktų operando adresą. Šis adresavimo tipas naudojamas išoriniam ir vidiniam OCP. 8 bitų adresams įterpti galima naudoti registrus R0і R1 pasirinktas registro bankas arba kamino indikatorius SP. 16 bitų adresavimui duomenų indikatoriaus registras pašalinamas DPTR.

Registro instrukcijos : Registruotis R0-R7 Dabartinis registrų bankas gali būti adresuojamas naudojant specialias instrukcijas, įterpiant 3 bitų lauką, kuris nurodo registro numerį pačioje instrukcijoje. Šio tipo laukas komandoje neturi adreso. Operacijos su specialiais specialiais registrais: veiksmų instrukcijos vikoristas atskiruose registruose (pvz., operacijos su baterija, DPTR ir kt.). Kai komandoje nurodomas operando adresas. VIN nurodomas operacijos kodas.

Be vidurinių konstantų : Konstanta gali būti dedama tiesiai šalia komandos po opcode.

Indeksinis adresavimas : Rodyklės adresavimas gali būti naudojamas tik norint pasiekti programos atmintį arba skaitymo režimu. Kuriuo režimu galite peržiūrėti lentelę programos atmintyje. 16 bitų registras ( DPTR arba programinės įrangos gydytojas) nurodo reikiamos lentelės bazinį adresą, o akumuliatorius – į įėjimo tašką prieš jį.

Rinkti komandasYra 42 mnemoninės komandos, kurios nurodo 33 sistemos funkcijas. Daugumos asamblėjos kalbos komandų sintaksė susideda iš mnemoninių funkcijų priskyrimo, po kurio seka operandai, nurodantys adresavimo metodus ir duomenų tipus. Įvairūs duomenų tipai ir adresavimo režimai nurodomi operandų įterpimu, o ne mnemoninių reikšmių pokyčiais.

Komandų sistemą mintyse galima suskirstyti į penkias grupes: aritmetines komandas; loginės komandos; perduoti komandas; bitų procesoriaus komandos; išmontavimo ir valdymo perdavimo komandos. Simboliai, naudojami komandų sistemoje, nurodyti žemiau.

Lentelė. Simbolių, naudojamų komandų sistemoje, reikšmės

Paskyrimas, simbolis

Užduotis

Baterija

Srauto pagrindu veikiančio registrų banko registras

Komandos nurodytas priskirto registro numeris

tiesioginis

Tiesiogiai adresuojamas 8 bitų vidinių duomenų adresas, kuris gali būti vidinės duomenų RAM vidurys (0-127) arba specialiųjų funkcijų registras SFR (128-255).

Netiesiogiai kreipiamas į 8 bitų vidinės duomenų RAM vidurį

8 bitų be vidurio Kas įtraukta į operacijos kodą (OPC)

duomenysH

Dideli vidutinių 16 bitų duomenų bitai (15–8).

duomenysL

Young įveikia (7–0) vidutinius 16 bitų duomenis

11 bitų paskirties adresai

adrL

Jaunų žmonių pripažinimo adresai

8 bitų poslinkio baitas su ženklu

Bitas iš tiesioginio adresavimo, kurio adresas yra COP, kuris yra vidinėje duomenų atmintyje arba specialiųjų funkcijų SFR registre

a15, a14...a0

Bitų adresai ir priskyrimai

Vietoj elemento X

Vietoj adreso, kuris saugomas elemente X

Elemento X išleidimas


+

*
IR
ARBA
XOR
/X

Operacijos:
papildomas
vidnіmannya
daugyba
žemiau
loginis daugyba (I operacija)
loginis lankstymas (ABO operacija)
Pridėta po 2 modulio (įskaitant ABO)
Elemento X inversija

Mnemoninių funkcijų priskyrimai yra unikaliai susieti su specifiniais adresavimo metodų ir duomenų tipų deriniais. Komandų sistemoje gali būti 111 tokių įrašų.

2. Aritmetiniai ir loginiai nurodymai

Jakas p pavyzdys aritmetiniai nurodymai, Pridėta operacija gali būti viena iš šių komandų.

PAPILDYTIA,7 F 16 - Vietoj to pridėkite skaičių 7, kad užregistruotumėte A F 16 išsaugokite rezultatą su registru A;

PAPILDYTIA,@ R0 – įtraukti į registrą A numerį, kurio adresą (@ – komercinis adresu ) yra išsaugotas registre R 0 (netiesioginis adresavimas), o rezultatą išsaugokite A registre;

PRIDĖTI A, R7– pridėti prie vietoj registro A vietoj registro R 7 ir išsaugokite rezultatą A registre;

PRIDĖTI A, Nr. 127- Įtraukti į registrą A numeris, taupymo adresas 127 ( # – skaičiaus simbolis) ir išsaugokite rezultatą registre T- Dėl A.

Visos aritmetinės instrukcijos atliekamos vienu mašinos ciklu, vienai instrukcijai INC DPTR(Duomenų poslinkio indikatorius DPTRį kitą baitą), kuris trunka du mašinos ciklus, taip pat daugybos operaciją, kuri trunka 4 mašinos ciklus. Bet kurį baitą vidinėje duomenų atmintyje galima padidinti arba sumažinti nenaudojant baterijos.

Instrukcijos MUL AB Baterijoje dauginami duomenys iš duomenų, esančių B registre, įrašant duomenis į A (jaunesnė pusė) ir B (vyresnė pusė) registrą.

Instrukcijos DIV AB padalinti (padalinys - poskyris) vietoj akumuliatoriaus į B registro reikšmes, paliekant perteklių B, o ypač akumuliatoriuje.

Instrukcijos DA A skirtas dviejų-dešimties aritmetinėms operacijoms (aritmetinėms operacijoms su skaičiais, pateiktais kodu du-dešimt). Nebijokite pakeisti skaičių du į dviykovo-desyatkovo, Be to, tai užtikrins teisingą rezultatą sudėjus du dviejų dešimtųjų skaičius.

užpakalis loginė komanda: Loginė operacija gali būti naudojama kaip viena iš šių komandų:

ANLA,7 F 16 - Logiška vietoj registro A padauginti iš skaičiaus 7 F 16 o rezultatas išsaugomas A registre;

ANLA,@ R1 - Logiška vietoj registro A dauginti iš skaičiaus, kurio adresai saugomi registre R 1 (netiesioginis adresavimas), o rezultatą išsaugokite A registre;

ANL A,R6- Logiška vietoj registro A dauginti iš registro R 6, išsaugokite rezultatą A registre;

ANL A,#53 – loginis dauginimas vietoj registro A iš numerio, parduotuvės adreso, kuris yra 53 16 ir rezultatas išsaugomas A registre.

Visos loginės operacijos su akumuliatoriaus vieta trunka vieną mašinos ciklą, kitos – du. Loginės operacijos gali būti atliekamos su bet kuria iš žemesnių 128 baitų vidinės duomenų atminties arba bet kuriame registre SFR (specialių funkcijų registrai) tiesioginio adresavimo režimu, nekeičiant baterijos.

Tada ciklinės saugojimo operacijos RL A, RLC A vietoj akumuliatoriaus perkeliamos vienu bitu į dešinę arba į kairę. Kairiosios ciklinės nuorodos atveju jaunesnis bitas perkeliamas į senesnę padėtį. Dešiniojo ciklinio sinuso atvejais įvyksta apsisukimas.

Operacija PAKEITIMAS A Dabartinis mainai tarp jaunų ir senų yra akumuliatoriuje.

3. Duomenų perdavimo komandos

Komanda MOV pask., src leidžia perkelti duomenis tarp vidinės atminties vidurio ir specialiųjų funkcijų registro srities SFR be vikoristano akumuliatoriaus. Tokiu atveju robotas su viršutine vidinio OZP puse gali veikti tik netiesioginio adresavimo režimu ir gali būti išplėstas iki registrų. SFR– nebepasiekiamas tiesioginio adresavimo režimu.

Visoms mikroschemoms MCS-51 Stackas yra prie pat nuolatinės duomenų atminties ir auga. Instrukcijos stumti Iš pradžių kamino indikatorių registro reikšmės yra didesnės SP, tada įrašo duomenų baitus į krūvą. Komanda stumtiі POP tik tiesioginio adresavimo režimu (rašoma arba atnaujinama baitai), tačiau dėklas visada pasiekiamas netiesioginiu adresu per registrą SP. Tokiu būdu krūva gali naudoti viršutinę 128 baitų duomenų atmintį. Šie žymėjimai apima galimybę naudoti eilučių komandas registrams adresuoti SFR.

Duomenų perdavimo instrukcijos apima 16 bitų perdavimo operaciją MOV DPTR,# data16, kuris naudojamas duomenų indikatorių registrui inicijuoti DPTR Po valandos pažiūrėsiu į lentelę programos atmintyje arba norėdamas pasiekti išorinę duomenų atmintį.

Operacija XCH A, baitas Jis nustatytas keistis duomenimis tarp akumuliatoriaus ir baitų, į kuriuos kreipiamasi. Komanda XCHD A, @Ri yra panašus į priekinį, tačiau operandų mainuose dalyvauja tik jaunesniems.

Norint pasiekti išorinę duomenų atmintį, naudojamas netiesioginis adresavimas. Kiekvienas vieno baito adresas turi vikorist registrą R0 arba R1 srautų registro bankas, o 16 bitų – duomenų rodymo registras DPTR. Bet kokiu būdu norint pasiekti išorinę duomenų atmintį, baterija atlieka informacijos priėmimo vaidmenį.

Norėdami pasiekti lenteles, esančias programos atmintyje, naudokite šias komandas:

MOVC A,@A+ DPTR ;

MOVC A,@A+ PC .

Kaip duomenų indikatorių registrui priskiriamas vikorijos lentelės bazinis adresas DPTR arba PC(programos gydytojas), o poslinkis paimtas iš A. Šios komandos naudojamos tik duomenims iš programos atminties nuskaityti, bet ne įrašymui į ją.

4. Būlio operacijos

Mikroschemos MCS-51įdiekite "Boolean" procesorių savo sandėlyje. Vidinėje RAM yra 128 tiesiogiai adresuojami bitai. Specialiųjų funkcijų registrų apimtis SFR gali palaikyti iki 128 bitų laukų. Biologinės instrukcijos apima išmaniuosius perėjimus, persiuntimą, išmetimą, apvertimą, „I“ ir „ABO“ operacijas. Visi šie bitai galimi tiesioginio adresavimo režimu.

Perkeltas bitas CF specialiųjų funkcijų registre „žodis taps programa P.S.W.» apibūdinamas kaip loginio procesoriaus vieno bito akumuliatorius.

5. Perėjimo instrukcijos

Perėjimo operacijų adresus surinkėjas nurodo atskirai ir pagal pamatines reikšmes programos atminties erdvėje. Išmaniųjų perėjimų adresai surenkami ties atskaitos poslinkiu – ženklo baitu, kuris perduodamas programiniam procesoriui. PC Vikonannya metu perėjimo protai. Ribos tarp tokių perėjimų yra nuo minus 128 iki 127, prieš pat pirmąjį baitą po nurodymo. Specialiųjų funkcijų registre „žodis taps programa“ P.S.W.» diena yra nulio ženklas, nurodymai tam JZі JNZĮsitikinkite, kad protas yra „tiksliai nulis“ kaip akumuliatoriaus duomenų tikrinimas.

Yra trijų tipų komandos, skirtos beprotiškam perėjimui: SJMP, LJMPі AJMP– Jie skiriasi adreso formatu ir paskirtimi. Instrukcijos SJMP užkoduoja adresą kaip akivaizdžiai pamirštą ir užima du baitus. Perėjimo atstumą riboja diapazonas nuo minus 128 iki 127 baitų vienai komandai SJMP.

Instrukcijose LJMP Vikorist identifikuoja paskirties adresą kaip 16 bitų konstantą. Bendra komanda sudaro tris baitus. Priskyrimo adresus galima priskirti bet kuriai programos atminties vietai.

Komanda AJMP Vikoristo 11 bitų adreso konstanta. Komanda susideda iš dviejų baitų. Kai ši instrukcija pašalinama, jaunesnis 11 bitų gydytojo adresas pakeičiamas 11 bitų komandos adresu. Penki vyresni programinės įrangos gydytojo bitai PC taps nepakeičiamas. Taigi perėjimas gali įvykti 2K baitų bloko viduryje, kuriame įterpiama komanda, einanti po komandos AJMP.

Yra dviejų tipų subprograminės komandos: SKAMBINTIі SKAMBUTIS. Instrukcijos SKAMBINTI Iškviečiamos subprogramos 16 bitų vikorist adresas. Bet kuriuo atveju subprogramą galima pašalinti iš bet kurios programos atminties vietos. Instrukcijos SKAMBUTIS Vikorist 11 bitų subprogramos adresas. Tokiu atveju iškviečiama paprogramė turi būti supakuota į vieną 2K baitų bloką su instrukcijomis SKAMBUTIS. Įžeidimo komandų parinktys dedamos į krūvą atakuojančios komandos adresu ir užburiamos programinės įrangos gydytojo PC nauja prasmė.

Paprogramė baigiama instrukcija RET, kuri leidžia grįžti prie nurodymų, kaip vykdyti komandą SKAMBINTI. Ši instrukcija rodo iš kamino grąžintą adresą ir įterpia jį į programos valiklį. PC . Instrukcijos RETI Vikoristovatsya apsisukti iš subprogramų, kad nutrauktų apdorojimą. Vienybė RETI peržiūrėti RET tuo tiki RETI Informuoja sistemą, kad apdorojimas baigtas. Jakščas viconijos metu RETI Kitų trukdžių nėra, tada jis yra identiškas RET.

Instrukcijos DJNZ skirtas keruvannya ciklams. Vikonanny ciklui N Kai reikės pridėti baitus ir reikšmes gydytojui N tada uždarykite kilpos korpusą komanda DJNZ, kuris rodo ciklo pradžią.

Komanda CJNE išlygina du savo operandus kaip nepaženklintus taikinius ir tada peršoka į jame nurodytą adresą, nes sulygiuoti operandai nėra lygūs. Jei pirmasis operandas yra mažesnis už kitą, bitas perkeliamas CF yra įdiegta "1".

Visos surinktos formos komandos užima 1, 2 arba 3 baitus.

UDC 681.5, 681.325.5 (075.8)

BBK 32.973.202-018.2 ir 73

Ščerbina O.N.Skaičiavimo mašinos, sistemos ir matavimai. Mikrovaldikliai ir mikroprocesoriai valdymo sistemose: cheb. Pos_bnik/O.M. Ščerbina, P.A. Nechaev-SPb.: Politechnikos institutas. Univ., 2012.-226 p.

Jame pakeičiamas nacionalinis techninių sistemų, energetikos ir elektrotechnikos vadybos srities mokymo ir specialybių standartas bei disciplinos „Skaičiavimas“ be mašinų, sistemų ar priemonių mokymo pradinės programos pakeitimas.

Esminė mikroprocesorių sistemų loginio organizavimo mityba nagrinėjama naudojant pagrindinę Intel MCS-51 mikrovaldiklių šeimos architektūrą. Aprašyta mikrovaldiklių programavimo naudojant Assembler ir CI kalbas technologija.

Tai gali būti naudinga studentams ir pažangių techninių žinių kūrėjams, procesų automatizavimo ir gamybos specialistams, taip pat mikroprocesorinių sistemų projektuotojams.

Taip pat tiesiogiai pakeičia bakalauro, inžinerijos ir magistrantūros studijų disciplinų „Mikrovaldikliai ir mikroprocesoriai valdymo sistemose“ bei „Elektroninės automatikos prietaisai“ nacionalinį standartą 1404 00 „Elektros energetika ir elektrotechnika“.

Sutikite dėl redakcinių ir redakcinių sprendimų

Sankt Peterburgo valstybinis politechnikos universitetas.

© Shcherbina A. N., Nechaev P. A., 2012 m

© Sankt Peterburgo valstija

Politechnikos universitetas, 2012 m

ISBN 978-5-7422-3553-8


Įėjimas.. 7

1 skyrius. MCS51 šeimos architektūra. 10

1.1 Dujų charakteristikos 10

1.2 Blokinė schema 11



1.3 Mikrovaldiklio komponentų paskirtis 8051 15

1.4 Atminties organizavimas 17

1.4.1 Programos atmintis (PPM) 18

1.4.2 Duomenų atmintis (DMS) 19

1.4.3 Specialiųjų funkcijų registrai. 20

1.4.4 Varantų registras (PSW) 23

1.5 Diegimas ir sinchronizavimas 26

1.6 Įėjimo ir išleidimo uostų organizavimas 27

1.6.1 Užkulisiniai reportažai. 27

1.6.2 Alternatyvios funkcijos. 27

1.7. 8051 šeimos laikmačiai / mikrovaldikliai. 28

1.7.1. Gydymo laikmačių struktūra. 28

1.7.2 Gydymo laikmačių veikimo režimai. trisdešimt

1.8. 32 nuoseklusis prievadas

1.8.1. Nuosekliojo prievado struktūra. 32

1.8.2. Aptarnavimo/kainos statuso registras SCON.. 34

1.8.3. PCON.. registras 36

1.9. 37 sistema

1.9.1. Pakeiskite sistemos struktūrą. 37

1.9.2 Vikonannya subprogramos perervaniya. 40

2 skyrius. 80C51GB mikrovaldiklio savybės.

2.1 Funkcinės savybės 42

2.2 I/O prievadai P0-P5 43

2.2.1 I/O prievadų veikimas. 43

2.2.2 Įrašymas uoste.

2.3 8XC51GB pertraukimo sistemos ypatybės.

Leidžiama/tvora nutraukti. 50

Nutraukite prioritetų valdymą. 51

Išoriniai trukdžiai. 54

2.3. Vuzol ADC 56

2.4. Aparatūros sargas 61

2.5. Atskleistas 63 laikrodžio generatoriaus gedimas

2.6. Programuotų gydytojų matrica RSA 64

2.6.1. PCA struktūra..64

2.6.2. Medicinos praktikos RSA registras (CMOD) 66

2.6.3. PCA (CON) medicininio valdymo registras 67

2.6.4. Lygiavimo/fiksavimo moduliai. 68

2.7. 76 nuosekliojo prievado išplėtimas

2.8. Laikmačiai / dozatoriai 79

8XC51GB grupės mikrovaldiklių išdėstymas.

3 skyrius. Programavimas MK 8051GB.

3.1. Programinės įrangos modelis 89

3.2 Duomenų tipai 93

3.3 Duomenų adresavimo būdai 93

3.4 Komandų sistema 95

3.4.1. Zagalny charakteristika. 95

3.4.2 Komandų tipai. 96

3.4.3 Operandų tipai. 97

3.4.4 Mikrovaldiklio duomenų nepaisymo komandos. 98

3.4.5 Aritmetinių veiksmų instrukcijos 8051. 101

3.4.6 Mikrovaldiklio 8051 loginių operacijų komandos. 104

3.4.7 Komandos operacijoms su 8051 mikrovaldiklio bitais. 106

3.5 Programos nustatymas 111

4 skyrius. ASM-51 kalbos programavimas. 112

4.2 Teksto programos įrašymas 113

4.3. Kalbos abėcėlė. 114

4.4 Identifikatoriai. 115

4.5 Skaičiai 117

4.6 118 direktyva

4.7 ASM51 paprogramės 122 įgyvendinimas

4.7.1 Mano ASM51 paprogramės-procedūros struktūra. 122

4.7.2 Keičiamų parametrų perkėlimas į subprogramą. 123

4.7.3 Mano ASM51 paprogramės funkcijos įgyvendinimas. 123

4.7.4 Apdorojimo procedūrų įgyvendinimas naudojant mano ASM51. 124

4.8 Struktūriškai užprogramuotas surinkėjas. 125

4.9 Modulinių programų transliavimo ypatybės. 126

4.10 Segmentų pasirinkimas 128

4.10.1 MK atminties padalijimas į segmentus. 128

4.10.2. Absoliučios atminties segmentai. 129

4.10.2 Perkelti atminties segmentai. 131

5 skyrius. Kalbos programavimas S-51. 134

5.1 Žagalnaya filmo 134 charakteristikos

5.3 Programos struktūra S-51 136

5.3. Elementi filmų programavimas S-51 138

5.3.1. Simboliai.. 138

5.3.2. Leksiniai vienetai, separatoriai ir kliringai. 141

5.3.3 142 identifikatorius

5.3.4 Pagrindiniai žodžiai. 143

5.3.5 Pastovus.. 143

5.4. Virazi filmų operatoriuose 146

programavimas C-51 146

5.5. Karinių operacijų prioritetai 148

5.6. Operatorių filmų programavimas C-51 149

5.6.1. Operatoriai priblokšti. 150

5.6.2 Operatoriai, ką pasirašyti. 150

5.6.3 Priskyrimo operatorius. 151

5.6.4 Protinis operatorius. 151

5.6.5 Struktūrinis operatorius (). 152

5.6.6 Kilpos operatorius. 152

5.6.7 Operatorius kilpai su „while“ ciklo keitimu. 153

5.6.8 Kilpos operatorius nuo minties apvertimo po kūno į „do while“ kilpą. 154

5.6.9. Operatoriaus pertrauka. 155

5.6.10 Tęsti operatorių. 155

5.6.11 Jungiklio pasirinkimo operatorius. 155

5.6.12 Eiti į operatorių. 157

5.6.13 Virazu operatorius. 158

5.6.14 Sukimo operatorius iš subprogramų grįžta. 158

5.6.15 Tuščias operatorius. 158

5.7. Priblokštas mano pokyčių programuojant C-51. 159

5.7.1. Priblokštas pokyčio. 159

5.7.3 Duomenų tipų paskirtis. 161

5.7.4 Skaičiai su plaukiojančiu vienkartiniu. 162

5.7.5 Nedori tipai, norint žaisti saugiai. 162

5.7.6. Apsvaiginti masyvai programoje C-51. 164

5.7.7. Struktūros.. 165

5.7.8. Ob'ednanya (sumishi) 166

5.8. „Vikoristannya“ demonstravimas movі C-51 167

5.8.1. Priblokšti demonstrantai. 167

5.8.2. Neįrašyti rodikliai. 168

5.8.3. Pasenusių ekranų atmintis. 169

5.9. Stulbinantis naujų tipų pasikeitimas 169

5.10. Duomenų inicijavimas 170

5.11. Vikoristannya subprograma u movі programavimas S-51. 170

5.11.1. Svarbi paprogramė.. 171

5.11.2. Programinės aparatinės įrangos parametrai 173

5.11.3. Persiųsti subprogramavimą 174

5.11.4 Viklik subprograma.. 176

5.11.5 Rekursyvaus skambučio paprogramė. 176

5.11.6 Pertraukite paprogrames. 177

5.11.7 Pokyčių sritys ir paprogramės. 178

5.12. Turtingos modulių programos 179

6 skyrius. Programų paruošimas integruotam Keil μVision2 branduoliui. 182

6.1 Mano projekto ASM-51 182 kūrimas

6.2 Mano projekto C sukurta programa, skirta pradiniam valdikliui integruotame Keil μVision2 188 šerdyje

7 skyrius. Pradinio valdiklio aprašymas. 199

7.1. Valdiklio struktūra 199

7.2. Adreso vieta 200

7.2.1. Padalijo atmintį. 200

7.2.2 Išorinė atmintis. 201

7.2.3. Vidinė duomenų atmintis. 202

7.3. Įdėjimo ir išėmimo prievadų sąrašas 202

7.4. Nuoseklus prievadas……………………………………203

7.5. Robotas z RKI 205

7.6. Valdiklio skydeliai…………………………………………………………………213

PRIEDAS P2 ATASKAITOS APIE LABORATORIUS ROBOTĄ STRUKTŪRA……..217

Priedas P3 Kodi mašinos komandos. 217

Literatūra... 224


Įeikite

Įsisavintose specialybėse, susijusiose su technologinių procesų automatizavimu ir gamyba, mikrovaldiklių kūrimas yra viena iš svarbių sekcijų.

Pasaulyje vyksta nuolatinis vystymasis ir vis naujų 16 ir 32 bitų mikrovaldiklių bei mikroprocesorių atsiradimas, tačiau didžiausia lengvųjų mikroprocesorių rinkos dalis vis dar prarandama 8 bitų įrenginiams. Remiantis visomis analitinių įmonių prognozėmis, 8 bitų mikrovaldiklių lyderio pozicija apšvietimo rinkoje išliks ir artimiausiu metu.

Šiuo metu tarp visų 8 bitų mikrovaldiklių MCS-51 šeima yra neabejotinas lyderis pagal veislių skaičių ir įmonių, gaminančių jos modifikacijas, skaičių. Pavadinimą jis gavo nuo pirmojo savo šeimos atstovo – mikrovaldiklio 8051. Be periferinių įrenginių komplekto, galimybė pasirinkti išorinę arba vidinę programinę atmintį ir priimtina kaina už Mums nerūpėjo šio mikrovaldiklio sėkmė m. Parduotuvė.

MCS-51 šeimos pranašumai:

· architektūra, kuri yra de facto standartas;

· Nepaprastas šeimos platumas ir galimybių įvairovė;

· Labai produktyvių ir pažangių procesorių versijų prieinamumas;

· Plačiai prieinamos programinės ir techninės įrangos parinkčių skaičius yra didelis;

· Lengvas techninės įrangos programavimas, įskaitant vidinės grandinės programavimą;

· Pagrindinių lustų pigumas ir prieinamumas;

· Galimybė įsigyti specialių valdiklių versijų ypatingiems protams

· Valdiklio versijų su sumažintu elektromagnetinių pereinamųjų procesų lygiu prieinamumas;

· Didelis populiarumas tarp vyresnės kartos vaikų tiek pasaulyje, tiek LIC šalyse;

· Architektūros palaikymas vadovaujantis pagrindiniais šviesos principais.

Ir, žinote, pagrindinis privalumas: įvaldžius pagrindinį šeimos lustą, nesunku pradėti dirbti su tokiais skaičiavimo monstrais kaip „Cygnal“, „Dallas Semiconductor“, „Analog Devices“, „Texas Instruments“ mikrovaldikliai.

MCS-51 šeimos sandėlyje yra daugybė mikroschemų nuo paprasčiausių mikrovaldiklių iki kelių sulankstomų. Šiandien yra daugiau nei 200 8051 šeimos mikrovaldiklių modifikacijų, kurias gamina apie 20 įmonių. Netrukus atsiranda naujų šios giminės atstovų variantų.

Pagrindinės plėtros kryptys yra šios:

· Padidinto greičio kodas (padidintas laikrodžio dažnis ir pertvarkyta architektūra);

· Sumažėjusi įtampa ir energijos sąnaudos;

· Padidėjęs RAM ir FLASH atminties naudojimas mikroschemoje su vidinės grandinės programavimo galimybe;

· Susipažinimas su mikrovaldiklių periferinių įrenginių sandėliu, skirtu sulankstytiems įrenginiams, tokiems kaip pavarų sistemos, CAN ir USB sąsajos ir kt.

MCS-51 šeimos mikrovaldikliai leidžia konfigūruoti įvairių įrenginių valdymą, taip pat įdiegti įvairius analoginių grandinių komponentus. Visos šios šeimos mikroschemos veikia su ta pačia komandų sistema. Dauguma jų montuojami į naujus korpusus su pagrindu, kurio išvengiama (pagrindo numeracija korpusui). Tai leidžia naudoti skirtingų įmonių - gamintojų mikroschemas, neperdirbant įrenginio ir programų schemų.

Pagrindiniai 51-osios šeimos rūšių gamintojai pasaulyje yra „Philips“, „Siemens“, „Intel“, „Atmel“, „Dallas“, „Temic“, „Oki“, AMD, MHS, „Gold Star“, „Winbond“, „Silicon Systems“ ir kt.

MCS-51 šeimos mikrovaldiklių analogų (Intel 8XC51FA, 8XC51GB, 80C152) su išplėstomis galimybėmis charakteristikos pateiktos lentelėje. 1.

B.1 lentelė

RAM ROM RSA ADC WDT T/C Skaidrė Kanalai funkcijos
Atmel: AT89C2051
- - - - UART Flash 2 KB
AT89C4051 - - - - UART Flash 4 KB
AT89S4D12 128 tūkst - - - UART, SPI Flash 4 KB
DALLAS puslaidininkis: DS5000FP
- - - + UART Bootstrap įkroviklis
DS5001FP - - - + UART Bootstrap įkroviklis
DS8xC520 16 tūkst - - + 2xUART 2 DPTR
SIEMENS: C505C
16 tūkst - + + UART, CAN 8 DPTR
C515C 64 tūkst - + + UART+ SSC+CAN 4 PWM, 8 DPTR
„Philips“: *89C51RA+
- + - + UART 2 DPTR, 4 lvl. rev., laikrodis, Flash 8K
P51XAG1x 8K - - + 2 UART
Intel: 8xC51RA
8K - + + UART 4 lygių IRQ, laikrodis
8XC196KC 64 tūkst 16 tūkst - + - UART 3 PWM
80C196KB 64 tūkst 8K - + - UART PWM

1 skyrius. MCS51 šeimos architektūra

8 bitų vieno lusto MCS-51 šeimos mikrovaldikliai įgijo didelį populiarumą tarp mikroprocesorinių valdymo sistemų kūrėjų, priklausomai nuo architektūros konstrukcijos. Mikrovaldiklio architektūra yra vidinių ir išorinių programinės įrangos prieinamų aparatinės įrangos išteklių ir komandų sistemų rinkinys. MCS-51 šeimos architektūra labai pagrįsta jos tikslais sukurti kompaktiškus ir nebrangius skaitmeninius įrenginius. Mikrovaldikliai, sujungiantys visas microEOM funkcijas į vieną mikroschemą, buvo vadinami vieno lusto EOM (SOC).

„Intel“ išleido beveik 50 modelių, paremtų operacine mikrovaldiklio „Intel 8051“ šerdimi. Tuo pat metu daugelis kitų įmonių, tokių kaip „Atmel“, „Philips“, pradėjo gaminti savo mikrovaldiklius, suskirstytus į MCS-51 standartą.

požeminės savybės

Pagrindinės šeimos savybės:

· 8 bitų centrinis procesorius (CPU), orientuotas valdyti kompiuterių įrenginius;

· CPU aprūpintas 8 bitų techninės įrangos dauginimo grandine;

· Tai, kad komandų rinkinyje yra daug operacijų, skirtų darbui su tiesiogiai adresuotais bitais, leidžia kalbėti apie procesorių darbui su bitų duomenimis (Bulio procesorius);

· Vidinė (pasukama ant kristalo) užmaskuoto arba perprogramuoto tipo programinė atmintis, kuri gali būti skirta skirtingiems kristalams, kurių tūris nuo 4 iki 32 KB, kai kuriose versijose kasdien;

· Ne mažiau kaip 128 baitai rezidento duomenų RAM, kuri naudojama organizavimui, registrų bankams, kaupimui ir duomenų saugojimui;

· Ne mažiau kaip 32 dvikryptės sąsajos linijos (prievadai), kurios gali būti individualiai sukonfigūruotos įvesti arba išvesti informaciją;

· du 16 bitų kelių režimų healeriai/laikmačiai, naudojami išoriniams procesams palaikyti, laiko laikrodžiams tvarkyti ir ryšio prievadui stebėti;

· Dvikryptis dvipusis asinchroninis imtuvas (UART), naudojamas komunikacijos kanalams tarp mikrovaldiklio ir išorinių įrenginių, turinčių platų informacijos perdavimo greičių, organizuoti. Є mikrovaldiklių techninės ir programinės įrangos integravimo į susijusią sistemą funkcijos;

· buitinė pirmumo laistymo sistema, kuri palaiko ne mažiau kaip 5 laistymo vektorius iš 4 vidinių ir 2 išorinių vandens čiurkšlių;

· Vidinis laikrodžio generatorius.

Blokinė schema

Valdiklio blokinė schema pateikta 1.1 pav. ir susideda iš šių pagrindinių funkcinių mazgų: valdymo bloko, aritmetinio-loginio bloko, laikmačio/dalytuvo bloko, nuosekliosios sąsajos ir pertraukimo bloko, programos valdiklio, atminties duomenų ir programų atmintis. Dvipusis ryšys vyksta per vidinę 8 bitų duomenų magistralę. Beveik visi MCS-51 šeimos atstovai buvo sukurti pagal šią schemą. Įvairios šios šeimos mikroschemos skirstomos į specialios paskirties registrus (registrus ir prievadų skaičių).

Laiko ir valdymo blokas- vibruojančių sinchronizavimo ir valdymo signalų paskirtis, siekiant užtikrinti integruoto OEOM blokų veikimo koordinavimą visais leistinais darbo režimais. Sandėlio valdymo bloką sudaro:

būsimas valandų intervalų formavimas;

įvesties-išvesties logika;

komandų registras;

elektros tiekimo valdymo registras;

komandų dekoderis, EOM valdymo logika.

Mažas 1.1. I8051 valdiklio blokinė schema.

Prietaisas valandų intervalams formuoti Skirta formuoti ir formuoti vidinius fazinius laikrodžio signalus, laikrodžio ciklus ir ciklus. Mašinos ciklų skaičius reiškia komandų sekos sudėtingumą. Beveik visos OEOM komandos vykdomos vienu ar dviem mašinos ciklais, išskyrus dauginimo komandas, kurių trivialumas vyksta keliais mašinos ciklais. Žymiai generatoriaus dažnis, kuris nustatomas per F r. Mašinos ciklo dažnis yra 12/F arba nustatykite 12 periodų generatoriaus signalui, kuris nustato. Įvesties-išvesties logika skirta priimti tokio tipo signalus, kurie užtikrina informacijos mainus iš išorinių įrenginių per įvesties-išvesties prievadus P0-P3.

Komandų registrasĮrašymo tikslas – išsaugoti pridedamos komandos 8 bitų operatyvinį kodą. Operacijos kodas komandų dekoderio ir EOM valdymo logikos pagalba konvertuojamas į komandos mikroprogramą.

Narystės kontrolės registras (PCON) Leidžia pakeisti mikrovaldiklio robotą, kad būtų pakeistas suvartojamos elektros energijos kiekis ir įvesties iš mikrovaldiklio lygis. Dar didesnį elektros energijos kiekio pokytį ir perkodavimo pasikeitimą galima pasiekti atjungus jį nustatantį mikrovaldiklio generatorių. Tai galima pasiekti apverčiant bitų registrą, susijusį su PCON. Versijai, pagamintai naudojant n-MOS technologiją (1816 serijos arba svetimos mikroschemos, kurių pavadinimų viduryje yra raidė „c“), PCON registro registre yra tik vienas bitas, užtikrinantis sklandų perdavimą nuoseklųjį prievadą SMOD, ir bus būti prijungtas prie elektros tinklo kiekvieną dieną.

Aritmetinis loginis vienetas (ALU) yra lygiagretus aštuonių bitų įrenginys, teikiantis platų aritmetinių ir loginių operacijų spektrą. ALU sudaro:

baterijų registrai, laiko taupymo registrai TMP1 ir TMP2;

PZP konstantos;

sumara;

papildomas registras (registras B);

baterija (ACC);

registras taps programa (PSW).

Registras akumuliatoriaus ir laiko taupymo registras- aštuonių bitų registrai, skirti užfiksuoti ir išsaugoti operandus operacijų su jais atlikimo valandai. Šie registrai nėra programiškai pasiekiami.

Nuolatinis ROM užtikrins pataisyto kodo generavimą po dešimties duomenų pateikimo, kaukės kodo bitų operacijų metu ir pastovaus kodo generavimą.

Lygiagretus aštuonių bitų sumator yra kombinacinio tipo schema su vėlesniu perkėlimu, skirta sudėjimo, sudėjimo ir loginių sudėjimo, daugybos, dviprasmiškumo ir tapatumo operacijų skaičiavimui.

Registruotis B- aštuonių bitų registras, kuris keičiamas daugybos operacijos metu. Dėl kitų nurodymų jis gali būti laikomas papildomu veiklos registru.

Baterija- aštuonių skaitmenų registras, skirtas gauti ir išsaugoti rezultatą, gautą atliekant aritmetines-logines operacijas ar operacijas.

Serijinės sąsajos blokas (SIP)įvesties organizavimo tikslai – vėlesnių informacijos srautų atvaizdavimas ir programos pertraukimo sistemos organizavimas. Sandėlio bloką sudaro:

PIP buferis;

logika keruvannya;

kontrolės registras;

perdavimo buferis;

pirminis buferis;

nuosekliojo prievado akceptorius;

nutraukti prioritetų registrą;

registrą leidžiama nutraukti;

Nutrūksta vėliavų apdorojimo logika ir vektorinės vibracijos schema.

Komandų skaitiklis (Programų skaitiklis) Paskirtis formuoti srieginį 16 bitų vidinės programos atminties adresą ir 8/16 bitų išorinės programos atminties adresą. Komandų saugojimo sandėlyje yra 16 bitų kompiuterio buferis, kompiuterio registras ir prieaugio schema (padidinta 1).

Duomenų atmintis (RAM) Sukurtas kas valandą informacijos, kuri surenkama programos diegimo proceso metu, išsaugojimui.

Portai P0, P1, P2, P3 Jis turi beveik dvikrypčius įvesties-išvesties prievadus, užtikrinančius OEOM informacijos mainus su išoriniais įrenginiais, sukuriant 32 įvesties-išvesties linijas.

Registracija taps programa (PSW) Informacijos apie LSA gamyklą išsaugojimo programos diegimo metu tikslai.

Programos atmintis (EPROM) Skirta programoms ir nuolatinės atminties įrenginiams (ROM) išsaugoti. Kai kurios mikroschemos turi sustingusias kaukes, kurias galima ištrinti ultravioletiniais spinduliais arba FLASH ROM.

Duomenų rodymo registras (DPTR) skirtas išorinės duomenų atminties 16 bitų adresui saugoti.

Krūvos indikatorius (SP) Tai aštuonių bitų registras, naudojamas sutvarkyti specialią duomenų atminties sritį (stack), kurioje galite greitai išsaugoti bet kokį atminties kiekį.

1.3 8051 mikrovaldiklio komponentų paskirtis(1.2 pav.)

· U ss – požeminio drotu ("žemės") potencialas;

· U cc - maitinimo įtampa +5 V;

· X1, X2 – jungtys kvarciniam rezonatoriui prijungti;

· RST - mikrovaldiklio įėjimas;

· PSEN – leidžiama išorinė programos atmintis būti matoma tik atnaujinus į naują ROM;

· ALE – išorinės atminties adreso strobe;

· EA – įgalinanti vidinę programų atmintį; 0 lygis, kai įvestis verčia mikrovaldiklį nutraukti programą tik iš išorinio PZP; Ignoruoti vidinį (kaip išliko);

Mažas 1.2. Smeigtukų 8051 priskyrimas.

· P1 – aštuonių bitų kvazi-dvikryptis įvesties/išvesties prievadas, kiekvienas prievadas gali būti programuojamas tiek informacijos įvedimui, tiek išvedimui, nepriklausomai nuo kitų kategorijų;

· P2 yra aštuonių bitų beveik dvikryptis prievadas, panašus į P1, kurio kaiščiai naudojami adreso informacijai rodyti, kai programa arba duomenys atsisiunčiami į išorinę atmintį (kaip naudojamas 16 bitų adresavimas). pasilikti). Be to, prievado kaiščiai pasirenkami, kai užprogramuojama įvesti aukštos eilės adresus į mikrovaldiklį;

· РЗ - aštuonių bitų kvazi-dvikryptis prievadas, panašus į P1, kurio prievadas gali būti aprūpintas daugybe alternatyvių funkcijų, tokių kaip naudojamos laikmačių veikimui, nuosekliojo įvesties-išvesties prievadas, pertraukimo valdiklis , ir išorinės programos atminties duoklės;

· P0 - multipleksuojantis aštuonių bitų dvikryptis prievadas informacijos įvedimui-išvedimui, per šį prievadą skirtingu laiku išvedamas žemas adreso ir duomenų baitas.

Atminties organizavimas

Visa MCS-51 serija naudoja Harvardo architektūrą, kad pateiktų adresuojamą programų ir duomenų atmintį. Atminties struktūra parodyta fig. 1.3.

Vidinės (rezidentinės) programos atminties (ROM, EPROM arba OTP ROM), kuri saugoma kristale, kiekis gali būti nustatytas į 0 (be ROM), 4K (pagrindinis kristalas), 8K, 16K arba 32K, priklausomai nuo mikroschemos tipo. Vartojimui galite išplėsti įdiegto išorinio PZP programos atmintį. Prieiga prie vidinio arba išorinio PZP priskiriama signalo reikšmėms išvesties EA (išorinė prieiga):

EA = V cc (gyvenimo įtampa) - prieiga prie vidinio PZP;

EA = V ss (žemės potencialas) – prieiga prie išorinės ROM.

Kristalams be PZP (be ROM) EA jungtys turi būti nuolat prijungtos prie V ss.

Mažas 1.3. MCS-51 šeimos atminties organizavimas

Stroboskopas išoriniam PZP nuskaitymui – (Programų saugyklos įgalinimas) generuojamas, kai programa atsisiunčiama į išorinę atmintį ir yra neaktyvi, kol atsisiunčiama į luste esantį PZP. Sistema pertraukia apatinių programų atminties adresų sritį. 8051 pagrindinio lusto architektūra palaiko penkias funkcijas:

· nutraukti du išorinius;

· du kartus pertraukti laikmačius;

· Nuosekliojo prievado pertraukimas.

Fig. 1.4 paveiksle parodytas programos atminties apatinės srities žemėlapis.

Mažas 1.4. Programos atminties apatinės srities žemėlapis

Programos atmintis (PPM)

8051 šeimos mikrovaldikliuose programų atmintis ir duomenų atmintis yra nepriklausomi ir nepriklausomi įrenginiai, adresuojami skirtingomis valdomomis komandomis ir signalais.

8051 mikrovaldiklio mikroschemoje esančios saugomos programų atminties tūris yra iki 4 KB (šeimoje iki 32). Perkeliant programas į naują atmintį, visi 8051 šeimos mikrovaldikliai visada naudos 16 bitų adresą, kuris suteiks prieigą prie iki 64 KB ROM. Mikrovaldiklis operacijos kodo ir operandų nuskaitymo valandą persijungia į programos atmintį (kompiuterio komandų procesorius), siunčia komandas baitui nukopijuoti iš programos atminties į bateriją. Naudojant šias komandas, duomenų kopijavimas adresuojamas programos, iš kurios bus skaitomi duomenys, atminties viduryje, gali sąveikauti su PC duomenų valdikliu ir specialiu dvibaičių duomenų registru DPTR.

Pagarbų atminimas (MP)

Luste saugomos duomenų atminties tūris yra 128 baitai. Išorinės duomenų atminties tūris gali siekti iki 64 KB. Pirmieji 32 baitai yra suskirstyti į keturis pirminės reikšmės registrų bankus, kurie yra pažymėti 0 banku - 3 banku. Kiekvienas iš jų susideda iš aštuonių registrų R0-R7. Programa bet kuriuo metu registrų adresavimo metu turi tik vieną registrų banką, kurio numeris yra trečiame ir ketvirtame žodžio bituose, taps PSW programa.

8051 mikrovaldiklio bitų atminties srities adresai

1.1 lentelė

Baitų adresai (šešioliktainis) Mūšių adresai pagal gretas
D7 D6 D5 D4 D3 D2 D1 D0
2F 7F 7E 7D 7C 7B 7A
2E
2D 6F 6E 6D 6C 6B 6A
2C
2B 5F 5E 5D 5C 5B 5A
2A
4F 4E 4D 4C 4B 4A
3F 3E 3D 3C 3B 3A
2F 2E 2D 2C 2B 2A
1F 1E 1D 1C 1B 1A
0F 0E 0D 0C 0B 0A
20h

Prarandamą adreso erdvę kūrėjas gali sukonfigūruoti savo nuožiūra: joje gali tilpti kamino, sistemos ir asmens duomenų sritis. Šių duomenų atmintį galima atkurti dviem būdais. Pirmasis būdas yra tiesioginis adresavimas į atminties vidurį. Kurio tipo adresas viduryje yra įvesties komandos operandas. Kitas būdas – netiesioginis papildomų indikatorių registrų R0 arba R1 adresavimas: prieš išvedant išorinę komandą, viduryje esančius adresus galima įvesti į vieną iš jų, kol reikės juos atidaryti.

Norint perkelti duomenis į išorinę atmintį, netiesioginis adresavimas reikalingas papildomiems registrams R0 ir R1 arba 16 bitų indikatorių registrui DPTR.

Dalis duomenų atminties yra bitų sritis, joje yra galimybė spręsti vidutinės atminties odos iškrovą naudojant specialias bitų komandas. Tiesiogiai adresuotų bitų adresai taip pat gali būti įrašomi tokiu pačiu būdu (AddressByte). (Iškrovimas). Šių dviejų adresavimo metodų aktualumą galima pamatyti lentelėje. 1.1.

Mikrovaldiklio architektūra

Sudėtinga mikrovaldiklių architektūra yra raktas į surinkimo tipo programavimą. Assemblerio struktūrą, jo nurodymų formatą, operandų adresavimą taip pat tiesiogiai lemia architektūra. Architektūros modifikavimo būdas yra toks:

· Programavimui prieinamų registrų rinkinio, jų funkcinės paskirties ir struktūros identifikavimas;

· pagrįstas operatyvinės atminties ir tvarkos organizavimas;

· Duomenų tipų žinojimas;

· Mašinų komandų Vivchenya formatas;

· Nutraukti darbo organizavimą.

MCS-51 šeimos architektūra labai pagrįsta jos tikslais sukurti kompaktiškus ir nebrangius skaitmeninius įrenginius. Visos MK funkcijos įgyvendinamos naudojant vieną mikroschemą. MCS-51 šeimos sandėlyje yra daugybė mikroschemų nuo paprasčiausių mikrovaldiklių iki kelių sulankstomų. MCS-51 šeimos mikrovaldikliai leidžia konfigūruoti įvairių įrenginių valdymą, taip pat įdiegti įvairius analoginių grandinių komponentus. Visos šios šeimos mikroschemos veikia ta pačia komandų sistema, dauguma jų montuojami naujuose korpusuose su išvengiama baze (korpuso bazių numeracija). Tai leidžia naudoti skirtingų gamintojų mikroschemas (pvz., Intel, Dallas, Atmel, Philips ir kt.) neperdirbant įrenginio ir programų schemų.

MCS-51 yra pagrįstas Harvardo architektūra, kur yra atskirtos adresuojamos programos atminties ir duomenų erdvės.

Valdiklio blokinė schema pateikta 2.3 pav. ir susideda iš šių pagrindinių funkcinių mazgų: valdymo bloko, aritmetinio-loginio bloko, laikmačių/dalytuvų bloko, nuosekliosios sąsajos ir pertraukimo, programų dozatoriaus komandų sąrašo) , duomenų atmintis ir atminties Yati programos

Dvipusis ryšys vyksta per vidinę 8 bitų duomenų magistralę. Pažiūrėkime į ataskaitą apie odos bloko reikšmę. Beveik visi MCS-51 šeimos atstovai buvo sukurti pagal šią schemą. Įvairios šios šeimos mikroschemos skirstomos į specialios paskirties registrus (registrus ir prievadų skaičių). Visų MCS-51 šeimos valdiklių komandų sistemoje yra 111 pagrindinių komandų 1, 2 arba 3 baitų formatu ir nesikeičia pereinant iš vienos mikroschemos į kitą. Tai užtikrins stebuklingą programų perkėlimą iš vienos mikroschemos į kitą.

Valdymo ir sinchronizavimo blokas(Timing and Control) tikslams generuoti sinchronizavimo ir valdymo signalus, kad būtų užtikrintas viso OEOM vienetų veikimo koordinavimas visais leistinais darbo režimais. Sandėlio valdymo bloką sudaro:


  • prietaisas valandų intervalams formuoti,
  • kombinuota įvedimo-pašalinimo schema,
  • komandų registras,
  • komandų dekoderis.

Savaitgaliais ir savaitgaliais signalus valdymo ir sinchronizavimo blokui:

1 PSEN- Atskiras programų atminties saugojimas;

2 ALE- Išvesties signalas, leidžiantis taisyti adresą;

3 PROG- Signalų programavimas;

4 E.A.– roboto blokavimas iš vidinės atminties;

5 VPP- Įtampos programavimas;

6 RST- Zagalny išmetimo signalas.

Įrenginys generuoja laikrodžio intervalus, reikalingus procesoriaus sustojimų sekai sinchronizuoti, palaiko mašinos ciklą ir užtikrina teisingą visų vidinių terminalų ir išvesties prievadų buferių veikimą. Mašinos ciklą sudaro šešios galutinės būsenos (būsenos) nuo S1 iki S6, kurios savo ruožtu yra suskirstytos į dvi fazes:

1 fazė (1 fazė – P1) ir 2 fazė (2 fazė – P2). Taigi mašinos ciklas gali būti matuojamas kaip valandinių intervalų seka S1P1, S1P2, S2P1, ..., S6P2. Fazės trukmė yra tokia pati kaip tiesioginių laikrodžio impulsų periodas, todėl mašinos ciklas trunka 12 laikrodžio periodų.

Mašinos ciklų skaičius reiškia komandų sekos sudėtingumą. Beveik visos komandos vykdomos vienu ar dviem mašinos ciklais, išskyrus dauginimo komandas, kurios gali būti vykdomos keliais mašinos ciklais. Įvesties-išvesties logika skirta priimti tokio tipo signalus, kurie užtikrina informacijos mainus iš išorinių įrenginių per įvesties-išvesties prievadus P0-P3.

Komandų registrasĮrašymo tikslas – išsaugoti pridedamos komandos 8 bitų operatyvinį kodą. Operacijos kodas komandų dekoderio ir EOM valdymo logikos pagalba konvertuojamas į komandos mikroprogramą.

Ryžiai. 2.3. Vieno lusto mikrovaldiklio Intel 8051 blokinė schema

(MCS-51 namai)

Aritmetinis-loginis prietaisas(ALU) yra lygiagretus aštuonių bitų įrenginys, teikiantis įvairias aritmetines ir logines operacijas. ALU sudaro:

  • laiko taupymo registrai -TMP1 ir TMP2,
  • ROM konstantos,
  • Sumatora,
  • papildomas registras - registras,
  • baterija - ACC,
  • žodžio registras taps programa (praporščikų registru) – PSW.

Laiką taupantis registras TMP1, TMP2- aštuonių bitų registrai, skirti užfiksuoti ir išsaugoti operandus operacijų su jais atlikimo valandai. Šie registrai nėra programiškai pasiekiami.

Nuolatinis ROM užtikrins pataisyto kodo generavimą po dešimties duomenų pateikimo, kaukės kodo bitų operacijų metu ir pastovaus kodo generavimą.

Lygiagretus aštuonių bitų sumator yra kombinacinio tipo schema su vėlesniu perkėlimu, skirta sudėjimo, sudėjimo ir loginių sudėjimo, daugybos, dviprasmiškumo ir tapatumo operacijų skaičiavimui.

Registruotis B- aštuonių bitų registras, kuris keičiamas daugybos operacijos metu. Dėl kitų nurodymų jis gali būti laikomas papildomu veiklos registru.

Baterija- aštuonių skaitmenų registras, skirtas gauti ir išsaugoti aritmetinių-loginių operacijų arba saugojimo operacijų rezultatą.

Registracija taps programa PSW (Programos būsenos žodis) Kad išsaugotume žodį, aš tapsiu komandomis, kurios bus pasirašytos. Įvedus daug ALU komandų, susidaro eilė operacijų simbolių (ženklų), kurie įrašomi į programos žodžių (PSW) registrą. Lentelėje 1 pateikiamas PSW vėliavėlių vertimas, simboliniai jų pavadinimai ir aprašytas mentalinis formavimas.

Blokas nuosekliajai sąsajai nutraukti – UART (universalus asinchroninis imtuvas/siųstuvas)įvesties organizavimo tikslai – vėlesnių informacijos srautų atvaizdavimas ir programos pertraukimo sistemos organizavimas.

Juk pertraukimas – tai daug laiko atimantis pagrindinio įvairių planuotų ir neplanuotų veiksmų atlikimo skaičiavimo proceso įgyvendinimas, kurį sukelia robotinė įranga ir programos.

Šie veiksmai gali būti paslaugų pobūdžio, gali būti vykdomi kartu su paslaugų programomis arba reaguojant į įprastas situacijas.

Komandų sistema OMEOM suteikia puikias duomenų apdorojimo galimybes, užtikrina loginių, aritmetinių operacijų įgyvendinimą, taip pat valdymą realiu laiku. Įdiegtas duomenų apdorojimas po bitų, tetradų (4 bitai), baitas po baito (8 bitai) ir 16 bitų duomenų apdorojimas.

MCS-51 šeimos BIS yra 8 bitų OMEOM: ROM, RAM, specialios paskirties registrai, ALU ir išorinės magistralės turi baitų struktūrą. Dviejų baitų duomenis apdoroja tik ekrano registras (DPTR) ir komandų valiklis (PC). Atkreipkite dėmesį, kad duomenų registras gali būti dviejų baitų registras DPTR arba du vieno baito specialios paskirties registrai DPH ir DPL. Komandų valiklis visada naudojamas kaip dviejų baitų registras.

OMEOM komandų rinkinyje yra 42 mnemoninės komandos, kurios nurodo 33 sistemos funkcijas.

Daugumos asamblėjos kalbos komandų sintaksė susideda iš mnemoninių funkcijų priskyrimo, po kurio seka operandai, nurodantys adresavimo metodus ir duomenų tipus. Įvairūs duomenų tipai ir adresavimo režimai nurodomi operandų įterpimu, o ne mnemoninių reikšmių pokyčiais.

Komandų sistemą galima suskirstyti į penkias grupes:

Yra šie adresavimo operandų tipai:

  • Netiesioginis registrų adresavimas, viršijantis bazinių ir indeksų registrų sumą

Komandų sistemoje naudojamų simbolių lentelė

Paskyrimas, simbolis Užduotis
A Baterija
Rn Srauto pagrindu veikiančio registrų banko registras
r Komandos nurodytas priskirto registro numeris
tiesioginis Tiesiogiai adresuojamas 8 bitų vidinių duomenų adresas, kuris gali būti vidinės duomenų RAM (0-127) arba SFR (128-255) vidurys.
@Rr Netiesiogiai kreipiamas į 8 bitų vidinės duomenų RAM vidurį
duomenys8 8 bitai be vidurio suteikiami įvesti prieš COP
duomenysH Dideli bitai (15–8) vidutinių 16 bitų duomenų
duomenysL Young įveikia (7-0) vidutinius 16 bitų duomenis
adr11 11 bitų paskirties adresai
adrL Jaunų žmonių pripažinimo adresai
disp8 8 bitų poslinkio baitas su ženklu
šiek tiek Bitas iš tiesioginio adresavimo, kurio adresas yra COP, kuris yra vidiniame duomenų OCP arba SFR
a15, a14...a0 Bitų adresai ir priskyrimai
(X) Vietoj elemento X
((X)) Vietoj adreso, kuris saugomas elemente X
(X)[M] Elemento X išleidimas

+
-
*
IR
ARBA
XOR
/X
Operacijos:
papildomas
vidnіmannya
daugyba
žemiau
loginis daugyba (I operacija)
loginis lankstymas (ABO operacija)
Pridėta po 2 modulio (įskaitant ABO)
Elemento X inversija

Mnemoninių funkcijų priskyrimai yra unikaliai susieti su specifiniais adresavimo metodų ir duomenų tipų deriniais. Komandų sistemoje gali būti 111 tokių įrašų. Lentelėje yra komandų sąrašas, išdėstytas pagal abėcėlę.

Mnemonika Funkcija Prapori
ACALL komanda Absoliučios wiklik subprogramos
Dodavannya AC, C, OV
Pridėta prie to, kas buvo perkelta AC, C, OV
AJMP komanda Absoliutus perėjimas
Loginis "aš"
„Aš“ yra logiškesnis pokyčiams C
Lygiavimas ir perėjimas, nes yra ne vienas C
CLR A komanda Baterijos kritimas
CLR komanda Skidannya bita C, bit
Komanda CPL A Baterijos inversija
CPL komanda Bitų inversija C, bit
Komanda DA A Dešimčių baterijų korekcija sulankstymui AC, C
DEC komanda<байт> Sumažėjimas
Komanda DIV AB Podil C, OV
Komanda DJNZ<байт>, <смещение> Mažėjimas ir perėjimas, kurie nėra lygūs nuliui
Komanda INC<байт> Prieaugis
INC DPTR komanda Duomenų indikatoriaus prieaugis
Komanda JB , Perėjimas, kai bitas yra nustatytas
JBC komanda , Perėjimas, kaip šio bito įterpimas ir ištrynimas
Komanda JC Perėjimas, jei perkėlimas įdiegtas
Komanda JMP @A+DPTR Netiesioginis perėjimas
JNB komanda , Perėjimas, jei bitas nenustatytas
JNC komanda Perėjimas, jei perkėlimas neįdiegtas
JNZ komanda Perėjimas, jei vietoj akumuliatoriaus nėra lygus nuliui
JZ komanda Perėjimas, jei vietoj akumuliatoriaus yra naujas 0
LCALL komanda Dovgy Viklikas
LJMP komanda Ilgas perėjimas
Persiųsti zminna-baitą
Persiųsti bitų duomenis C
MOV DPTR komanda, # data16 Anotuokite duomenų indikatorių 16 bitų konstanta
MOVC komanda A, @ A + ( ) Siųsti baitą iš programos atminties
Duomenų perkėlimas į išorinę atmintį (iš išorinės atminties)
Neveikia