DS89C450

De la Wikipedia, enciclopedia liberă

Microcontrolerul Dallas DS89C450 este un microcontroler compatibil familia Intel MCS-51 de mare viteza cu th 2 DPTRs, WDT, 2 porturi seriale, 32 linii I/O , 3 Timers/Counters, 13 intreruperi/3 nivele de prioritate, 64K Bytes Flash, 256 Bytes On-chip RAM, 1K Bytes Additional XRAM.

Informații generale[modificare | modificare sursă]

Un microcontroler este o structură electronică de dimensiune redusă, conținând în general un procesor, o memorie și periferice de intrare/ieșire programabile. Aplicațiile în care se utilizează microcontrolerele sunt cele de control automat, în domenii ca: producția auto, dispozitive medicale, comandă la distanță, precum și multe altele de același gen. În 1976 Intel creează primul microcontroler din familia MCS denumit MCS 48, standardul MCS 51 aparând in 1980. În momentul de față Intel nu mai produce astfel de microcontrolere, însa mari producători cum ar fi Atmel sau Infineon continuă crearea acestor dispozitive.

Caracteristici[modificare | modificare sursă]

DS89C450

  • Un ciclu de instructiuni în 30ns
  • Element în listă cu puncte
  • 1 Milion de instrucțiuni pe secundă per MHz
  • 3 time/countere de câte 16 biți;
  • 256 Scratchpad RAM
  • Selecteaza ROM între 0 și 65kb
  • Doi pointeri de date cu incrementare și decrementare automată
  • Memorie Flash 64kB (2x32kB)
  • Are Power Management Mode: - Programmable Clock Divider - Automatic Hardware and Software Exit
  • Watchdog Timer;
  • 2porturi seriale (Full-Duplex)
  • 13 surse de întreruperi (6 externe) pe 5/3 nivele de prioritați

MCS51

  • UCP pe 8 biți la 12 MHz
  • Capabilități de prelucrare booleană

(operator pe 1 bit)

  • 64K spațiu de adrese (date și program)
  • 128 bytes memorie internă de date
  • 4KB memorie internă program (ROM, none, EPROM)
  • 32 linii de intrare/ieșire organizate în 4 porturi
  • 2 timere/numărătoare pe 16 biți
  • 1 port serial (full duplex UART)
  • 5 surse de întrerupere (2 externe) pe 2 niveluri de priorități

Descriere[modificare | modificare sursă]

DS89C450 este un microcontroler compatibil familia Intel MCS-51. Include resurse standard cum ar fi 3 timer/ counters, port serial și 4 porturi I / O pe 8 biți. Are 64 kB flash în 2x32kB care pot fi in-system/inapplication și programați de la un port serial folosind ROM rezident sau software de load. Pentru încărcări mari flash-ul poate fi încarcat si folosind standard commercially available parallel programmers. În afară de viteză mai mare, DS89C450 include 1KB de memorie RAM de date, un al doilea port serial, șapte întreruperi adiționale, două niveluri suplimentare de prioritate întrerupe, timer watchdog programabil, monitor Brownout și power-fail reset. Viteza MOVX poate fi ajustată prin adăugarea de valori se întind până la 10 cicluri mașină pentru flexibilitate la selectarea memorie externă și periferice. Cu ajutorul unui mod de gestionare a energiei, consumă mult mai puțină energie prin încetinirea ratei de execuție a CPU de la o perioada la 1024 perioade pe ciclu de ceas. Aceasta poate fi dezactivată automat prin un swichback pentru a mări viteza de raspuns la intreruperi.

Prezentare generală de performanță[modificare | modificare sursă]

Dispunând de o bază complet reproiectată de mare viteză compatibil 8051, DS89C450 permite funcționarea la o mai mare frecvență de ceas. Acest nucleu actualizat nu are cicluri de memoria pierdute, care sunt prezente într-un standard 8051. Un convențional 8051 generează cicluri mașină folosind frecvența de ceas împărțită la 12. Cel mai rapid instrucțiunile executa de 12 ori mai rapid pentru același cristal frecvență (și de 24 de ori mai rapid pentru instrucțiuni INC data pointer). Această viteză îmbunătățire este redusă când se folosesc moduri de acces externe care necesita mai mult de un ciclu de ceas. Dual data pointer permite utilizatorului sa elimine instructiunile folosite cand schimbă blocurile de memorie.

Organizarea memoriei[modificare | modificare sursă]

Există trei zone distincte de memorie în DS89C450: registre ciornă, memorie de program, și memorie de date. Registrele sunt situate on-chip, iar programele și memoria de date pot fi on-chip, off-chip, sau ambele. DS89C450 au 64kB de memorie program on-chip, 1KB de spațiu on-chip de memorie de date care poate fi configurat ca spațiu program, utilizând PRAME bit în caracteristica ROMSIZE. DS89C450 utilizează o schemă adresare a memoriei, ce separă memoria deprogram de memoria de date. Segmente de program și de date pot fi suprapuse, deoarece acestea sunt accesate în maniere diferite. Dacă adresa maximă pe on-chip de memorie de program sau de memorie de date este depășită, DS89C450 accesează o memorie externa folosind expanded memory bus. Semnalul PSEN este active low pentru a servi ca chip enable sau output enable când se efectuează un cod de fetch din memoria externă a programelor. Instrucțiunile MOVX activează semnalul RD sau WR pentru external MOVX data memory access. Programul de memorie ROMSIZE permite software-ul să configureze dinamic adresa maximă de memorie de program on-chip. Acest lucru permite DS89C450 să acționeze ca o aplicație bootloader pentru o memorie externă. Acesta permite, de asemenea, utilizarea suprapusa a spatiile exterioare program. Dacă ROMSIZE este mai mare ca 0, cei mai mici 128 bytes din on-chip flash memory sunt folosiți să rețina reset și vectorii de intreruperi. 256 bytes de RAM on-chip sunt folosiți ca o zonă de registru și stiva de program, care sunt separate de memorie de date.

Configurația Pinilor[modificare | modificare sursă]