1 / 79

Arhutektura MSP430 familije uređaja Laboratorijska vežba – A/D konvertor

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET Katedra za elektroniku PREDMET: Mikroprocesorski Sistemi Avgust 2008. Arhutektura MSP430 familije uređaja Laboratorijska vežba – A/D konvertor. Mentor: Student:

jamil
Télécharger la présentation

Arhutektura MSP430 familije uređaja Laboratorijska vežba – A/D konvertor

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UNIVERZITET U NIŠUELEKTRONSKI FAKULTETKatedra za elektronikuPREDMET: Mikroprocesorski SistemiAvgust 2008 Arhutektura MSP430 familije uređaja Laboratorijska vežba – A/D konvertor Mentor: Student: prof. dr Mile K. Stojčev Gligorijević Jelena 11418

  2. Uvod • - Procesori kod embedded sistema - • Embedded -Računarsko bazirani sistemi ugradjeni u okviru drugog sistema • Procesore koji se koriste kod embedded sistema često nazivamo embedded procesori. Izbor pogodnog procesora koji se integriše u embedded sistem uglavnom zavisi od domena aplikacije tog sistema.Da bi se ostvario efikasan proizvod (dizajn), u zavisnosti od tipa aplikacije, neophodno je koristiti različite klase embedded procesora, čije se arhitekture medjusobno razlikuju. • Klase procesora koji se koriste kod embedded sistema su: • Mikrokontroleri • RISC procesori • 3. Digitalni Signal Procesori (DSP) • 4. Multimedija procesori • 5. Aplikaciono Specifični Procesori (ASIP) • 6. Kombinovani tipovi

  3. Osnovne karakteristika mikrokontrolera su: • usadjeni (built-in) ROM- najčešće kapaciteta 4 kB na samom čipu u kome se čuva upravljački program, • usadjeni RAM- najčešće kapaciteta 128 B, koji se koristi za čuvanje privremeno promenljivih, • CPU koji je, zbog efikasnijeg korišćenja ograničene programske memorije, u stanju da izvršava instrukcije koje manipulišu sa jediničnim bitovima, • veliki broj mikrokontrolera ima usadjeno koprocesor Boole-ovog tipa. Ovaj koprocesor zajedno sa CPU-om ima mogućnost da pojednostavljeno implementira Boole-ove izraze koji se veoma često javljaju u upravljačkim aplikacijama, • 5. mikrokontroleri imaju usadjene ulazno-izlazne portove koji se koriste za efikasno upravljanje, kao i jednostavnu i laku interakciju saspoljnim uredjajima.

  4. - Arhitekture mikrokontrolera - Arhitekture mikrokontrolera se mogu podeliti na sledeća dva tipa: 1. Harvard tip - karakteriše se razdvojenim memorijama za program i podatke. Svaki tip memorije ima svoj sopstveni fizički adresni prostor i koristi sopstvenu internu adresnu magistralu. Prednost ove arhitekture je ta što se pristup programskoj memoriji i memoriji za podatke ostvaruje konkurentno. Ovakvim pristupom se skraćuje ukupno vreme izvršenja programa. Proizvodjači mikrokontrolera Microchip, Zilog, National Semiconductor i Cypress zasnivaju svoje proizvode na Harvard arhitekturi, mada postoje neke neznatne ali važne razlike u pristupima kako ove kompanije implementiraju arhitekturu. Arhitekture ovih mikrokontrolera su tipične za RISC pristup.

  5. - Arhitekture mikrokontrolera - 2. Princeton tip (tzv. von Neumann) - programska memorija i memorija za podatke dele isti adresni prostor. To znači da se instrukcioni kôd može izvršavati kako iz programske tako i iz memorije za podatke. Poznati proizvodjači ovih tipova mikrokontrolera su Intel, Atmel, Motorola i dr. Ključna osobina ovih proizvoda je povećan broj instrukcija i adresnih načina rada koji u kombinaciji sa relokatibilnim softverskim magacinom (stack) omogućavaju efikasno korišćenje programskog jezika visokog nivoa C. Arhitekture ovih mikrokontrolera su tipične za CISC pristup.

  6. MSP430 Familija • Neke od osnovnih karakteristika: • Koristi 64K bajta za adresiranje ROM-a, RAM-a, EERAM-a i periferija. Zanaredne generacije kontrolera iz ove familije se planira 1M bajt. • Nema ograničenje prekida i potprogramskih nivoa zbog procesiranja magacina. • Samo tri formata istrukcija. Stroga ortogonalnost bez izuzetaka. • Koristi 1 reč/instrukcija ukoliko je moguće. • Sedam načina adresiranja izvorista. • Četiri načina adresiranja odredista. • Spoljašnji pinovi za prekide: postojeci Ulazno-Izlazni pinovi se mogu koristiti za prekide. • Prekidi imaju dodeljene prioritete: istovremena pojava prekida se razrešava na principu prioriteta.

  7. - Osnovne karakteristike - • Periferije imaju lokalnu memoriju: registri su u modulima - ne koriste RAM. • USART se nalazi na čipu: odvojeni prekidi za slanje i primanje. • Tajmer sa prekidima za brojanje događaja, generisanje vremena, PWM,... • Watchdog • ADC (10- bitni ili više ) sa 8 ulaza. • EPROM verzija (One Time Programmable-memorija koja može samo jednom da se isprogramira) • LCD drajver • Stabilna frekvencija procesora obezbeđena korišćenjem PLL-a i kristala frekvencije 32,768 Hz • Jednostavan razvoj programa zbog ortogonalne strukture: sve instrukcije podržavaju sve adresne režime • Koncept modularnog projektovanja: moduli su striktno memorijski mapirani

  8. Ključne karakteristike sistema – • Mikropotrošnja struje: CPUOff i OscOff režimi rada • Kompletna funkcionalnost ispunjena na 2.5V • Gradivni blokovi sistema: LCD, A/D konvertor, Ulazno-Izlazni portovi, UART, Watchdog, Tajmer, EEPROM itd. su integrisani na čipu • Jednostavna upotreba sistema • Efikasan instrukcijski set omogućava brzi razvoj softvera • Program može da se pokrene iz RAM-a • Programi učitani u RAM preko UART-a mogu da se izvršavaju u realnom vremenu • Kombinovanje ROM/RAM je moguće u osnovnom adresnom opsegu od 64 k bajta

  9. Ključne karakteristike sistema – • Mogucnost programiranja na (HLL) višim programskim jezicima • 12 registara opšte namene • Instrukcije koriste magacin • Veliki prostor za ROM i RAM • Ortogonalni skup instrukcija • Tabelarno orjetisana obrada koristeći indeksne režime rada • Brza konverzija podataka iz heksadecimalnog brojni sistem u decimalni brojni sistem pomoću specijalnih instrukcija DADD • Koriste se samo instrukcije za obraćanje ROM-u, pristup RAM-u, manipulisanje podacima, Ulazno-Izlaznim portovima i drugim periferijama • Mogućnosti CPU-a daleko prevazilaze zahteve inteligentnih senzorskih signalnih sistema. Sposobnost rada u realnom vremenu pruža mogućnost upotrebe i u ostalim sistemima male snage, uključujući upotrebu drugih periferija kao npr. DTM primopredajnik za žičani prenos

  10. Opšti osvrt na arhitekturu familije MSP430 Mikroračunarski sistemi bazirani na MSP430 sastoje se od: • Centralna Procesorska Jedinica (CPU) • Programska memorija (ROM ili EPROM) • Memorija podataka (RAM ili EEPROM) • Upravljanje operacijama • Periferni moduli • Oscilator i množač frekvencije

  11. Konfiguracija MSP430 sistema

  12. - CPU - Centralna procesorska jedinica objedinjuje transparenti instrukcijski skup i ortogonalni dizajn. Sastoji se od šesnaestobitne ALU, 16 registara i instrukcione upravljačke logike. Skup registara

  13. - Programski Brojač - 16-to bitni Programski brojač PC ukazuje na narednu instrukciju koja treba da se izvrši. Svaka instrukcija koristi paran broj bajtova (2, 4, 6 bajtova) 16-bitni programski brojač Programski brojać PC se dva puta inkrementira tokom pribavljanja svake instrukcije. Ovim postupkom PC ukazuje na sledeću instrukciju tokom izvršenja tekuće instrukcije, što omogućava dva načina adresiranja (neposredno i simboličko) koji koriste 1 reč informacija po instrukciji

  14. - Pokazivač magacina - Pokazivač magacina SP je postavljen na istu adresu sve dok se pristupa podacima iz magacina tokom obrade zahteva za prekid. CPU koristi SP za pamćenje povratne adrese poziva potprograma i prekida. SP koristi pre-dekrementni i post-inkrementni način rada. Pokazivač magacina (SP)

  15. - Statusni Registar (SR) - 16-to bitni statusni registar (SR/R2), se koristi kao izvorišni ili odredišni registar kod registarskog načina adresiranja sa instrukcijom veličine reči. BitoviStatusnog Registara SR :

  16. - Generator Konstanti CG1 i CG2 Registri – Najčešće korišćene konstante u programima generišu registri generatora konstanti R2(CG1) i R3(CG2), bez zahteva za dodatnim šesnaestobitnim rečima programskog kôda. • Prednosti generatora konstanti: • Ne koriste se specijalne instrukcije • Ne koriste se dodatne kôdne reči za sedam najčešće korišćenih konstanti • Kraće vreme izvršenja instrukcija: direktan pristup bez korišćenja MDB

  17. Adresni režimi rada MSP430 arhitektura ima sedam načina za adresiranje izvorisnih operanada i četiri za adresiranje odredišnih operanada koji adresiraju kompletni adresni prostor. U sledećoj tabeli prikazano je postavljanje bitova As i Ad i odgovarajući način adresiranja.

  18. Organizacija memorije Memorija kod MSP430 familije mikrokontrolera je konfigurisana na principu „von-Neumann“ arhitekture. Sastoji se iz programske memorije (ROM, EPROM, RAM) i memorije podataka (RAM, EEPROM, ROM) koje su na jednom adresnom prostoru i koriste jedinstvenu adresnu i magistralu podataka. Celokupni adresni prostor

  19. Organizacija ROM memorije - • ROM ima maksimalnu veličinu 64 kB. Adresni prostor dele registri specijalne namene, registri perifernih modula, memorija podataka i programska memorija. Početna adresa pri bilo kojoj veličini ROM-a je uvek 0FFFEh. Tabela vektora prekida takođe startuje sa najvišim prioritetom na najvišoj ROM adresi obima reči. Programski brojač, a samim tim i tok instrukcija imaju smer od viših ka nižim adresama. Programski brojač se može uvećati za 2, 4 ili 6 u zavisnosti od toga koji se način adresiranja koristi.

  20. - Organizacija RAM-a i periferija - Adresiranje oba ova memorijska prostora se izvodi apsolutnim načinom adresiranja ili preko 16-to bitnih radnih registara koristeći indeksni, indirektni ili indirektni autoinkrementni način adresiranja

  21. - Periferni Moduli – Registri Specijalne Namene SFR - Konfiguracija sistema i delovanje pojedinih perifernih modula u radnim režimima procesora se uglavnom definišu u registrima specijalne namene. Registri specijalne namene se nalaze u nižem adresnom opsegu i realizovani su u bajt formatu. Ovim registrima se pristupa pomoću instrukcija pobima bajta. Čak i kada određeni bitovi regisata specijalne funkcije dele isti adresni prostor oni mogu biti fizički implementirani unutar odgovarajućeg modula. Adresni prostor registra specijalne namene SFR

  22. Upravljanje operacijama - Sistemski reset i inicijalizacija - • Mikrokontroleri iz familije MSP430 imaju četiri moguća izvora reseta: • Nakon uključenja sistema napajanja • Postavljanjem na niski nivo signala na pinu • Programiranjem time-out-a watchdog tajmera • Detektovanjem greške pri unošenju sigurnosne šifre tokom inicijalizacije WDTCTL registra.

  23. - Sistemski reset i inicijalizacija - Nakon pojave reseta, program testira markere prema izvoru reseta. Program indetifikuje izvor reseta i preduzima odgovarajuću akciju. Uključenjem sistema napajanja aktivira se hardverska sekvenca za inicijalizaciju: • Svi pinovi se postavljaju kao ulazni • Svi markeri su resetovani • Vektor adrese sa lokacije 0FFFEh se smešta u programski brojač (PC). • CPU startuje sa adrese koja se nalazi u power-up clear (PUC) vektoru • Statusni registar (SR) se resetuje • Svi registri se inicijalizuju od strane programa (npr. pokazivač magacina, RAM, ...) osim • programskog brojača i statusnog registra • Digitalno kontrolisani oscilator startuje sa najnižom frekvencijom • Nakon startovanja oscilatora, frekvencija se podešava do željene vrednosti

  24. - Opšta struktura prekida - • Postoji tri tipa prekida: • sistemski reset • nemaskirani prekid • maskirani prekid

  25. - Opšta struktura prekida - • Izvori koji dovode do sistemskog reseta su: • Uključenje sistema na napajanje • Postavljanje ulaza na nizak nivo (ako se selektuje reset režim rada) • Prekoračenje watchdog tajmera (ako se selektuje watchdog režim rada) • Greška pri unošenju sigurnosne šifre watchdog tajmera • (upisivanje u WDTCTL registar sa pogrešnom sigurnosnom šifrom)

  26. - Opšta struktura prekida - • Nemaskirani prekid generiše: • Usponska ivica napinu (ako se selektuje NMI režim rada) • Prekid rada oscilatora • Izvori koji dovode do maskiranih prekida su: • Prekoračenje watchdog tajmera (ako se selektuje tajmer režim rada) • Ostali moduli koji generišu zahtev za prekid

  27. - Upravljanje prekidima - Uvek kada imamo zahtev za prekidom i ako su postavljeni bit dozvole svih prekida i odgovarajući bit dozvole prekida tada se servisna rutina prekida izvršava na sledeći način: • CPU aktivan: izvršenje tekuće instrukcije mora da se završi. • CPU stopiran: prekidaju se režimi rada sa malom potrošnjom. • 2. Programski brojač koji ukazuje na sledeću instrukciju je smešten u magacin. • 3. Status registar je smešten u magacin. • 4. Ako se setuje više prekida koji čekaju na izvršenje, opslužiće se prekid sa • najvećim prioritetom • 5. Marker odgovarajućeg zahteva za prekid se automatski resetuje. • Istovremena pojava više markera opslužuje se softverski. • Bit dozvole svih prekida (general interrupt enable bit) GIE se resetuje; • CPUOffbit, OscOff bit i SCG1* bit se brišu; statusni bitovi V, N, Z i C se • resetuju. • Sadržaj odgovarajućeg vektora prekida se smešta u programski brojač. • Programski brojač nastavlja sa opsluživanjem prekidne rutine sa te adrese.

  28. Pokazivač magacina pre i posle prekida Od prihvatanja zahteva za prekid pa do početka izvršenja prve instrukcije odgovarajuće servisne rutine prolazi šest taktnih ciklusa. Prekidna rutina se završava instrukcijom RETI

  29. Načini rada Familija mikrokontrolera MSP430 koristi nekoliko načina rada

  30. Načini rada 1) Aktivni način rada AM U ovom režimu rada moguće je koristiti različite kombinacije rada aktivnih perifernih modula 2) Način rada male_potrošnje­­_0 LPM0 CPUOff bit CPU-a je u stanju Off, rad perifernih uređaja se ne brani. Signali ACLK i MCLK su aktivni. Kolo za upravljanje oscilatora je aktivno. 3) Način rada male_potrošnje_1 LPM1 CPUOff bit CPU-a je u stanju Off, rad perifernih uređaja se ne brani. Signali ACLK i MCLK su aktivni.

  31. Načini rada 4) Način rada male_potrošnje_2 LPM2 CPUOff bit CPU-a je u stanju Off, rad perifernih uređaja se ne brani. Kolo za upravljanje oscilatora nije aktivno. Signal ACLK je aktivan 5) Način rada male_potrošnje_3 LPM3 CPUOff bit CPU-a je u stanju Off, rad perifernih uređaja se ne brani. Kolo za upravljanje oscilatora i signal MCLK nisu aktivni. DC generator od DCO (-> MCLK generator) je isključen.Signal ACLK je aktivan 6) Način rada male_potrošnje_4 LPM4 CPUOff bit CPU-a je u stanju Off, rad perifernih uređaja se ne brani. Kolo za upravljanje oscilatora nije aktivno. DC generator od DCO (-> MCLK generator) je isključen. Signal ACLK nije aktivan. Kristal oscilator je stopiran

  32. Osnovna podešavanja za aplikacije male potrošnje : Osnovni principi rada koji su sa aspekta aplikacija tipa mikropotrošnje najvažniji: * Neiskorišćeni FETI ulazi se spajaju na napon napajanja * Analogi generator u LCD+ modulu se isključuje * Pinovi JTAG-a TMS, TCK i TDI se ne povezuju na napon napajanja. * Ulazi CMOS kola se postavljaju na definisano stanje * Bira se najniža moguća radna frekvenciju za jezgro i periferije * Omogućimo najslabiju pobudu na osetljaj ako se koristi LCD ili ga isključimo * Dozvoljavaju se prekidi nakon čega počinje izvršenje programa

  33. Periferije Periferni moduli su povezani sa centralnom procesorskom jedinicom preko MAB-a, MDB-a i uslužne rutine za obradu prekida i linija za inicijaliziranje zahteva za prekid. Veza modula/periferija

  34. Periferije • Digitalni U/I portovi • Univerzalni Tajmer/Port modul • Tajmer_A • LCD (Liquid Crystal Display) • A/D konvertor • Univerzalni sinhroni-asinhroni prijemnik/predajnik USART • (Universal Synchronous Asynchronous Receive/Transmit)

  35. Digitalni U/I portovi • Uređaji MSP430 familije imaju do 10 U/I portova – P1 do P10 • Svaki port ima osam U/I pinova • Svi registri portovasu 8-mo bitni i pristupa im se pomoću instrukcija obima bajt

  36. Digitalni U/I portovi Port P0 Port P1

  37. Digitalni U/I portovi Port P2 Port P3

  38. Digitalni U/I portovi Port P4

  39. Tajmer_A • Osnovni gradivni blokovi 16-bitnog Tajmera_A su: • Tajmer koji kontinualnoa broji do unapred definisane vrednosti, broji do predefinisane vrednosti i nazad do nule pri čemu se rad tajmera može zaustaviti • Izvor takta tajmera koji se bira softverski • Selektovani izlaz takta se može podeliti sa 1, 2, 4 ili 8 • Postoje 5 registara sa zahvatanjem/kompariranjem (capture/compare) pri čemu svaki registar može da zahvata jedno stanje, a dva signala za zahvatanje se kontrolišu od strane hardvera ili softvera • Postoje 5 izlazna modula koji podržavaju impulsno-širinskou modulaciju

  40. Tajmer_A Četiri režima rada tajmera su definisana na sledeći način:

  41. LCD (Liquid Crystal Display) LCD-ovi koriste ambijentalnu svetlost za prikaz informacija, a samim tim su mali potrošači energije. U MSP430 familiji mikrokontrolera koriste se četiri metode za upravljanje LCD-a: • Statička (metod statičke pobude) • 2MUX ili 1/2 popune • 3MUX ili 1/3 popune • 4MUX ili 1/4 popune.

  42. LCD (Liquid Crystal Display) -Kod statičke metode potreban je jedan pin za zajedničku elektrodu (COM0) i jedan pin za svaki segment: broj pinova = 1 + broj segmenata • svaka segmentna linija pobuđuje jedan segment -Kod 2MUX metode potrebna su dva pina za zajedničku elektrodu (COM0, COM1) i jedan pin za dva segmenta broj pinova = celobrojna vrednost [2 + (broj segmenata /2)] • svaka segmentna linija pobuđuje dva segmenta

  43. LCD (Liquid Crystal Display) -Kod 3MUX metode potrebna su tri pina za zajedničku elektrodu (COM0, COM1, COM2) i jedan pin za tri segmenta: broj pinova = celobrojna vrednost [3 + broj segmenata /3)] • svaka segmentna linija pobuđuje tri segmenta -Kod 4MUX metode potrebna su četiri pina za zajedničku elektrodu (COM0, COM1, COM2, COM3) i jedan pin za četiri segmenta: broj pinova = celobrojna vrednost [4 + (broj segmenata /4)] • svaka segmentna linija pobuđuje četiri segmenta

  44. - A/D konvertor - Neke od karakteristika A/D modula: • Osam analognih ili digitalnih ulaznih kanala • Podešavanje strujnih parametara pomoću spoljašnjeg otpornika Rext • Merenje odnosa i apsolutno merenje • Ugrađen Sample-and-Hold • Marker prekida koji označava kraj konverzije (End-Of-Conversion-EOC) • ADAT registar zadržava rezultate konverzije do sledeće Start-Of konverzije (SOC)

  45. - A/D konvertor - Neke od karakteristika A/D modula: • Mala potrošnja energije • Samostalna konverzija bez dodatnog korišćenja CPU-a • Programabilna 12-to bitna ili 14-to bitna rezolucija • Četiri programabilna opsega daju 14-to bitni dinamički opseg • Brza konverzija • Veliki opseg napona napajanja • Monotona karakteristika u celom opsegu A/D konverzije

  46. - A/D konvertor - Konfiguracija ADC modula

  47. - Univerzalni sinhroni-asinhroni prijemnik/predajnik USART - (Universal Synchronous Asynchronous Receive/Transmit) Univerzalni sinhroni/asinhroni interfejs je serijski kanal koji služi za prenos serijskog niza od 7 ili 8 bitova između mikroprocesora i U/I perifernog uređaja. Karakteristike USART-a: • Asinhroni režim rada uključujući i bit čekanja (idle bit) za komunikacijske protokole • Dva pomeračka registra za upis podataka u URXD i isčitavanje iz UTXD • Predaja/prijem podataka gde bit najmanje težine ima prioritet • Brzina predaje i prijema je programabilna • Statusni markeri

  48. - Univerzalni sinhroni-asinhroni prijemnik/predajnik USART - (Universal Synchronous Asynchronous Receive/Transmit) Blok dijagram USART-UART načina rada

  49. - Univerzalni sinhroni-asinhroni prijemnik/predajnik USART - (Universal Synchronous Asynchronous Receive/Transmit) Format asinhrone komunikacije Kod asinhrone komunikacije koriste se start bit, 7 ili 8 bitova podataka, bit parnosti, bit adrese za odgovarajući način adresiranja i jedan ili dva stop bita. Bit koji određuje periodu je definisan pomoću selektovanog taktnog izvora i podataka smeštenih u registru brzine prenosa

More Related