curs sisteme incorporate

Upload: baronescu-mihaita

Post on 15-Oct-2015

93 views

Category:

Documents


4 download

DESCRIPTION

sisteme incorporate curs

TRANSCRIPT

  • 5/26/2018 Curs Sisteme Incorporate

    1/95

    Introducere

    Vom ncerca s definim n continuare noiunea de sistem incorporat.Definiie: Orice dispozitiv care include un computer, dar care nu este el nsui un computer deuz general. Poate fi considerat un ansamblu ard!are i soft!are care va funciona autonom,fr intervenia omului.

    "lte posibile definiii#caracteristici ale sistemelor incorporate sunt:$istemele incorporate sunt sisteme la care calculatorul#microprocesorul sunt doar simplecomponente. Principalul scop al utilizrii microprocesorului este s simplifice construciasistemului i s ofere fle%ibilitate n proiectare i construcie.

    &n sistem incorporat este un sistem pe baz de microprocesor construit pentru a controlao funcie sau un domeniu de funcii particulare i care nu este proiectat pentru a fi programat dectre utilizatorul final. $ingura interaciune cu utilizatorul se face n scopul realizrii funciilorimpuse sistemului ' aplicaiei.

    &n sistem incorporat folosete o combinaie de ard!are i soft!are (o main

    computaional) pentru a realiza o funcie specific lucr*nd ntr+un mediu reactiv i care impunerestricii de timp.$istemele incorporate sunt sisteme de prelucrare a informaiei nglobate n produse mai

    mari i care nu sunt de obicei vizibile utilizatorului.n mod normal un sistem incorporat se obine prin incorporarea(includerea) unui

    calculator ntr+un sistem orientat pe o aplicaie.-el mai simplu model de incorporare a unui calculator ntr+un sistem este prezentat n

    figura ..

    Dup cum se observ, este necesar prezena interfeelor analogice pentru interaciuneacu mediul.

    Vom prezenta n continuare c*teva e%emple pe baza crora putem pune n evidenprincipalele caracteristici ale sistemelor incorporate (fig. ./).+ agenda electronic PD" (Personal Digital "ssitant)

    0ig. .. 1odel simplu de incorporare a calculatorului

  • 5/26/2018 Curs Sisteme Incorporate

    2/95

    + Videocamera digital+ 2elefon celular+ 2elevizor celular sau ciar analogic

    n cazul PD" se observ prezena unei interfee operator (touc+screen) dar aceasta estemai restr*ns dec*t n cazul sistemelor de uz general tocmai datorit faptului c trebuie sasigure realizarea unui numr restr*ns de funcii predefinite.

    Videocamera digital are mai multe microprocesoare. 2elevizorul analog benefiaciz deun procesor cel puin pentru controlul canalelor.&n alt e%emplu este reprezenta de sistemele de control ale unui automobil. &n automobil

    modern este dotat cu un mare numr de microprocesoare care asigur controlul motorului,controlul sistemului de fr*nare ("3$), controlul sistemului de siguran (airbag+uri), etc. nfigura .4. sunt prezentate principalele sisteme de control ale unui automobil."lte e%emple de sisteme incorporate

    Primul veicul de e%plorare a planetei marte 1ars 5over dotat cu 6 microprocesoare pe7 bii 8ntel 79-76 Prezentat n figura ..

    0ig. ./. ;%emple de sisteme incorporate

    0ig. .. 1ars 5over 0ig. .6.

  • 5/26/2018 Curs Sisteme Incorporate

    3/95

    0ig. .4. Principalele sisteme de control ale unui automobil

    &n sistem "ibo ;5$+99 5O3O28- DO< ' este dotat cu un microprocesar pe = de bii 'comple%itatea microprocesorului este impus de comple%itatea sarcinilor pe care trebuie s lerealizeze

    -aracteristic pentru toate aceste sisteme este faptul c informaia referitoare la modul defuncionare este prelucrat prin intermediul senzorilor (vitez, cuplu, acceleraie, temperatur,etc.) iar n urma procesrii acestor informaii microprocesorul acioneaz asupra sistemelor decontrol ale automobilului prin intermediul unor sisteme de e%ecuie (pompe, ventile, motoare,etc.)? at*t pentru prelucrarea informaiei c*t i pentru transmiterea comenzilor sunt necesareinterfee analogice (-@" i -"@).

    Caracteristici ale sistemelor incorporate

    + 0uncionalitate sofisticat, gradul de sofisticare fiind dependent de aplicaie?+ Operarea n timp real ' ciar dac nu este obligatorie, este caracteristic pentru multe

    din aplicaiile incorporate.+ -osturi de fabricaie sczute+ "plicaii dependente de procesor ' ciar dac nu sunt obligatorii sunt frecvente+ 1emorie restricionat

  • 5/26/2018 Curs Sisteme Incorporate

    4/95

    + -onsum mic ' multe din aplicaiile incorporate sunt destinate s funcioneze pebaterii.

    "m specificat mai devreme c o caracteristic important o constituie costurile deproducie sczute. "cestea au dou componente:

    + costurile pentru proiectarea i dezvoltarea produsului+ costurile de producie i v*nzare pentru fiecare unitate de produs.-osturile vor fi corelate cu numrul de uniti realizate: spre e%emplu o aplicaie foarte

    specific (precum controlul comenzilor n cazul unui avion) va presupune costuri de proiectaremari, fiind posibil utilizarea unor elemente ard!are i soft!are sofisticate i scumpe. Aa

    proiectarea unor telefoane celulare lo! cost ns se va avea n vedere n primul r*ndminimizarea costurilor.

    Sisteme de timp real

    "m specificat anterior c una dintre caracteristicile posibile ale sistemelor incorporateeste operarea n timp real. n cele ce urmeaz vom ncerca s definim caracteristicile operrii de

    timp real.O definiie simpl a operrii de timp real este aceea c operaiile trebuie finalizate nintervale de timp predefinite? altfel spus, funcionarea trebuie s respecte restriciile de timp.

    $e pot defini operaii:+ Bard real time ' la care depirea intervalului de timp determin defecte, catastrofe

    (constr*ngeri 52 critice la timp)+ $oft real time ' la care depirea intervalului de timp determin scderea

    performanelor (constr*ngeri 52 sensibile la timp)n cazul operrii 52 un rspuns garantat al sistemului trebuie s fie e%plicat fr a folosi

    argumente statistice.1ulte sisteme sunt sisteme multirat ' ele primesc informaii din e%terior la intervale de

    timp diferite i sunt prelucrate n intervale de timp diferite.

    Alte caracteristici ale sistemelor incorporate

    + 2olerana la defect ' unele aplicaii trebuie s continue s funcioneze ciar dacunele componente soft sau ard sunt scoase din funciune (controlul zborului unuiavion de e%emplu)

    + $iguran ' nu trebuie s provoace daune persoanelor sau proprietilor+ 0uncionalitate predefinit ' se pot realiza numai anumite funcii iar ad!are+ul i

    soft!are+ul cu care este dotat sunt destinate realizrii acestor funcii predefinite+ ;%ist posibilitatea ca anumite funcii predefinite s fie folosite foarte rar de+a lungul

    perioadei de utilizare altfel spus, foarte rar vor fi folosite toate funciile ce pot fiprogramate

    + ncrederea ' descris de proprietatea de a funciona corect la un moment dat+ 1entenabilitatea ' probabilitatea ca sistemul s lucreze corect o anumit perioad,

    dup apariia unor erori+ Disponibilitatea ' probabilitatea ca sistemul s lucreze corect un timp dat+ $ecuritatea ' asigurarea confidenialitii datelor prelucrate

    Tipuri de sisteme incorporate

  • 5/26/2018 Curs Sisteme Incorporate

    5/95

    ;%ist o mare diversitate de sisteme incorporate care realizeaz funcii foarte diferite deaceea sunt greu de gsit criterii clare de clasificare ale acestora. &n criteriu general acceptat estecel bazat pe funciile principale pe care acestea le implementeaz. "stfel se pot distinge:

    + $isteme incorporate similare calculatoarelor de uz general ' acestea au ca principalsarcin rspunsul la comenzile operatorului?e%emple agenda electronic, Cocurile video, etc.

    + $isteme automate ' ca rspuns la informaiile preluate din e%terior prin intermediulsenzorilor, sistemul reacioneaz prin comanda elementelor de e%ecuie? e%emple:controlul n bucl ncis pentru sisteme de timp real, controlul motoruluiautoveiculelor, controlului zborului, etc.+ Procesarea semnalelor: radar, sonar+ -omunicare i reele ' telefoane celulare, aplicaii 8@2;5@;2 (5O&2;5)

    Tipuri de funcii realizate de sistemele incorporate

    + Aegea de control+ $ecvenierea logic

    + Procesare semnale ' sunt necesare pentru procesarea semnalelor de intrare primite dela senzori

    + 8nterfaare specific aplicaiei ' depinde de tipurile de senzori i elemente decomand cu care se interfaeaz

    + 5spunsuri greite ' determin modul n care va aciona sistemul n caz de erori? estenecesar ca n caz de eroare s nu apar o avarie catastrofic (s cad sistemul) ci saib loc o deteriorare gradual (de e%emplu n cazul descrcrii bateriilor se emite unsemnal de avertizare care s comunice utilizatorului acest lucru.

    Arhitectura sistemelor incorporate

    Vom prezenta n continuare o aritectur mai complet. n figura .. este prezentat oastfel de aritectur. $e remarc prezena blocului de baz care acum se e%tinde fa de modelulsimplu prezentat anterior, la acest bloc de baz adug*ndu+se mai multe elemente e%terioare. n

    blocul de baz se remarc -P& care comunic cu memoria, n care este depus soft!are+ul cepermite controlul sistemului incorporat. $e remarc de asemenea -"@+ul prin intermediulcruia sunt preluate semnalele analogice de la senzori, precum i -@" prin intermediul cruia-P& transmite semnalele de comand spre elementele de e%ecuie.

    $e remarc de asemenea prezena n blocul de baz unei componente (special ard!are)necesar deoarece n unele cazuri, -P&+ul nu este capabil s e%ecute instruciunile soft+uluirespect*nd condiiile real time.-omponente e%terne

    + 8nterfaa operator ' este menit s asigure at*t primirea date (comenzi) de laoperatorul uman c*t i s+l informeze despre funcionarea sistemului. Va ficonstituit din butoane, ecrann sau un simplu afiaC cu A;D+uri

    + 3locul de diagnoz ' este destinat diagnosticrii sistemului trebuie determinate erorii modului n care acestea pot fi remediate? acest bloc trebuie s lucreze ciar i ncazul n care sistemul nu este activ pentru a putea testa funcionarea corect a tuturorcomponentelor sistemului

    + $isteme au%iliare ' asigur alimentarea cu energie electric a sistemului, rcirea iprotecia mecanic

  • 5/26/2018 Curs Sisteme Incorporate

    6/95

    + Protecia electromagnetic e%tern ' trebuie s asigure at*t protecia c*t i aspectule%terior al sistemului, aspect ce devine foarte important.

    Implementarea sistemelor incorporate

    -omponentele ard!arePrincipalele componente ard!are sunt:

    + element de procesare (microprocesor, microcontroler)+ elemente periferice

    o dispozitive de intrare ' ieireo 8nterfaare senzori i elemente de e%ecuie

    + 1emorie

    + 1agistral;lementele sunt similare unui sistem de calcul de uz generalDeosebirile sunt determinate de natura i numrul intrrilor ieirilor. "cestea sunt mult

    mai diverse i mai numeroase n cazul sistemelor incorporate dec*t n cazul unui sistem decalcul de uz general.;%ist dou componente soft!are principale

    + $oft!are de sistem ' care are funcii similare sistemului de operare din sistemul decalcul de uz general? trebuie remarcat c pe l*ng cerinele impuse sistemelor de operare de uzgeneral, n cazul sistemelor incorporate este necesar ca soft!are de sistem s respecte icerinele specifice sistemelor de timp real. O cerin special este legat de faptul c de obicei

    programarea (n limbaC de nivel nalt) se face pe un calculator care emuleaz sistemul incorporat

    i de aceea sunt necesare cross asambloare i cross compilatoare. "stfel un compilator pentruP8-+uri va rula pe un P-? acesta va compila programul scris (n - de e%emplu) i va genera uncod specific pentru P8-.

    0ig. .. "ritectura comple%a a unui sistem incorporat

  • 5/26/2018 Curs Sisteme Incorporate

    7/95

    n unele cazuri e%ist posibilitatea de a simula pe P- mediul (intrri, ieiri) i de a testacomplet funcionarea sistemului incorporat. n acest fel, codul n assambler generat pe P- estetransferat i utilizat n sistemul incorporat. De asemenea, pentru depanarea programului,sistemul incorporat este cuplat cu un P-. 0aptele preluate de la sistemul incorporat sunt preluatei interpretate pe P-.

    + soft!are de aplicaie ' este cel care individualizeaz sistemul incorporat respectiv.Dac acelai soft de operare poate lucra pe mai multe tipuri de sisteme incorporate, soft+ul eaplicaie este strict specific.

    $pre e%emplificare prezentm soft+ul unui termostat programabil ce controleaz centralatermic realizeaz cel puin trei sarcini: () monitorizarea temperaturii, (/) monitorizarea oreidin zi, (4) supravegerea tastaturii. 0ire de cod (tread) separate.

    Caracteristici ale soft-ului utilizat n sistemele incorporate

    + Programele trebuie s fie corecte din punct de vedere logic i temporal. Daccorectitudinea logic este caracteristic tuturor programelor, corectitudinea temporaleste impus de cerinele de aplicaie de timp real.

    + 2rebuie s asigure concurena fizic implicit deoarece un sistem incorporat poatelucra multiuser i multiproces.

    + $igurana n funcionare i tolerana la defect sunt obligatorii, soft+ul fiind cel caretrebuie s asigure aceste proprieti.

    + $oft+ul de aplicaie este specific i are un scop unic.+ 0uncionarea multitasEing i concurent este determinat de faptul c un sistem

    incorporat trebuie s poat lucra cu mai multe intrri i ieiri i cu evenimentemultiple n mod independent ' multe sisteme incorporate sunt obligate s lucrezemultitasEing. $epararea tasE+urilor simplific programarea, dar cere comutarea ntr+un anumit fel, nainte i napoi printre diferite tasE+uri (programare multitasEing).-oncurena reprezint aparenta e%ecuie simultan a mai multor tasE+uri

    Cerine n proiectarea sistemelor incorporate

    n proiectarea unui sistem incorporat trebuie urmrit rezolvarea unor probleme specificeprecum:

    + -*t de mult ard!are este necesar ' care este lungimea cuv*ntului pentru -P&,dimensiunea memoriei, etc.

    + -are va fi dimensiunea intervalului de timp care s asigure finalizarea operaiilor(intervalul de timp pentru finalizarea operaiilor n real+time) ' un ard mai rapid sauun soft mai inteligent ' un ard mai rapid nseamn costuri de producie mai mari ntimp ce soft+ul mai inteligent presupune celtuieli de dezvoltare mai mari. 2rebuie

    gsit un compromis care s asigure performane ma%ime cu costuri minime.+ -um s se minimizeze consumul de energie ' oprirea elementelor care nu suntnecesare, reducerea accesrii memoriei

  • 5/26/2018 Curs Sisteme Incorporate

    8/95

    Proiectarea sistemelor incorporate

    Vom prezenta n continuare c*teva principii i cerine preliminare referitoare laproiectarea unui sistem incorporat. 1enionm c aceste principii vor fi dezvoltate ulterior.

    n proiectare unui sistem incorporat trebuie luate n considerare diferite cerine iinteraciuni dintre performanele impuse asupra sistemului. Dintre principalele obiective ale

    proiectrii amintim:+ performane (vitez, limite de timp in 52)+ funcionabilitate i interfa utilizator+ cost de producie+ consum de energie+ dimensiune, form, protecie, etc.+ cerine funcionale ' ieirea ca o funcie de intrare

    n proiectarea i dezvoltarea sistemelor trebuie parcurse anumite etape, conform figurii .7

    ;%ist c*teva modaliti de proiectare:Proiectarea de sus n Cos ' se pornete de la descrierea cea mai abstract se lucreaz

    pentru detaliereProiectarea de Cos n sus ' se pornete de la mici componente la mari sisteme

    n proiectarea real cele dou modaliti sunt combinate

    Concluzii

    $istemele incorporate se regsesc peste tot n Curul nostru ' multe dintre aceste includ unard!are i un soft!are comple%

    Dezvoltarea unui sistem incorporat presupune rezolvarea unui mare numr de provocri$+au dezvoltat metodologii de proiectare care s aCute la gestionarea procesului de

    dezvoltare

    0ig. .7. ;tape ale proiectrii i dezvoltrii sistemelor incorporate

  • 5/26/2018 Curs Sisteme Incorporate

    9/95

    -&5$ /

    INTRODC!R! "NPROC!S# D!PROI!CTAR! A# SIST!$!#OR !$%!DD!D

    P58@-8P"A; "V"@2"F;"A; 1;2ODOAO

  • 5/26/2018 Curs Sisteme Incorporate

    10/95

    ;tapa 8 + -rearea "ritecturii

    D;08@85;" P5O3A;1;8 $8 " -;58@2;AO5 P5OD&$&A&8G Definirea produsului descrie ce va fi si ce va face acestaG Definirea cerintelor constituie primul pas al procesului, fiind ceia succesului n proiectareasistemelor electronice

    G Definirea cerintelor reprezinta baza documentatiei proiectuluiG Documentatia descrie ce veti construi' $pune oamenilor de marEeting ce produs vor avea de v*ndut' $pune proiectantilor cum sa implementeze produsul.

    G 5ezultatul acestei faze va fi o definire simpla a problemei, din punctul de vedere alutilizatorului (beneficiarul)

    ' $e va descrie problema, dar nu se vor sugera solutiiG D": 1iscarea vorbitorului nu va fi st*nCenita de cablul microfonuluiG @&: $e va folosi un microfon !ireless

    -8@; D;08@;$2; -;58@2;A; JG ntr+o companie foarte mare, definirea cerintelor va fi facuta de catre departamentul de

    marEeting, sau un client importantG ntr+o companie mica scita de definire a cerintelor se poate face de catre inginerii soft!are siard!areG Pentru un proiecte mici, proiectantul defineste cerintele-; 25;3&8; D;08@82 -" -;58@2; JG -;58@2; 0&@-28O@"A;

    ' 8ntrari si iesiri (interfata cu utilizatorul si mediul)' 0unctii si constr*ngeri de timp

    G -;58@2; @;+0&@-28O@"A;' Performanta.' -osturi.

    ' -onsumul de putere.' Dimensiune fizica si greutatea.

  • 5/26/2018 Curs Sisteme Incorporate

    11/95

    ' 0iabilitate, siguranta n functionare, mentenabilitate

    ;K;1PA& D; 0O51&A"5 D; -;58@2; 28P8-; Nume

    Scop

    GIntrari / Iesiricatre lumea e%terna' 2ipul datelor' -aracteristicile generale ale datelor' 2ipuri de dispozitive de interfata cu utilizatorul

    GFunctii.8ntrari L0&@-288L8esiriGPerformantaG Costuri de fabricatie."preciere grosiera, sau limita ma%ima.GPutere."preciere grosiera, sau limita ma%ima (baterii # retea J)GDimensiune / greutate fizica

    R!&$AT C!RINT!

    'aza RezultateDefinirea pro(lemei de proiectare si ela(orare cerinte

    -ercetare, analiza piata -onsultare utilizator. -ulegere de

    informatiigenerale de la clienti (utilizatori sau

    beneficiari)

    -erinte functionale si nefunctionale -ercetare

    LDefinirea corecta a problemeiLPropunere cerinteLDocument (formular) de cerinteL -rearea unui plan de testare

    ;K;1PA&: Barta

  • 5/26/2018 Curs Sisteme Incorporate

    12/95

    G Barta afiseaza modificarile corespunzatoarescimbarii pozitiei utilizatorului, sau ale dispozitivului de afisare a artiiG Barta mobila obtine pozitia sa de la sical size#!eigt no more tan / K = (6cm % 6 cm), / ounces (49 g)

    ;A"3O5"5;" $P;-808-"288AO5G $pecificatiile reprezinta o descriere functionala detaliata ce respecta cerintele. @u indica modulde implementare.

    ' $pecificatiile usureaza ntelegerea cerintelor' $pecificatiile permit urmarirea ndeplinirii cerintelor pe parcursul activitatilor de

    proiectareG &sureaza munca de proiectareG nlatura eventualele greseli, repetari sau omisiuni ale unor functiiLreluari ale proiectariiG $pecificatiile sunt deosebit de importante pentru proiecte comple%e, ce implica un colectiv decercetare Lsarcinile de proiectare pentru fiecare persoana din grup.G Presupun o analiza (interna) a conceptiilor de proiectare enuntate pentru a verifica dacaspecificatiile cerute sunt posibil de implementat

    ' re+utilizarea unor parti din alte proiecte anterioare permite asigurarea succesului nouluiproiect (functional si ca timp de terminare)G $pecificatiile pot fi privite ca un contract ntre beneficiar si proiectantG Documentele cu cerinte si specificatii pot fi folosite pentru crearea unuiplan de testare

    ' Documentul initial de cerinte defineste ce este nevoie este necesar a fi testata.G 2estarea este facuta, de obicei la proiectele mari, de un inginer de testareindependent de

    colectivul de proiectare, care elaboreaza un plan de testare pe baza cerintelor.G $epararea analizei cerintelor si specificatiilor este necesara adesea:

  • 5/26/2018 Curs Sisteme Incorporate

    13/95

    ' diferente mari ntre modul cum beneficiarii pot descrie sistemul si ceea ce au nevoiespecialistii pentru a proiecta sistemul.

    ' beneficiarii pot avea asteptari nerealiste cu privire la ceea ce se poate face cu bugetulalocat de ei.

    -O1PA;K82"2;" $P;-808-"288AO5G -omple%itatea si formalismul specificatiilor depind de tipul companiei proiectante si dedimensiunea produsului final.G $e poate realizeaza o modelare a specificatiilor n scopul proiectarii aritecturii si ulterior a

    proiectarii componentelor.' 1odelele sunt reprezentari conceptuale ale functionalitatii sistemului. 1odelul esteconstituit din obiecte functionale si reguli pentru compunerea acestor obiecte.

    G Descrierea grafica a specificatiilor' fie ntr+un limbaC de modelare,' sau prin definirea si desenarea unor diagrame de analiza conceptuala a sistemului carecuprind:

    G componentele ceie ale sistemului,G functiile de baza ale fiecarei componente,G interactiunea ' caile de comunicare ntre aceste componente siG lista serviciilor oferite utilizatorului sistemului

    ;%emplu diagrama conceptuala pentru servicii bancare simple ("listair -ocEburn)$ervicii mica banca:

    Verificare cont Pastrare bani n cont Verificare stocuri

    mprumuturi;%emplu diagrama conceptual

    R!&$AT SP!CI'ICATII

  • 5/26/2018 Curs Sisteme Incorporate

    14/95

    0aza 5ezultate;laborare $pecificatii

    Descriere de detaliu a comportariisistemului.

    O descriere detaliata, precisa, clara si fara

    ambiguitati a cerintelor Descriere functii si interactiune

    component s>stem 1odelarea functionalitatii sistemului "naliza conceptiilor de proiectare +

    revizie

    Document specificatii 0inalizarea descrierii modelul functional -rearea unui plan de testare

    ;K;1PA&: Barta

  • 5/26/2018 Curs Sisteme Incorporate

    15/95

    Proiectarea arhitecturala include+RSDefinirea componentelor sistemului. ;ste o estimare ce tine de e%periena i de cunoaterea

    caracteristicilor componentelor ard!are i soft!are propuse.RS$pecificaii ard!are # soft!are (e%ista opiunea ntre a cumpra i a construi prin forte proprii)

    n cazul &1A: modelare grafica a obiectelor componente. Obiectele corespund

    pieselor reale BN si $N ale proiectului.RS"legerea procesoruluiRS"legerea limbaCului de programareRS;valuarea sistemuluiRSProiectare ard!are i firm!areRS8ntegrare si testare funcional

    D! ,INT CONTG ;ste important de inut minte c !ard"arereprezint un cost recurent (repetat), ce se repeta

    pentru fiecare sistem v*ndut.G Soft"arereprezint un cost ne+recurent. 2rebuie dezvoltat o singur dat, dar nu apare ca i

    cost pe unitatea de produs, dec*t dac este o ta%a de licen de pltit.G "legerea #ariantei de implementareard!are:' -u microprocesoare, microcontrollere discrete i cablaC imprimat ' n aceeaicarcas, S%stem in Pac&age

    ' $istem distribuit' &n+sistem+pe+un+cip (S%stem'on'c!ipT $O-). Proiecte $O- pe baza de nuclee

    8P' "$8-, bazat tot pe nuclee 8P dar pentru aplicaii specifice si n numr e%trem de mare.

    $unt tot $o-, full custom design.

    "A;

  • 5/26/2018 Curs Sisteme Incorporate

    16/95

    ' compilator si editor de legturi' depanarea i punerea la punct a programelor prin debugger' asamblor pentru rutinele scrise n asamblare' simulator pentru rularea programelor (inclusiv pas cu pas prin debugger) iurmrirea coninutului registrelor interne, a memoriei, a porturilor de 8O, acircuitelor timer # counter, etc.

    ' transferul codului (program e%ecutabil) ctre memoria locala (flas, ;;P5O1) amicrocontrollerului

    ' 8nvestiii anterioare ale companiei (8D;), principii economice.G Necesit.i de /iteza de prelucrare0

    ' n cazul cel mai dezavantaCos al mai multor ntreruperi aflate n curs de servireprocesorul trebuie s funcioneze respect*nd specificaiile de proiectare.' Aungimea buclelor de interogare suficient de scurt ca s nu se piard niciodat un

    octet de la o intrare de date serial, sau de la oricare alt interfa.' 0recvena de ceas a procesorului nu trebuie confundat cu frecvena oscilatorului

    de ceas.

    ' $etul de instruciuni este de asemenea foarte important. n unele aplicaiiaritectura 58$- poate fi o capcan. RO$-a(ilit1

    ' 0las' ;P5O1' O2P' 5O1.

    GCosturi In Circuit pro2rammin2 Arhitectura memoriei Cerine de putere

    Cerine de mediu' &nele aplicaii impun ca 1P s lucreze la game e%treme de temperatura iradiaie.

    D!&3O#TAR!A 3!RSINII AR)IT!CTRA#!

    G Proiectarea componentelor ard!are i soft!areG 8ntegrarea sistemului prin conectarea componentelor proiectate.G Verificare si obinere de informaii de feedbacEG 8nspecia unui proiect se face de ctre o alt persoana dec*t proiectantul (detectareaomisiunilor, erorilor). 8nspecia se face pe baza unor prezentri scrise sau oraledin partea proiectantului. Documentaia:

    ' detectarea uoar a componentelor care conduc la neconformiti cu cerinele' comunicarea dintre membrii unei ecipe' elaborarea rapoartelor cu privire la proiect' elaborarea documentaiei finale a proiectului,' reutilizarea componentelor proiectului pentru alte proiecte, modificare, upgrade.

    G ;laborarea unui plan pentru inte2rarea 4i testarea componentelor

    P5O8;-2; A" @8V;A D; $8$2;1. 5;&A2"2;

    Structura sistemului n termeniicomponentelor mari i

    interconeiunile dintre acestea.

  • 5/26/2018 Curs Sisteme Incorporate

    17/95

    1odul de implementare a G $pecificaii pt. blocuri funcionalefunciilor si modul deimplementare a componentelorG "legerea procesorului G "legere 1--P&G "legerea limbaCului G "legere limbaCG Definirea blocurilor maCore G 5evizie de proiectare a sistemului

    ard!are i soft!areG Opiune ntre cumprare sauconstruire prin forte proprii.G Partiionare: 3locurifuncionale, B! # $N

    !5!$P#+ )arta 6PSDiagrama bloc ce definete ar!itectura pentru !arta mobila

    B"5DN"5;

    $O02N"5;

  • 5/26/2018 Curs Sisteme Incorporate

    18/95

    81PA;1;@2"5;" $8$2;1&A&8G 8mplementarea ard!are si soft!areG Proiectare de detaliu componente si construcie

    ' Pentru soft!are asta nseamn proiectarea de detaliu, scriere i depanare acodului

    ' Pentru ard!are nseamn proiectarea de detaliu, realizarea proiectului prototipului sitestarea circuitelor.G 8mplementare nucleu 1-&G -onstrucie i testare alte blocuri funcionale ale aritecturii. Daca la proiect lucreaz o singura

    persoana, atunci blocurile funcionale sunt completate secvenial. Dac e%ist mai muliproiectani acestea se pot rezolva n paralel.G $arcinile presupuse pentru fiecare bloc funcional includproiectare !ard"are de detaliu siconstruc$ie( proiectare soft"are de detaliu i construc$ie i apoi integrarea !ard"are'soft"are

    i testarea

    G Pot e%ista interdependen$entre proiectarea ard!are i soft!are. Partea ard!are nu poate fitestat p*n c*nd o parte din soft!are nu este gata, iar soft!are nu poate fi testat p*n c*nd

    partea din proiectul ard!are nu este gataG n mod tipic se construiete ard!are i se testeaz minimal mai nt*i. "poi maCoritatea

    efortului se concentreaz pe scrierea de soft!are i testarea soft!are pe ard!are.G Documentarea sistemului

    3!RI'ICAR! SI T!STAR!G $cop: verificare, testare, ncorporare de informaii de feedbacE pentru corectareaneconformitilorG 5evizii:

    ' 5eviziile sunt demonstra$ii( inspec$ii ale sc!emelor si inspec$ii alecodului

    ' 5evizia trebuie fcut de specialiti independeni, familiari cu proiectul(-;58@W;) i tenologiile, care s aCute la detectarea erorilor

    ' $e pot detecta omisiuni, eroriG 2estarea produsului final este o continuare a activitilor de testare din timpul proiectrii,acestea put*nd fi urmrite conform documentaiei elaborate la proiectare aritecturalG 2estare public + un proiect preliminar este distribuit unor beneficiar de la care se ateaptfeedbacE (Xbeta testing). 5eacia de la clieni poate duce nu numai la detectarea unor erori,scimbarea codului, dar i la scimbarea unor specificaii. @u e recomandat ntotdeauna ndomeniul ;m$.

    'RNI&AR! PRODS 'INA# SI $!NT!NAN,AG Prototipul final i integrarea constituie ultima faz a proiectrii.G ;ste faza n care toate blocurile funcionale sunt nglobate i se construieteprototipul!ard"are final. De asemenea modulele soft!are sunt combinate, iar codul este revizuit pentru arula ca o aplicaie de sine stttoare pe prototip. &nele din componentele ard!are si soft!areau fost deCa construite i testate pe un sistem de dezvoltare, nainte de aceasta faz

  • 5/26/2018 Curs Sisteme Incorporate

    19/95

    G n funcie de comple%itatea sistemului de dezvoltare utilizat aceasta ultima faza poate fi un pasuor de realizat, sau poate fi o operaie comple%.G n mediul competitiv actual multe din deciziile luate la proiectare se bazeaz pe re+utilizareaunor componente ale proiectelor deCa e%istente.)stfel ca ciclul de #ia$* al unui proiect continua

    i dup* produc$ie i el poate include mentenan$a produsului( raportarea bugurilor i ar!i#area.

    'RNI&AR! PRODS 'INA# 7I $!NT!NAN,AG Documentare+

    ' 8mportana at*t pentru componentele !ard"are, dar i mai important pentru celesoft"are. Permite detectarea uoar a componentelor care conduc la neconformit*$icucerinele, permite comunicareadintre membrii unei ecipe, elaborarea rapoartelorcu

    privire la proiect, elaborarea documenta$iei finalea proiectului, permite reutilizareacomponentelor proiectului pentru alte proiecte.

    ' Pentrusoft"aretoate informaiile referitoare la etapele anterioare, de la punereaproblemei, elaborarea algoritmului i a scemei logice (eventual diversele #ersiuni

    succesi#eindic*nd evoluia programului)

    ' $ursa programului (cu comentarii suficientepentru a se corela cu scemalogic), eventuale eantioane de date de intrare # ieire, dac este cazul

  • 5/26/2018 Curs Sisteme Incorporate

    20/95

    Curs 8Componentele sistemelor incorporateStructura cu e9empleObiective de instrucie

    Dup parcurgerea acestei lecii studenii vor+ cunoate structura+ specificaiile componentelor principale a sistemelor incastrate+ -unotine speciale despre calculatoare Xsingle board

    Cerine preliminare;lectronic digital, 1icroprocesoare

    Introducere

    Diferitele componente ale sistemelor incorporate pot fi grupate ieraric de la-omponente ale nivelelor sistemului la -omponente ale nivelelor tranzistoarelor. O componenta unui sistem (sau a unui subsistem) difer de ceea ce este considerat ca o component

    electronic standard. -omponentele standard sunt n mod normal dispozitive active cum ar ficircuite integrate, memorii, diode, tranzistoare, etc. mpreun cu componentele pasive precumrezistene, condensatoare i inductane. "cestea sunt elementele de baz de care este nevoie

    pentru monta o plac de circuit pentru o aplicaie oarecare conform unui proiect specific.Pe de alt parte, are componente active i componente pasive montate pe o plac de

    circuit care este configurat pentru o sarcin specific (fig. 4.). -omponentele sistem pot fi at*tmodule single funcionale c*t i module multifuncionale care servesc la realizarea blocurilornalt integrate a unui sistem. O component sistem poate fi una precum o simpl plac deintrri#ieiri digitale sau una comple%, ca un computer cu video, memorie, reea i intrri#ieiri,toate pe o singur plac. -omponentele sistem sunt realizate conform standardelor industriale isunt disponibile din multe surse pe plan mondial.

    0ig. 4.. 8erarizarea componentelor

  • 5/26/2018 Curs Sisteme Incorporate

    21/95

    Structura unui sistem incorporat

    $tructura tipic a unui sistem incorporat este prezentat n figura 4./. "ceasta poate ficomparat cu aceea a unui computer desEtop prezentat n figura 4.4. n mod normal ntr+unsistem incorporat memoria primar, unitatea central de calcul i multe componente perifericeincluz*nd convertoarele analog numeric sunt incluse ntr+un singur cip. "ceste cip+uri suntconstituite ca microcontrolere. "cesta este indicat prin linia punctat n figura 4./.

    Pe de alt parte un computer desEtop poate conine toate aceste circuite ntr+o singurplac P-3 (Po!er -ircuit 3oard) cunoscut n genere ca Xplac de baz. Deoarece acestecomputere manipuleaz cantiti mari de date n comparaie cu sistemele incorporate au fostelaborate modaliti de pentru stocarea i transferul mai rapid ntre -P& i memorie, -P& idispozitivele 8#O i ntre memorie i dispozitivele de intrare#ieire. $tocarea este desv*rit prinieftinirea memoriilor secundare precum ard disE+uri i -D5O1+uri. Procesul de transfer aldatelor este mbuntit prin incorporarea metodelor de acces a memoriilor cace multinivel imetodelor D1". n general pentru sistemele incorporate nu sunt necesare astfel de aranCamente.Din cauza numrului componentelor eterogene ntr+un computer desEtop sunt necesare surse de

    tensiune cu nivele de tensiune diferite (tipic Y/V, YUV, Y4,/6V). Pe de alt parte cip+urilepentru sistemele incorporate au nevoie de un singur nivel de tensiune (tipic H6V).

    0ig. 4./. $tructura tipic a unui sistem incorporat

    $cema structural a unui calculator desEtop

  • 5/26/2018 Curs Sisteme Incorporate

    22/95

    +emplu tipic

    &n computer single board ($3-)

    Vom prezenta caracteristicile acestui ($O-). Va fi o cale pentru nelegerea tipurilor maicomple%e $>stem on -ip ($O-).

    Diferite elemente i semnificaiile lor sunt urmtoarele:

    ,I) -0z or 1 20z lo" po"er C processor +34'compliant board "cesta esteprocesorul acestui $3-. V8" reprezint compania care produce procesorul, 441Bz sau

  • 5/26/2018 Curs Sisteme Incorporate

    23/95

    5 to 6153 of s%stem PC1 SD7) supported in a 189'pin DI soc&et ' emorie

    7)+ se monteaz pe socluri de =7 de pini standard pentru D811 (dual in line memor>modules) care permit montarea i demontarea comod a acestora

    Soc&et for up to 12iga 3%te bootable Dis&:nC!ip or 615;3 S7) or 13 +P7: 'Soclu

    pentru Dis&:nC!ip butabil mai mare de 12b sau 615&3 7am sau 1b +P7:

    "ceast memorie este 5"1 static sau ;P5O1 care conine sistemul de operare, av*nd acelairol ca i Bard disEHul pentru calculatoarele desE top

    cards supported ' Flas! compact =CF> de tip I sau II

    =card>

    "re rolul unui ard+disE sau flopp> semiconductor. 1emoria flas reprezint memorie de tip;;P5O1 (;lectrical> ;asable and Programmable 5ead Onl> 1emor>). 2ip 8 sau 88 reprezint

    formatHuri diferite, tipul 88 fiind mai compact i mai recent.PC' compatible support ?inu( @ido"s C+. N+< 4P( ,IS

  • 5/26/2018 Curs Sisteme Incorporate

    24/95

    suporta dispozitive de stocare mai mari de 7,board.

  • 5/26/2018 Curs Sisteme Incorporate

    25/95

    &na sau mai multe componente din cele prezentate anterior pot fi plasate pe o singur placsau pe un singur -8P. ntr+un s>stem incorporate tipic, microprocesorul, o mare parte a memoriei i

    principalele dispozitivele 8#O sunt realizate pe un singur -8P numit microcontroller. $istemeleincorporate lucreaz pentru realizarea unor scopuri specific i suport n general o programareminimal din partea utilizatorului. 8nteraciunea cu utilizatorul const dintr+o serie de comenzi caresunt e%ecutate de 52O$ prin apelarea unor subroutine. 52O$ este stocat n memoria flas sau n

    memoria read onl>. Pentru stocarea datelor temporare se vor utilize memorii care pot fi terse. Dac-P& este plasat pe acelai -8P cu memoria, atunci o parte din memorie poate fi utilizat ca memorietampon. "ltfel, un numr din regitrii -P& vor fi folosii ca memorie tampon. -P& comunic cumemoria prin adrese i bus+ul de date. Durata i controlul acestor scimburi de date sunt realizate deunitatea de control a -P& prin intermedioul liniilor de control. 1emoriile plasate pe acelai -8P cu

    procesorul au viteze de transfer mai mari Pe de alt parte, dispozitivele 8#O au diverse grade deviteze de lucru. "ceste viteze diferite de transfer sunt manipulate n moduri diferite de ctre

    processor. Dispozitivele cele mai lente au nevoie de circuite de interfaare. n general nu suntutilizate cip+uri mai rapide dec*t microprocesorul.

    "ritectura unui sistem icorporat tipic esate prezentat n figura 4.7. &nitatea ard!areconst din elementele prezentate anterior conectate cu un subsistem numeric precum i cu un

    subsitem analogic. $oft!are+ul sub forma unui 52O$ este resident n memorie.

    0ig. 4.. "ritecura unui sistem incorporat

  • 5/26/2018 Curs Sisteme Incorporate

    26/95

    Procesoare

    &nitatea de procesare central este cea mai important component a sistemelor incastrate.Depinz*nd de tipul aplicaiei procesoarele se pot clasifica n trei clase principale:

    . 1icroprocesoare de uz general/. 1icrocontrolere4. Procesoare digitale de semnal

    Pentru mai multe aplicaii specifice pot fi proiectate procesoare deosebite. n afar de cazul ncare cererea este mare costurile de proiectare i producere a procesorului vor fi mari. Prinurmare, n cele mai multe aplicaii, proiectarea este finalizat utiliz*nd procesoare disponibile pe

    pia. 2otui pot fi utilizate 0P) pentru a implementa uorprocese oarecare simple. &n 0P1emor>). $unt utilizate n special pentru proiectarea prototipurilor circuitelor integrate. Odat

    proiectat, cipul cablat este produs pentru obinerea vitezelor mai mari.

    Destinaii 2enerale ale procesoarelor

    &n procesor de uz general este destinat s rezolve probleme ntr+o larg gam de aplicaiiprecum comunicaii, automobile i sisteme incorporate industriale. "ceste procesoare sunt ngeneral ieftine pentru c sunt produse ntr+un numr foarte mare. 0iind ieftine, productorul

    poate investi mai mult pentru creterea proiectrii VA$8 cu caracteristici aritecturalembuntite. "stfel, performane precum consumul i dimensiunile pot fi mbuntite. n celemai multe cazuri, pentru astfel de procesoare uneltele de proiectare sunt furnizate de productor.De asemenea ard!areHul suport este ieftin i uor disponibil. 2otui, numai o parte acapabilitilor procesorului pot fi necesare pentru o proiectare specific i prin urmare sistemele

    incastrate per ansamblu nu va fi optimizat aa cum ar fi trebuit sa fie ,in ceea ce privetedimensiunea, puterea i sigurana n funcionare.

    $tructura unui procesor de uz general este prezentat n figura ..-alea de date (data pat) const dintr+un circuit pentru transformarea i stocarea temporar adatelor. -onine o unitate aritmetic i logic ("A&) capabil s transofrme datele n cursuloperaiilor precum adunare, scdere, _i logic, $"& logic, inversare, deplasare, etc. -alea de dateconine de asemenea regitri capabili s stoceze temporar datele generate de "A& sau obinuten urma operaiilor. 3us+ul (magistrala) intern de date susin datele i cile de date p*n c*nd

    bus+ul de date e%tern susine datele spre i de la memoria de date. Dimensiunea adresei de dateindic lungimea cuv*ntului -P&. O adres de date de 7 bii corespunde unui -P& pe 7 bii

    precum 7976.&nitatea de control este alctuit din circuite pentru e%tragerea instruciunilor program i

    pentru a deplasa datele spre, de la i prin calea de date n concordan cu instruciunile e%trase.;%ist un contor de program (P-) care pstreaz adresa urmtoarei instruciuni program cetrebuie e%trase i un registru de instruciuni (85) pentru pstrarea instruciunii e%trase. ;%ist deasemenea o unitate de sincronizare a registrului de stare i controlului logic. -ontrolerulgenereaz semnale de control necesare citirii instruciunilor din registru de instruciuni (85) icontrolului flu%ului de date pe calea de date. n general dimensiunea adresei este specificat deunitatea de control aceasta fiind responsabil s comunice cu memoria. Pentru fiecareinstruciune, controlerul realizeaz n mod normal mai multe multe etape precum determinarealocaiei din memorie a instruciunii, decodificarea ei, determinarea operanzilor, e%ecutarea

    instruciunilor pe calea de date i stocaarea instruciunilor. 0iecare etap dureaz c*iva cicli deceas.

  • 5/26/2018 Curs Sisteme Incorporate

    27/95

    $icrocontrolere

    n mod similar modului n care elemnetele unui calculator desEtop sunt montate pe o singurplac, prin montarea pe un singur cip a elementelor principale din aritectura unui computer seobine un microcontroler. Din cauza restriciilor impuse de realizarea circuitelor VA$8 cele mai

    multe funcii de intrare ieire sunt prezente ntr+o form simplificat. "ritectura tipic a unuimicrocontroler este preezentat n figura ./.`Casu$ele dublu !aurate reprezint* elemente ale microprocesorului.

    n figura ./. sunt prezentate urmtoarele elemente:2e 699 -ore conine -P& care const din deodificatorul de instruciuni, "A&, i seciunea decontrol program.

    Port i Port 5sunt necesare pentru a acesa codul e%tern i datele memoriei i pentrugenerri de coduri.

    2e acces control units este responsabil pentru selecia resurselor interne de memorie85"1 ' asigur 5"1+ul intrern care include regitri de uz general.K5"1 ' reperezint 5"1+ul intern adiional ce poate fi uneori inclus.8ntrerrupt -ontroler gestioneaz cererile de intrerupere de la unitile periferice interne,

    precum:+ 8nterfee seriale+ 2imere+ -onvertoare "#@+ &nitatea !atcdog (ND&)

    0ig. ... "ritectura unui procesor de uz general

  • 5/26/2018 Curs Sisteme Incorporate

    28/95

    + &nitatea de multiplicare+divizare (1D&)

    $emnalele e%terne ale acestor uniti periferice sunt disponibile pe portul 8#O paralel saupe pini dedicai.

    Procesoare de semnal numeric :DSP;

    "ceste procesoare au fost proiectate pe baza aritecurii Barvard modificate pentru a

    prelucra seemnale de timp real. -aracteristicile acestor procesoare sunt potrivite implementriialgoritmilior de procesare a semnalelor. O operaie foarte utilizat n acest caz este multiplicareatablorurilor. De e%emplu, convoluia i corelaia cer multiplicarea tablourilor. "ceasta esterealizat prin multiplicare urmat de acumulare i adunare. "ceste operaii sunt realizate deunitatea 1"- (1ultiplier and "ccumulator ). &neori aceasta este implementat ca 1"-Dunde D are semnificaie de Data move.n general instruciunile sunt realizate ntr+un singurciclu.

    8nstruciunile tip 1"-D pot fi e%ecutate mai rapid prin implementare paralel. "cestfapt este posibil prin accesul separat n paralel la memorie al programului i datelor. "ceasta

    poate fi realizat prin modificarea aritecturii ca n figura .4. "ceste uniti D$P utilizeaz ngeneral uniti de acces multiplu (1ultiple "ccess) i memorii multiport (1ulti Ported

    1emor>). 1emoriile cu acces multiplu permit mai mult de un acces la memorie ntr+o singurperioad de ceas. 1emoriile multiport permit adrese multiple i la porturile de date. "ceastavcrete de asemenea numrul aceselor pe unitate de ciclu de ceas.

    0ig. ./. "ritecutura unui microcontroler tipic (-699 produs de 8nfineon2ecnolog>,

  • 5/26/2018 Curs Sisteme Incorporate

    29/95

    "ritectura specific pentru cuvinte de instruciuni foarte lungi (VA8N+ Ver> Aong

    8nstruction Norld) este de asemenea potrivit pentru aplicaii de procesare a semnalelor digitale."cestea au un numr de uniti funcionale i ci de date aa cum se vede n figura ..8nstruciunile sunt e%trase din memorie? Operanzii i operaiile ce trebuie realizate de diferiteuniti sunt specificate n corpul instruciunii.&nitile funcionale multiple mpart un registrumultiport pentru e%tragerile de operanzi i stocarea rezultatelor. "ccesul aleatoriu paralel laregitri este posibil prin intermediul barei ncruciate de citire#scriere (5ead#Nrit! -ross 3ar).;%ecuia n unitatea funcional este finalizat concutrent cu operaiile de ncrcare#salvare adatelor ntre 5"1 i regitri.

    $icroprocesor /ersus microcontroler

    &n microprocesor este unitatea central de prelucrare a unui computer de uz general.Pentru a realiza un microcalculator complet este necesar s fie adugate elemente precummemorii (5"1 i 5O1), decodificatoare de memorie, un oscilator i un numr de dispozitivede intrare ieire. &tilizarea principal a procesorului este s citesc date, s realizeze calcule

    0ig. .4 "ritectur Bardvard modificat

    0ig. .. 1emorie cu port dual

    0ig. .6. Diagrama bloc pentru aritectura VA$8

  • 5/26/2018 Curs Sisteme Incorporate

    30/95

    complicate cu aceste date, i s stoceze rezultatele pe dispozitive de stocare corespunztoaresau s le afieze pe displa>. "ceste procesoare au o aritectur comple%, cu multiple etape de

    prelucrare succesiv i paralel. 1emoria este mprit n trepte precum cae, multinivel i5"1. Perioada necesar dezvoltrii microprocesoarelor este mare datorit comple%itii foartemari a proiectrii circuitelor comple%e VA$8.

    Proiectarea microcontrolerelor este condus de dorina de a realiza o fle%ibilitate ie%pandare ma%im. 1icrocontrolerele au n mod uzual 5"1 i 5O1 sau (;P5O1) on cip lacare se adaug ard!are 8#O on cip petru a reduce numrul cip+urilor la unul singur. -aurmare a a utilizrii ard!are+ului on cip pentru 8#O, 5"1 i 5O1 rezult -P& cu

    performane destul de reduse. De asemenea, microcontrolerele au adesea incluse timere pentrugenerarea ntreruperilor i care pot fi astfel utilizate cu -P&, i "#D, D#" on cip sau porturile

    paralele pentru a genera 8#O strict controlate n timp. Principala utilizare a microcontrolereloreste de a controla operaiile unei maini utiliz*nd un program fi%at care este stocat n 5O1 icare nu se modofic de+a lungul duratei de via a sistemului. 1icrocontrolerul este conceput

    pentru a avea datele dela i la pinii proprii? aritectura i setul de instruciuni sunt optimizate smanipuleze datele att pe bit c*t i pe octet.

    Diferena dintre microprocesor i microcontroler este foarte bine e%emplificat prin faptulc cele mai multe microprocesoare au multeoperaii pentru a muta date din memoria e%tern la-P& n timp ce microcontrolerele pot avea una sau dou. Pe de alt parte, microprocesoarele auuna sau dou tipuri de instruciuni pe bit n timp ce microcontrolerele vor avea multe astfel detipuri.

    0ig. .=. $istem cu microprocesor

    0ig. .. 1icrocontroler

  • 5/26/2018 Curs Sisteme Incorporate

    31/95

    $icroprocesoare /ersus DSP

    Principalele caracteristici ale D$P+ $unt microprocesoare specializate pe aplicaii de procesare a semnalelor+ $unt bazate pe aritectura Barvard+ 5ealizeaz de la dou la patru accesri de memorie pe ciclu+ Bard!are+ul specializat realizeaz operaiile aritmetice de baz ntr+un singur

    ciclu+ "u un set foarte limitat de instruciuni caracteristice $81D ($ingle 8nstruction

    1ultiple Data) foarte comple%e i specializate+ Operaii multiple per instruciune+ "dresare specializat(autoincrementare, circular, prin inversarea biilor)+ ntreruperile sunt dezafectate pentru durata unor operaii+ "u un numar mic (sau de loc) de regitri tampon+ 0oarte rar au caracteristici dinamice

    + Port serial sincron

    -aracteristicile procesoarelor de uz general+ $unt uniti centraule pentru P-+uri NorE+station etc.+ $e bazeaz pe aritectura von @e!mann+ n mod normal se realizeaz acces per ciclu+ n cazul instruciunilor de uz general se realizeaz o operaie per instruciune+ 1od de adresare de uz general+ @umai cicluri soft!are+ 8ntreruperile nu pot fi dezafectate

    + 5egistrii tampon sunt utilizai fercvent+ $e utilizeaz o arie larg de periferice i dispozitive 8#O att oc cip cat i off

    cip.+ Port serial asincron

    0ig. .7. Organizarea memoriei D$P

    0ig. .]. Organizarea memoriei n procesoarele de uz general

  • 5/26/2018 Curs Sisteme Incorporate

    32/95

    $emoria

    1emoria asigur procesorului necesitile de stocare pe durat scurt i lung n timp ceregitrii asigur numai cerinele de stocare pe termen scurt. n cazul aritecturii Princeton peacelai suport poate fi stocat att programul c*t i datele n timp ce n cazul aritecturii Barvard

    programul i datele ocup blocuri de memorie separate. Primul mod conduce la o aritectursimpl n timp ce cel de+al doile impune dou cone%iuni separate i de aici datele i programul

    pot conduce n paralel la procesare paralel. Procesoarele de uz general au aritectur de tipPrincenton.

    1emoria poate fi 5ead+Onl>+1emor> (5O1) sau 5andom "ccess 1emor> (5"1). Potfi ncastrate n cip+ul procesorului sau pot fi e%terne. 1emoria on cip este mai rapid dec*tmemoria e%tern. Pentru a reduce timpul de acces poate fi realizat o compie local a unei

    poriuni de memorie care poate fi pstrat ntr+o zon de memorie mai mic dar mai rapid,numit memorie cas. 1emoria poate fi clasificat n memorie dinamic i memorie static.

    1emoria dinamic disip mai puin putere i prin urmare potae fi realizat mai compact i maiieftin, timpul de acces ns este mai mare n cazul memoriei dinamice dec*t n cazul memorieistatice. n 5"1+ul dinamic (D5"1) data este meninut prin operaii de regenerri periodice ntimp ce n memoria static )$5"1) aceasta este reinut continuu. $5"1 este mai rapir dec*tD5"1+ul dar consum mai mult. 1emoria intermediar cas este de tip $5"1.

    Dispoziti/e de intrare ie4ire 4i chip-uri de interfa.

    $istemele incorporate de timp real interacioneaz cu mediul i utilizatorii prinintermediul unui ard!er ncastrat. n mod ocazional sunt necesare circuite e%terne pentrucomunicia cu utilizatorii, alte computere sau reea.

    n telefoanele mobile de e%emplu, dispozitivele de intrare ieire sunt tastataura, ecranul,antena, microfonul, speaEer+ul, A;D+urile indicatoare, etc. $emnalele de la aceste uniti pot fianalogice sau numerice. Pentru a genera un semnal analogic de la microprocesor este nevoie deun -@" iar pentru ca acesta s accepte un semnal analogic este necesar un -"@. "cesteconvertoare au n continuare anumite moduri de control. ;le pot lucra la viteze diferite de ale

    procesorului. Pentru a sincroniza i controla aceste interfee este nevoie de alte cip+uri deinterfa. n mod similar pot fi necesare cip+uri de interfa cu tastatura, antena,, ecranul, etc.Dispozitivele de intrare ieire sunt n general mai lente dec*t procesorul? prin urmare procesorul

    poate atepta p*n cnd acetea rspund la o cerere de transfer de date. "tunci c*nd interfeele 8#Osunt on cip aceste neaCusuri sunt eliminate, nemaie%istnd cicluri de atepare procesor.

    Concluzii

    Pe l*ng circuitele prezentat sistemele incorporate real time pot avea i alte circuite specifice

    incluse n aceali cip sau pe aceeai plac. "cestea sunt cunoscute ca "$8- ("pplication$pecific 8ntegrated -ircuit). Prezentm n continuare c*teva e%emple:

    . 1OD;1 uri (uniti de modulare, demodulare)

    0ig. .9. 3loc de interfa 8#O tipic

  • 5/26/2018 Curs Sisteme Incorporate

    33/95

    $unt utilizate pentru a modula un semnal digital ntr+un semnal analogic de nalt frecven(pentru comunicaii !ire less). ;%ist mai multe metode de modulare (amplitudine, frecven,faz, etc.). "celai dispozitiv este utilizat i pentru demodulare.

    /. -OD;-+uri '(&niti de compresie decompresie)$unt utilizate n general pentru procesarea semnalelor digitale video sau#i audio. &n -OD;-reduce cantitatea de date ce trebuie transmise, elimin*nd informaia redundant (la transmisie) ireconstituind semnalul (la recepie)

    4. 0iltre0iltrele sunt utilizate pentru condiionarea semnalelor prin eliminarea zgomotelor i a altorcomponent perturbatoare. O clas specific de filtre numite "ntialiassing sunt utilizate nainteaconversiei analog numerice pentru a preveni asiasing+ul la aciziia semnalelor de band larg.

    . -ontrolere"cestea sunt circuite specific pentru controlul motoarelor, i a altor tipuri de elemente dee%ecuie.

    < $emorii

    ObiectiveDup aprofundarea leciei studenii vor cunoate

    Diferite tipuri de memorii+ 1emorie procesor+ 1emorie primar+ 8nterfaarea memoriei

    Introducere

    -ele mai multe calculatoare moderne au fost proiectate conform aritecturii de baznumit Von+@eumann prezentat n figura 6..

    0ig. 6.. "ritectura Von @eumann

  • 5/26/2018 Curs Sisteme Incorporate

    34/95

    1emoria stoceaz at*t instruciuni c*t i date. @u se poate distinge ntre date iinstruciuni. -P& trebuie s fie direcionat ctre adresa codului instruciunii. 1emoria esteconectat la -P& prin intermediul urmtoarele linii (figura 6./):

    . "drese/. Date4. -ontrol

    ntr+o operaie de citire a memoriei -P& ncarc adresa memoriei n magistrala deadrese. n cele mai multe cazuri aceste linii sunt ncrcate ntr+un decodor care selecteaz locaiade memorie corespunztoare. "poi -P& trimite un semnal de control de citire (read). Datastocat n aceast locaie este transferat spre procesor via linii de date.

    n operaiile de scriere, dup ce adresa este ncrcat -P& trimite semnal de scriereurmat de datele ce trebuie scrise n locaia de memorie.1emoria poate fi clasificat dup mai multe criterii bazate pe localizare, putere

    consumat, ci de date stocate., etc. 1emoria poate fi clasificat la nivel de baz astfel:. 1emorie procesor (registri)/. 1emorie intern on+cip4. 1emorie primar. 1emorie cas6. 1emorie secundar

    emorie procesor =7egistri>

    -ele mai multe procesoare au mai muli regitri asociai cu unitatea aritmetic i logic("A&). "cetia stoceaz operanzii i rezultatele instruciunilor. 5atele de transfer de date suntfoarte rapide fr s fie necesare cicluri adiionale de ceas. @umrul regitrilor variaz de la

    procesor la procesor. -u c*t sunt mai muli cu at*t crete viteza de e%ecuie a instruciunilor. Darcomple%itatea aritecturii limiteaz cantitatea de memorie a procesorului.

    emorie intern* on'c!ip

    n unele procesoare poate e%ista un bloc de memorie. "cestea pot fi tratate n acelaimod ca o memorie e%tern. -u toate astea este foarte rapid.

    emorie primar*

    0ig. 6./. 8nterfaarea memoriei

  • 5/26/2018 Curs Sisteme Incorporate

    35/95

    "ceasta este una care este situat n afara -P&. Poate fi situat n acelai -B8P cu -P&."ceste memorii pot fi statice sau dinamice.

    emoria cac!e

    "ceasta este situat ntre procesor i memoria primar. $e comport ca un tampon pentruinstruciunile sau datele pe care procesorul le anticipeaz. Pot fi mai multe niveluri de memoriecae.

    emorie secundar*

    "cestea sunt tratate ca dispozitive de intrare#ieire. $unt cele mai ieftine dar i cele mailente dispozitive de stocare conectate prin intermediul unor circuite de interfa intrare#ieire.$unt memorii optice sau magnetice precum Bard disE, -D 5om, etc. "ceste memorii pot ficlasificate n memorii volatile i memorii nevolatile.

    emorie #olatil*+ este memoria al crei coninut este ters c*nt circuitul de alimentareeste ntrerupt. $5"1 (semiconductor random acess) fac parte din aceast categorie.

    emorie ne#olatil*' memoriile nu sunt afectate ciar dac alimentarea este ntrerupt.1emoriile magnetice (Bard DisE), 1emoriile optice (-D5O1), memoriile de tip 5O1 (readonl> memor>) fac parte din acest tip de memorii.

    Stocarea datelor

    O memorie de m cuvinte poate stoca m%n date: m cuvinte de n bii. &n cuv*nt estelocalizat la o adres, prin urmare pentru a adresa m cuvinte sunt necesare un numr de semnale

    de intrare de adrese &Glog5=m> sau E linii de adrese pot acesa mG5&cuvinte.

  • 5/26/2018 Curs Sisteme Incorporate

    36/95

    De e%emplu: o memorie de 9]=%7+ poate stoca 4/=7 de bii+ / semnale de intrare de adres

    + 7 semnale de intrare#ieire de date

    )ccesarea memoriei

    Aocaia memoriei poate fi accesat prin plasarea adresei pe liniile de adrese. Ainiile decontrol read#!rite selecteaz operaia (citire scriere).&nele dispozitive de memorare suntdispozitive multiport astfel nc*t pot fi accesate simultan mai multe locaii de memorie.

    Caracteristicile memoriei

    -aracteristicile unei memorii tipice sunt urmtoarele:

    0ig. 6.4. 5egitri interni

    0ig. 6..2ablou de date

  • 5/26/2018 Curs Sisteme Incorporate

    37/95

    + -apacitatea de stocare: numrul de bii#b>tes sau cuvinte care pot fi stocate+ 2impul de acces la memorie (timp de citire sau timp de scriere): c*t timp este

    necesar pentru ca memoria s depun datele pe liniile de date dup cememoria a fost adresat sau c*t de rapid poate stoca datele depuse pe liniile eide date.

    + Puterea consumat i nivelul de tensiune: Puterea consumat este un factorfoarte important pentru sistemele incorporate. ;ste necesar ca putereaconsumat s fie c*t mai mic iar capacitatea respectiv gradul de comprimarecat mai mare. Din considerente de disipare a puterii dimensiunea memoriei icapacitatea de stocare sunt corelate cu puterea consumat.

    1emoriile utilizate n sistemele incorporate au dou caracteristici specifice:+ capacitate de scriere

    + randamentul stocrii-apacitatea de scriere ' este modul i viteza cu care aceast memorie poate fi scris

    Domeniul capacitii scriere+ cea mai bun: procesorul scrie n memorie simplu i rapid (e%. memoria

    5"1)+ mediu: procesorul scrie n memorie dar lent (e%: 0A"$B, ;;P5O1 '

    ellectricall> erasable and programmable read onl> memor>)+ Cos : sunt necesare ecipamente speciale programabile pentru a scrie n

    memorie (;P5O1, O2P 5O1 ' one time programmable read onl> memor>)+ cea mai slab: biii sunt stocai numai la fabricare (e%. 1asE+programmed

    5O1)5andamentul (permanena) stocrii ' reprezint abilitatea de a pstra biii stocai.Domeniile de randament al stocrii sunt:

    + cel mai ridicat: nu se pierd niciodat bii (e%. masE+programmed 5O1)+ mediu: pstreaz biii zile, luni sau ciar ani dup ce sursa de alimentare a

    memoriei a fost ntrerupt.+ Cos: pstreaz biii c*t timp este asigurat alimentarea memoriei (e%. 5O1)+ cel mai Cos: ncepe s piard biii imediat dup ce a fost scris (D5"1)

    1emoria nevolatil este cea care menine datele dup ce alimentarea a fost ntrerupt ieste reprezentar de cele din domeniul cel mai ridicat i mediu.

    Tipuri de memorii comune7: =7ead :nl% emor%>

  • 5/26/2018 Curs Sisteme Incorporate

    38/95

    "ceasta este o memorie nevolatil. Pot fi numai citite nu i scrise de ctre microprocesorn cadrul unui sistem incorporat. n mod normal acestea sunt scrise (programate) naunte deinserarea n sistemul incorporat. $unt utilizate pentru:

    + stocarea programelor soft!are pentru procesoarelor de uz general+ stocarea constantelor necesare sistemului+ implementarea circuitelor combinaionale

    $pre e%emplificare n figura 6.. este prezentat structura unei memorii 5O1. Ainiile orizontalereprezint cuvintele iar pe vertical sunt liniile de ieire date, linii de date care sunt conectate nciclu. Dac adresa de intrare este de e%emplu 99 decodificatorul pune pe linia a doua de cuvintevaloarea . Ainiile de date 4 i sunt puse pe deoarece aici este setat cone%iune." doualinie de cuvinte nu este conectata cu liniile d edate / si 9. De aceea valoarea de iesire este99

    0ig. 6..Implementarea func$iilor combina$ionale

    Orice circuit combinaional de n funcii i E variabile poate fi realizat cu 5&n5O1.8ntrrile circuitului combinaional sunt adrese ale locaiilor 5O1. 8eirile reprezint cuvintestocate n memorie la locaiile respective.

    0ig. 6.]. 2abela combinationala

  • 5/26/2018 Curs Sisteme Incorporate

    39/95

    7: cu masc* programabil*

    -one%iunile sunt programate din fabricaie i sunt un set de mti? pot fi scrise o singurdat (la fabricare) dar stoceaz date pentru totdeauna. $unt n mod uzual utilizate pentru

    proiectarea formei finale a sistemelor mari.

    :

  • 5/26/2018 Curs Sisteme Incorporate

    40/95

    Microcontrolerul PIC16F84

    Introducere

    CISC, RISC

    AplicaiiClock -ul/instruciunePipeliningSemnificaia pinilor

    2.1 enerator-oscilator de ceas2.2 Reset2.! "nitatea de procesare central#2.$ Porturi2.% &rgani'area memoriei2.( )ntreruperi2.* +imer-ul lier +R&2. emoria de date PR&

    Introducere

    PIC16F84 aparine unei clase de microcontrolere de ii cu ar0itectur# RISC. Structuralui general# este ar#tat# n sc0ia urm#toare repre'entnd locurile de a'#.

    Memoria program345AS67-pentru memorarea unui program scris.Pentru c# memoria ce este f#cut# n te0nologia 45AS6 poate fi programat#8i 8tears# mai mult dect odat#, aceasta face microcontrolerul potri9itpentru de'9oltarea de component#.

    EEPROM-memorie de date ce treuie s# fie sal9ate cnd nu mai este alimentare.ste n mod u'ual folosit# pentru memorarea de date importante ce nu treuie pierdutedac# sursa de alimentare se ntrerupe dintr-o dat#. :e e;emplu, o astfel de dat# este otemperatur# prestailit# n regulatoarele de temperatur#. :ac# n timpul ntreruperiialiment#rii aceast# dat# se pierde, 9a treui s# facem a

  • 5/26/2018 Curs Sisteme Incorporate

    41/95

    CI'C) RI'CS-a spus deeumann. S-a n#scut din ne9oia de m#rire a9ite'ei microcontrolerului. )n ar0itectura 6ar9ard, us-ul de date 8i us-ul de adrese suntseparate. Astfel este posiil un mare deit de date prin unitatea de procesare central#, 8iineneles, o 9ite'# mai mare de lucru. Separarea programului de memoria de date faceposiil ca mai departe instruciunile s# nu treuiasc# s# fie cu9inte de ii. PIC1(4$folose8te 1$ ii pentru instruciuni ceea ce permite ca toate instruciunile s# fie instruciunidintr-un singur cu9nt. ste de asemenea tipic pentru ar0itectura 6ar9ard s# ai# maipuine instruciuni dect 9on->e?mann 8i s# ai# instruciuni e;ecutate u'ual intr-un ciclu.

    icrocontrolerele cu ar0itectur# 6ar9ard sunt de asemenea numite @microcontrolere [email protected] nseamn# Reduced Instruction Set Computer. icrocontrolerele cu ar0itectura9on->e?mann sunt numite @microcontrolere CISC@. +itlul CISC nseamn# Comple;Instruction Set Computer.

    Pentru c# PIC1(4$ este un microcontroler RISC, aceasta nseamn# c# are un set redus deinstruciuni, mai precis !% de instruciuni 3de e;. microcontrolerele I>+5 8i otorola aupeste 1 de instruciuni7. +oate aceste instruciuni sunt e;ecutate ntr-un ciclu cu e;cepiainstruciunilor

  • 5/26/2018 Curs Sisteme Incorporate

    42/95

    PIC1(4$ se potri9e8te perfect n multe folosine, de la industriile auto 8i aplicaiile decontrol casnice la instrumentele industriale, sen'ori la distan#, mnere electrice de u8i 8idispo'iti9ele de securitate. ste de asemenea ideal pentru cardurile smart ca 8i pentruaparatele alimentate de aterie din cau'a consumului lui mic.

    emoria PR& face mai u8oar# aplicarea microcontrolerelor la aparate unde se cere

    memorarea permanent# a diferitor parametri 3coduri pentru transmi#toare, 9ite'amotorului, frec9enele receptorului, etc.7. Costul sc#'ut, consumul sc#'ut, mnuirea u8oar#8i fle;iilitatea fac PIC1(4$ aplicail c0iar 8i n domenii unde microcontrolerele nu au fostpre9#'ute nainte 3e;empleB funcii de timer, nlocuirea interfeei n sistemele mari,aplicaiile coprocesor, etc.7.Programailitatea sistemului acestui cip 3mpreun# cu folosirea a doar doi pini n transferulde date7 face posiil# fle;iilitatea produsului, dup# ce asamlarea 8i testarea au fostterminate. Aceast# capailitate poate fi folosit# pentru a crea producie pe linie deasamlare, de a nmaga'ina date de calirare disponiile doar dup# testarea final#, saupoate fi folosit pentru a mun#t#i programele la produsele finite.

    Cloc+-ul ,ciclul intruc*iune

    Clock-ul sau ceasul este starter-ul principal al microcontrolerului, 8i este oinut dintr-ocomponent# de memorie e;tern# numit# @oscilator@. :ac# ar fi s# compar#m unmicrocontroler cu un ceas de timp, @clock-ul@ nostru ar fi un tic#it pe care l-am au'i de laceasul de timp. )n acest ca', oscilatorul ar putea fi comparat cu arcul ce este r#sucit astfelca ceasul de timp s# mearg#. :e asemenea, fora folosit# pentru a ntoarce ceasul poate ficomparat# cu o surs# electric#.

    Clock-ul de la oscilator intr# ntr-un microcontroler prin pinul &SC1 unde circuitul intern almicrocontrolerului di9ide clock-ul n $ clock-uri egale 1, 2, ! 8i $ ce nu se suprapun.Aceste $ clock-uri constituie un ciclu de o singur# instruciune 3numit de asemenea cicluma8in#7 n timpul c#reia instruciunea este e;ecutat#.

    ;ecutarea instruciunii ncepe prin apelarea unei instruciuni care este urm#toarea n linie.Instruciunea este apelat# din memoria program la fiecare 1 8i este scris# n registrul deinstruciuni la $. :ecodarea 8i e;ecutarea instruciunii sunt f#cute ntre urm#toarele cicluri1 8i $. )n urm#toarea diagram# putem 9edea relaia dintre ciclul instruciunii 8i clock-uloscilatorului 3&SC17 ca 8i aceea a clock-urilor interne 1-$. Contorul de program 3PC7reine informaia despre adresa urm#toarei instruciuni.

    Pipelining

  • 5/26/2018 Curs Sisteme Incorporate

    43/95

    Ciclul instruciune const# din ciclurile 1, 2, ! 8i $. Ciclurile de instruciuni de apelare 8ie;ecutare sunt conectate ntr-un a8a fel nct pentru a face o apelare, este necesar un ciclucu o instruciune, 8i mai este ne9oie de nc# unul pentru decodare 8i e;ecutare. +otu8i,datorit# pipelining-ului 3folosirea unei pipeline-conduct#, 8i este aducerea unei instruciunidin memorie n timp ce se e;ecut# alta7, fiecare instruciune este e;ecutat# efecti9 ntr-unsingur ciclu. :ac# instruciunea cau'ea'# o sc0imare n contorul programului, 8i PC-ul nu

    direcionea'# spre urm#toarea ci spre alte adrese 3poate fi ca'ul cu suprogramele

  • 5/26/2018 Curs Sisteme Incorporate

    44/95

    Pinii microcontrolerului PIC1(4$ au urm#toarea semnificaieB

    Pin nr.1 RA0Al doilea pin la portul A. >u are funcie adiional#.Pin nr.2 RAAl treilea pin la portul A. >u are funcie adiional#.Pin nr.! RA4 Al patrulea pin la portul A. +&CG1 care funcionea'# ca timer se g#se8te deasemenea la acest pin.Pin nr.$ MCR Resetea'# intrarea 8i tensiunea de programare Dpp a microcontrolerului.Pin nr.% '' Alimentare, mas#.Pin nr.( R"/ Pin de 'ero la portul =. Intrarea )ntrerupere este o funcie adiional#.Pin nr.* R"1 Primul pin la portul =. >u are funcie adiional#.Pin nr. R"0 Al doilea pin la portul =. >u are funcie adiional#.Pin nr.H R" Al treilea pin la portul =. >u are funcie adiional#.Pin nr.1 R"4 Al patrulea pin la portul =. >u are funcie adiional#.Pin nr.11 R"2 Al cincilea pin la portul =. >u are funcie adiional#.Pin nr.12 R"6Al 8aselea pin la portul =. 5inia de Clock n mod programare.Pin nr.1! R"5Al 8aptelea pin la portul =. 5inia :ata n mod programare.Pin nr.1$ ddPolul po'iti9 al sursei.Pin nr.1% O'C0Pin desemnat pentru conectarea la un oscilator.Pin nr.1( O'C1Pin desemnat pentru conectarea la un oscilator.Pin nr.1* RA0Al doilea pin la portul A. >u are funcie adiional#.Pin nr.1 RA1Primul pin la portul A. >u are funcie adiional#.

  • 5/26/2018 Curs Sisteme Incorporate

    45/95

    01 7enerator de cea ocilator

    Circuitul oscilator este folosit pentru a da microcontrolerului un ceas-clock. Ceasul estenecesar pentru ca microcontrolerul s# e;ecute programul sau instruciunile din program.

    +ipuri de oscilatoarePIC1(4$ poate lucra cu patru configuraii diferite de oscilator. Pentru c# configuraiile cuoscilator cu cristal 8i re'istor-condensator 3RC7 sunt cele utili'ate cel mai frec9ent, doar peele le 9om meniona aici. +ipul de microcontroler cu oscilator cu cristal este desemnat caJ+, iar microcontrolerul cu perec0ea re'istor-condensator are desemnarea RC. Aceasta esteimportant pentru c# treuie s# numii tipul de oscilator cnd cump#rai un microcontroler.

    &scilatorul J+

    &scilatorul cu cristal se afl# intr-ocarcas# metalic# cu doi pini pe care este

    nscris# frec9ena la care cristaluloscilea'#. ai este necesar cte uncondensator ceramic de !p4 cu cel#laltcap#t la mas# de a fi conectai la fiecarepin.

    &scilatorul 8i condensatorii pot fincapsulai mpreun# ntr-o carcas# cutrei pini. "n asemenea element senume8te re'onator ceramic 8i esterepre'entat n sc0eme ca cel de mai

  • 5/26/2018 Curs Sisteme Incorporate

    46/95

    :iagrama de mai sus arat# cum este conectat oscilatorul RC la PIC1(4$. 5a 9aloareare'istorului mai mic# 2.2k, oscilatorul poate de9eni instail, sau oscilaia se poate c0iaropri. 5a 9alori mari a lui R 3e;.17 oscilatorul de9ine foarte sensiil la 'gomot 8i ume'eal#.Se recomand# ca 9aloarea re'istorului R s# fie ntre ! 8i 1k. C0iar dac# oscilatorul 9alucra f#r# un condensator e;tern 3CKp47, treuie totu8i folosit un condensator de peste

    2p4 pentru 'gomot 8i stailitate. Indiferent de ce oscilator este folosit, pentru a oine unceas la care s# funcione'e microcontrolerul, ceasul treuie di9i'at la $. "n ceas aloscilatorului di9i'at cu $ se poate oine la pinul &SC2/C5G&"+, 8i poate fi folosit pentrutestarea sau sincroni'area altor circuite logice.

    :up# alimentare, oscilatorul ncepe s# oscile'e. &scilaia la nceput are o perioad# 8i oamplitudine instaile, dar dup# un timp de9in staili'ate.

    Pentru a pre9eni ca un asemenea ceas ine;act s# influene'e performanelemicrocontrolerului, treuie s# inem microcontrolerul n starea reset pe durata staili'#riiceasului oscilatorului. :iagrama de mai sus arat# o form# tipic# de semnal pe caremicrocontrolerul o prime8te de la oscilatorul cu cuar dup# alimentare.

  • 5/26/2018 Curs Sisteme Incorporate

    47/95

    00 Reet-ul

    Resetul este folosit pentru a pune microcontrolerul ntr-o condiie cunoscut#. Aceastanseamn# practic c# microcontrolerul poate s# se comporte incorect n unele condiiinedorite. Pentru a continua s# funcione'e corect treuie resetat, nsemnnd c# toi registrii9or fi pu8i ntr-o stare de start. Resetul nu este folosit numai cnd microcontrolerul nu se

    comport# cum 9rem noi, dar poate de asemenea s# fie folosit cnd se ncearc# un monta. Selectnd una din funcii cealalt# este de'acti9at#.

    +oi pinii portului pot fi definii ca intrare sau ie8ire, conform cu ne9oile unui monta< ce esten de'9oltare. Pentru a defini un pin ca pin de intrare sau ca pin de ie8ire, treuie scris#cominaia corect# de 'ero-uri 8i unu-uri n registrul +RIS. :ac# n locul potri9it este scris@1@ logic n registrul +RIS, acel pin este pin de intrare, iar dac# este 9alail contrariul, esteun pin de ie8ire. 4iecare port are registrul lui +RIS. Astfel, portul A are +RISA la adresa%0, iar portul = are +RIS= la adresa (0.

    P&R+=P&R+= are pini legai la el. Registrul adec9at pentru direcia datelor este +RIS= la adresa(0. Setarea unui it n registrul +RIS= define8te pinul portului corespun'#tor ca pin deintrare, 8i resetarea unui it n registrul +RIS=, define8te pinul portului corespun'#tor ca pinde ie8ire. 4iecare pin la P&R+= are un re'istor sla intern pull-up 3scoatere7 3re'istor caredefine8te o linie la unu logic7 care poate fi acti9at prin resetarea celui de-al 8aptelea itR=P" n registrul &P+I&>. Ace8ti re'istori pull-up se nc0id automat cnd pinul portuluieste configurat ca o ie8ire. Cnd porne8te microcontrolerul, pull-up-ii sunt de'acti9ai.

    Patru pini ai portului P&R+=, R=*BR=$ pot cau'a o ntrerupere, care se ntmpl# cndstarea lor se sc0im# de la unu logic la 'ero logic 8i in9ers. >umai pinii configurai ca

    intrare pot cau'a aceast# ntrerupere s# se ntmple 3dac# fiecare pin R=*BR=$ esteconfigurat ca o ie8ire, nu 9a fi generat# o ntrerupere la sc0imarea st#rii7. Aceast# opiunede ntrerupere cu re'istorii pull-up fac mai u8oar# re'ol9area prolemelor din practic#, ca

  • 5/26/2018 Curs Sisteme Incorporate

    60/95

    de e;emplu o tastatur# matriceal#. :ac# rndurile tastaturii sunt conectate la ace8ti pini,fiecare ap#sare a unei clape 9a cau'a o ntrerupere. icrocontrolerul 9a determina careclap# este ap#sat# n timp ce se procesea'# o ntrerupere. >u se recomand# s# apelai laportul = n timp ce se procesea'# ntreruperea.

    ;emplul de mai sus arat# cum pinii , 1, 2, 8i ! sunt declarai ca intrare, 8i pinii $, %, ( 8i *ca ie8ire.

    P&R+A

    P&R+A are % pini legai la el. Registrul corespun'#tor pentru direcia datelor este +RISA laadresa %0. Ca 8i la portul =, setarea unui it n registrul +RISA define8te de asemeneapinul portului corespun'#tor ca un pin de intrare, 8i resetarea unui it n registrul +RISAdefine8te pinul portului corespun'#tor ca pin de ie8ire.Al cincilea pin al portului A are funcie dual#. 5a acel pin se afl# de asemenea o intraree;tern# pentru timer-ul +R&. "na din aceste dou# opiuni este aleas# prin setarea sauresetarea itului +&CS 3+R Clock Source Select it-it de Selecie a Sursei Ceasului+R&7. Acest pin permite timer-ului +R& sa-8i creasc# starea fie de la oscilatorul internfie prin impulsuri e;terne la pinul RA$/+CGI.

    ;emplul arat# cum pinii , 1, 2, !, 8i $ sunt declarai ca intrare iar %, ( 8i * ca pini deie8ire.

  • 5/26/2018 Curs Sisteme Incorporate

    61/95

    02 Organi>area memoriei

    PIC1(4$ are dou# locuri separate de memorie, unul pentru date 8i cel#lalt pentruprograme. emoria PR& 8i regi8trii PR n memoria RA constituie un loc, 8i memoria45AS6 constituie un loc de programe.

    emoria program

    emoria program a fost reali'at# n te0nologia 45AS6 ceea ce face posiil de a programaun microcontroler de mai multe ori nainte de a fi instalat ntr-un monta

  • 5/26/2018 Curs Sisteme Incorporate

    62/95

    "ancuri de Memorie

    )n afar# de aceast# di9i'iune n lungime a regi8trilor S4R 8i PR, 0arta memoriei este deasemenea mp#rit# n l#ime 39e'i 0arta precedent#7 n dou# 'one numite ancuri.Selectarea unuia din ancuri se face de iii RP& 8i RP1 n registrul S+A+"S-stare.

    E?emplu=bcf STATUS, RP0

    Instruciunea =C4 8terge itul RP& 3RPK7 n registrul S+A+"S 8i astfel setea'# ancul .

    bsf STATUS, RP0

    Instruciunea =S4 setea'# itul RP& 3RPK17 n registrul S+A+"S 8i astfel setea'# ancul 1.

  • 5/26/2018 Curs Sisteme Incorporate

    63/95

    "'ual, grupurile de instruciuni care sunt adesea n u', sunt conectate ntr-o singur# unitatece poate fi u8or apelat# ntr-un program, 8i a c#rei nume are o semnificaie clar#, a8a-numitul acros-macrocomand#. Cu a

  • 5/26/2018 Curs Sisteme Incorporate

    64/95

    Adresarea :irect#

    Adresarea :irect# se face printr-o adres# de H ii. Aceast# adres# este oinut# princonectarea celui de-al 8aptelea it al adresei directe a unei instruciuni cu doi ii 3RP1,RP7 din registrul S+A+"S dup# cum se arat# n figura urm#toarea. &rice acces la regi8triiS4R poate fi un e;emplu de adresare direct#.

    Bsf STATUS, RP0 ;Bankl

    movl 0!"" ;#0!""

    movf TR$SA ;address of TR$SA re%&ster &s taken from

    ;&nstr'ct&on movf

    Adresarea Direct

    Adresarea Indirect#

    Adresarea indirect# spre deoseire de cea direct# nu ia o adres# dintr-o instruciune ci ocreea'# cu a

  • 5/26/2018 Curs Sisteme Incorporate

    65/95

    "n asemenea e;emplu poate trimite un set de date prin comunicaia serial#, lucrnd cuufere 8i indicatoare 3ce 9or fi discutate n continuare ntr-un capitol cu e;emple7, sau s#8tearg# o parte a memoriei RA 31( locaii7 ca n urm#torul e;emplu.

    Citind datele din registrul I>:4 cnd coninutul registrului 4SR este egal cu 'ero, ntoarce9aloarea 'ero, 8i scrie n el re'ultatul n operaia >&P 3no operation- nu operea'#7.

  • 5/26/2018 Curs Sisteme Incorporate

    66/95

    06 @ntreruperi

    )ntreruperile sunt un mecanism a unui microcontroler ce i permit s# r#spund# la unelee9enimente la momentul cnd se ntmpl#, indiferent de ce face atunci microcontrolerul.Aceasta este o parte foarte important#, pentru c# permite cone;iunea microcontrolerului culumea de afar#. )n general, fiecare ntrerupere sc0im# deitul programului, l ntrerupe 8i

    dup# e;ecutarea unui suprogram 3rutine de ntrerupere7, continu# din acela8i punct.

    Registrul de control al unei ntreruperi se nume8te I>+C&> 8i se g#se8te la adresa =0.Rolul lui este de a permite sau inter'ice cererile de ntreruperi, 8i n ca' c# nu sunt permise,

    nregistrea'# cererile de ntrerupere singulare prin iii lui.

    Registru I>+C&>

    bit 0R"IF3R= Port C0ange Interrupt 4lag it-it Stegule de )ntrerupere a Sc0im#riiPortului R=7 =it ce informea'# despre sc0im#rile de la pinii $, %, ( 8i * ai portului =.

    1Kcel puin un pin 8i-a sc0imat stareaKnu s-a ntmplat nici o sc0imare la 9reun pin

  • 5/26/2018 Curs Sisteme Incorporate

    67/95

    bit 1I$TF3I>+ ;ternal Interrupt 4lag it-it Stegule de )ntrerupere ;tern# I>+7 A a9utloc o ntrerupere e;tern#.1Ka a9ut loc o ntrerupereKnu a a9ut loc o ntrerupere:ac# s-a detectat un front cresc#tor sau descresc#tor la pinul R=/I>+, 3ce este definit cuitul I>+: n registrul &P+I&>7, itul I>+4 este setat. =itul treuie s# fie 8ters n

    suprogramul ntrerupere pentru a detecta urm#toarea ntrerupere.bit 2T/IF3+R &9erflo? Interrupt 4lag it-it Stegule :ep#8ire )ntrerupere +R&7:ep#8irea contorului +R&.1Kcontorul 8i-a sc0imat starea de la 440 la 0.Kdep#8irea nu a a9ut loc=itul treuie s# fie 8ters n program pentru ca o ntrerupere s# fie detectat#.

    bit 3R"IE3R= port c0ange Interrupt nale it-it Permite )ntreruperea sc0im#rii portuluiR=7 Permite s# ai# loc ntreruperi la sc0imarea st#rii pinilor $, %, (, 8i * ai portului =.1Kpermite ntreruperi la sc0imarea st#riiKntreruperi inter'ise la sc0imarea st#rii:ac# R=I 8i R=I4 au fost simultan setate, 9a a9ea loc o ntrerupere.

    bit 4I$TE3I>+ ;ternal Interrupt nale it-it Permite )ntrerupere e;tern# I>+7 =it cepermite ntreruperea e;tern# de la pinul R=/I>+.1Kntrerupere e;tern# permis#Kntrerupere e;tern# inter'is#:ac# I>+ 8i I>+4 au fost setate simultan, 9a a9ea loc o ntrerupere.

    bit 5T/IE3+R &9erflo? Interrupt nale it-it Permite :ep#8ire )ntrerupere +R&7 =itce permite ntreruperile n timpul dep#8irii contorului +R&.1Kntrerupere permis#Kntrerupere inter'is#:ac# +I 8i +I4 au fost simultan setate, 9a a9ea loc ntreruperea.

    .it 6EEIE3PR& Erite Complete Interrupt nale it-it Permite )ntrerupere Complet#a Scrierii PR&7 =it ce permite o ntrerupere la sfr8itul unei rutine de scriere n PR&1K ntrerupere permis#K ntrerupere inter'is#:ac# I 8i I4 3ce este n registrul C&>17 au fost simultan setate, 9a a9ea loc o

    ntrerupere.

    .it 77IE3loal Interrupt nale it-it Permite )ntrerupere loal#7 =it ce permite sauinter'ice toate ntreruperile.1Ktoate ntreruperile sunt permiseKtoate ntreruperile sunt inter'ise

    PIC1(4$ are patru surse de ntrerupereB

    1. +erminarea scrierii datelor n PR&2. )ntrerupere +R cau'at# de dep#8irea timer-ului!. )ntrerupere n timpul sc0im#rii la pinii R=$, R=%, R=( 8i R=* ai portului =.$. )ntrerupere ;tern# de la pinul R=/I>+ al microcontrolerului

    )n general, fiecare surs# de ntrerupere are doi ii legai la ea. "nul permite ntreruperea,iar cel#lalt detectea'# cnd au loc ntreruperi. ;ist# un it comun numit I ce poate fifolosit pentru a inter'ice sau permite toate ntreruperile simultan. Acest it este foarte

    folositor cnd se scrie un program pentru c# permite ca toate ntreruperile s# fie inter'isepentru o perioad# de timp, a8a ca e;ecuia unei p#ri importante a programului s# nu fie

  • 5/26/2018 Curs Sisteme Incorporate

    68/95

    ntrerupt#. Cnd instruciunea ce resetea'# itul I a fost e;ecutat# 3IK, toatentreruperile inter'ise7, fiecare ntrerupere ce r#mne nere'ol9at# treuie ignorat#.

    )ntreruperile ce r#mn nere'ol9ate 8i ce au fost ignorate, sunt procesate cnd itul I3IK1, toate ntreruperile sunt permise7 9a fi 8ters. Cnd i s-a r#spuns ntreruperii, itulI a fost 8ters, a8a c# orice ntreruperi adiionale 9or fi inter'ise, adresa de ntoarcere afost trimis# n sti9#, iar adresa $0 a fost scris# n contorul programului numai dup#aceasta ncepe r#spunsul la o ntrerupereQ :up# ce este procesat# ntreruperea, itul ac#rui setare a cau'at o ntrerupere treuie 8ters, sau rutina de ntrerupere 9a fi procesat#automat tot mereu n timpul ntoarcerii la programul principal.

    P#strarea coninutului regi8trilor importani

    :oar 9aloarea de ntoarcere a contorului programului este nmaga'inat# ntr-o sti9# ntimpul unei ntreruperi 3prin 9aloare de ntoarcere a contorului programului nelegemadresa instruciunii ce treuie e;ecutat#, dar nu a fost e;ecutat# pentru c# a a9ut loc

    ntreruperea7. P#strnd doar 9aloarea contorului programului adesea nu este suficient. "niiregi8tri ce sunt n u' n programul principal pot fi de asemenea n u' n rutina de

    ntrerupere. :ac# ei nu sunt reinui, programul principal 9a oine 9alori complet diferite nacei regi8tri n timpul ntoarcerii dintr-o rutin# de ntrerupere, ceea ce 9a cau'a erori nprogram. "n e;emplu de asemenea ca' este coninutul registrului de lucru E. :ac#presupunem c# programul principal a folosit registrul de lucru E pentru unele din operaiile

    sale, 8i c# a p#strat n el o 9aloare ce este important# pentru urm#toarea instruciune,atunci o ntrerupere ce se 9a ntmpla nainte de acea instruciune 9a sc0ima 9aloarearegistrului de lucru E, ce 9a influena direct programul principal.

    Procedura de nregistrare de regi8tri importani nainte de a merge la o rutin# dentrerupere se nume8te P"S6, n timp ce procedura ce aduce 9alorile nregistrate napoi, senume8te P&P. P"S6 8i P&P sunt instruciuni ale altor microcontrolere 3Intel7, dar sunt attde larg acceptate c# o ntreag# operaie este numit# dup# ele. PIC1(4$ nu are instruciunica P"S6 8i P&P, 8i ele treuie s# fie programate.

  • 5/26/2018 Curs Sisteme Incorporate

    69/95

    :atorit# simplit#ii 8i folosirii frec9ente, aceste p#ri ale programului pot fi f#cute ca macro-uri. Conceptul unui acro este e;plicat n @5ima< de asamlare program@. )n urm#torule;emplu, coninuturile regi8trilor E 8i S+A+"S sunt memorate n 9ariailele EF+P 8i

    S+A+"SF+P nainte de rutina de ntrerupere. 5a nceputul rutinei P"S6 treuie s#9erific#m ancul selectat n pre'ent pentru c# EF+P and S+A+"SF+P nu se g#sesc nancul . Pentru sc0imul de date ntre ace8ti regi8tri, instruciunea SEAP4 se folose8te nloc de &D4 pentru c# nu afectea'# starea iilor registrului S+A+"S.

    ;emplul este un program asamlor pentru urm#torii pa8i B1. +estarea ancului curent2. Stocarea registrului E indiferent de ancul curent!. Stocarea registrul S+A+"S n ancul $. ;ecutarea rutinei de ntrerupere pentru procesul de ntrerupere 3ISR7%. Restaurea'# registrul S+A+"S(. Restaurea'# registrul E

    :ac# mai sunt 8i alte 9ariaile sau regi8tri ce treuie stocai, atunci ei treuie s# fie p#straidup# stocarea registrului S+A+"S 3pasul !7, 8i adu8i napoi nainte ca registrul S+A+"S s#fie restaurat 3pasul %7.

  • 5/26/2018 Curs Sisteme Incorporate

    70/95

    Acela8i e;emplu se poate reali'a utili'nd macro-uri, f#cnd astfel programul mai eligiil.acro-urile ce sunt deG1 8i =A>G ce sunt e;plicate n capitolul @&rgani'area memoriei@ sunt folosite cumacro-urile pus0 8i pop.

    )ntrerupere e;tern# la pinul R=/I>+ al microcontrolerului)ntreruperea e;tern# la pinul R=/I>+ este triggerat# de frontul cresc#tor 3dac# itul

  • 5/26/2018 Curs Sisteme Incorporate

    71/95

    I>+:K1 n registrul &P+I&>(7, sau de frontul descresc#tor 3dac# I>+:K7. Cndapare semnalul corect la pinul I>+, itul I>+4 este setat la registrul I>+C&>. =itul I>+43I>+C&>17 treuie resetat n rutina de ntrerupere, a8a ca ntreruperea s# nu ai# locdin nou n timpul ntoarcerii la programul principal. Acesta este un pas important alprogramului pe care programatorul nu treuie s#-l uite, sau programul 9a merge constant

    n rutina de ntrerupere. )ntreruperea poate fi nc0is# prin resetarea itului de control I>+

    3I>+C&>$7.

    )ntreruperea n timpul dep#8irii contorului +R&

    :ep#8irea contorului +R& 3de la 440 la 07 9a seta itul +I4 3I>+C&>27. Aceastaeste o ntrerupere foarte important# pentru c# multe proleme reale se por re'ol9a folosindaceast# ntrerupere. "nul din e;emple este m#surarea timpului. :ac# 8tim ct timp arene9oie contorul pentru a completa un ciclu de la 0 to 440, atunci num#rul de ntreruperi

    nmulit cu acea durat# de timp 9a da timpul total scurs. )n rutina de ntrerupere unele9ariaile 9or fi incrementate n memoria RA, 9aloarea acelei 9ariaile nmulite cu timpulde care are ne9oie contorul pentru a contori'a ntr-un ciclu ntreg, 9a da timpul total scurs.)ntreruperea poate fi pornit#/oprit# prin setarea/resetarea itului +I 3I>+C&>%7.

    )ntrerupere pe timpul unei sc0im#ri la pinii $, %, ( 8i * ai portului=

    Sc0imarea semnalului de intrare la P&R+= *B$ setea'# itul R=I4 3I>+C&>7. Patrupini R=*, R=(, R=% 8i R=$ ai portului =, pot triggera o ntrerupere ce are loc cnd starea laei se sc0im# de la unu la 'ero logic, sau 9ice9ersa. Pentru ca pinii s# fie sensiili la aceast#sc0imare, treuie definii ca intrare. :ac# oricare din ei este definit ca ie8ire, ntrerupereanu 9a fi generat# la sc0imarea st#rii. :ac# ei sunt definii ca intrare, starea lor curent#este comparat# cu 9ec0ea 9aloare ce a fost stocat# la ultima citire de la portul =.)ntreruperea poate fi pornit#/oprit# prin setarea/resetarea itului R=I n registrul I>+C&>.

    )ntreruperea la terminarea surutinei ?rite n PR&

    Aceast# ntrerupere este doar de natur# practic#. Pentru c# scrierea ntr-o locaie PR&durea'# cam 1ms 3care este o durat# lung# n termenii microcontrolerului7, nu esterentail de a a8tepta pn# la cap#t scrierea. ste ad#ugat astfel mecanismul de ntrerupereceea ce permite microcontrolerului s# continue e;ecutarea programului principal, n timp cescrierea n PR& este f#cut# n plan secundar. Cnd scrierea este terminat#, ntrerupereainformea'# microcontrolerul c# scrierea s-a terminat. =itul I4, prin care se face aceast#informare, se g#se8te n registrul C&>1. Producerea unei ntreruperi poate fi inter'is#prin resetarea itului I n registrul I>+C&>.

    Iniiali'area ntreruperiiPentru a folosi un mecanism de ntrerupere a unui microcontroler, treuie f#cute unelesarcini preg#titoare. Aceste proceduri sunt pe scurt numite @iniiali'are@. Prin iniiali'aredefinim la ce 9a r#spunde microcontrolerul, 8i ce 9a ignora. :ac# nu set#m itul ce permiteo anumit# ntrerupere, programul nu 9a e;ecuta un suprogram ntrerupere. Prin aceastaputem oine controlul asupra producerii ntreruperii, ceea ce este foarte folositor.

    ;emplul de mai sus arat# iniiali'area unei ntreruperi e;terne la pinul R= almicrocontrolerului. "nde se 9ede unu setat, nseamn# c# ntreruperea este permis#.Producerea altor ntreruperi nu este permis#, 8i toate ntreruperile mpreun# sunt inter'ise

  • 5/26/2018 Curs Sisteme Incorporate

    72/95

    pn# ce itul I este inut n unu.

    "rm#torul e;emplu arat# o cale tipic# de a diri

  • 5/26/2018 Curs Sisteme Incorporate

    73/95

    05 Timer-ul li:er TMR/

    +imer-ele 3tempori'atoarele7 sunt de oicei cele mai complicate p#ri ale unuimicrocontroler, a8a c# este necesar s# re'er9#m mai mult timp pentru a le e;plica. &dat#cu aplicarea lor este posiil s# se cree'e relaii ntre o dimensiune real# ca @timp@ 8i o9ariail# ce repre'int# starea timer-ului ntr-un microcontroler. 4i'ic, timer-ul este un

    registru a c#rui 9aloare cre8te continuu pn# la 2%%, 8i apoi porne8te de la cap#tB , 1, 2, !,$...2%%....,1, 2, !......etc.

    Aceast# incrementare se face n fundalul a tot ceea ce face un microcontroler. :epinde deprogramator @s# g#seasc# o cale@ de cum s# profite de aceast# caracteristic# pentru ne9oilelui. "na din c#i este s# creasc# o 9ariail# la fiecare dep#8ire a timer-ului. :ac# 8tim cttimp are ne9oie timer-ul s# fac# o rund# complet#, atunci nmulind 9aloarea 9ariailei cuacel timp oinem timpul total scurs.

    PIC1(4$ are un timer de ii. >um#rul de ii determin# pn# la ce 9aloare contori'ea'#timer-ul nainte de a ncepe s# contori'e'e de la 'ero din nou. )n ca'ul unui timer de ii,acel num#r este 2%(. & sc0em# simplificat# a relaiei dintre un timer 8i un prescaler-di9i'oreste repre'entat# n diagrama anterioar#. Prescalerul este numele acelei p#ri dinmicrocontroler ce di9ide ceasul oscilatorului nainte de a aum#rul ce di9ide un ceas este definit prin trei ii n registrul &P+I&>. Cel maimare di9i'or este 2%(. Aceasta nseamn# de fapt c# doar la al fiecare 2%(-lea ceas,9aloarea timer-ului 9a cre8te cu unu. Aceasta ne d# posiilitatea de a m#sura perioade detimp mai lungi.

  • 5/26/2018 Curs Sisteme Incorporate

    74/95

    :up# fiecare num#r#toare pn# la 2%%, timer-ul 8i resetea'# 9aloarea la 'ero 8i ncepe cuun nou ciclu de contori'are pn# la 2%%. )n timpul fiec#rei tran'iii de la 2%% la 'ero, itul

    +&I4 n registrul I>+C&> este setat. :ac# se permit ntreruperi, de aceasta se poate profitan generarea 8i n procesarea rutinei de ntrerupere. :epinde de programator s# resete'eitul +&I4 n rutina de ntrerupere, a8a ca noua ntrerupere, sau noua dep#8ire s# fiedetectate. )n afar# de ceasul oscilator intern, starea timer-ului poate de asemenea s#creasc# prin ceasul e;tern la pinul RA$/+&CGI. Alegerea uneia din aceste dou# opiuni seface n registrul &P+I&> prin itul +&CS. :ac# a fost aleas# aceast# opiune de ceas e;tern,9a fi posiil s# se defineasc# frontu