Mikrokontrolerski sistemi

Autor: Tomislav Ratić dipl.ing

8051 Familija

Kontakt: tomara@uns.ns.ac.yu

 

MIKROKONTROLERSKO APLIKATIVNO - RAZVOJNI SISTEM SA SAB 80C535

SAB 80C515/80C535 je član Siemensove SAB 8051 familije 8-bitnih mikrokontrolera. Ovo znači da je zadržao punu kompatibilnost 'na dole' sa Intelovom familijom MCS 51 uz dodatna softverska i hardverska proširenja. Kao i kod Intela (8051), osnovna verzija SAB80C515 je sa 8 KB fabrički programabilnog ROM-a, dok je (kao 8031) SAB80C535 verzija bez internog ROM-a.

Slovo 'C' u oznaci znači da je kontroler urađen u ACMOS tehnologiji, dok otsustvo tog slova znači da je u pitanju MYMOS tehnologija. Razlike između ove dve tehnologije se odnose na potrošnju (radi se u stvari o verzijama CMOS i NMOS tehnologije), Power Down Modove, dodatni port P6, tajminge AD konvertora, oscilator kao i neka interna hardverska resenja, ali su inače oba resenja funkcionalno kompatibilna. Sve verzije su smeštene u 68-pinsko kućište PLCC ili PMQFP tipa. Postoje verzije za 12, 16 ili 20 MHz, dok za 16 MHz verziju postoji i podvrsta za prošireni temperaturni opseg od -40 do +85 °C. (Osnovni temperaturni opseg je standardni komercijalni od 0 do +70 °C).

Karakteristike SAB 80C535 su:
• 256 bajtova internog (on-chip) statičkog RAM-a
• Oblast od 128 bajtova rezervisana za specijalne funkcijske registre (SFR)
• Šest 8-bitnih paralelnih I/O portova i jedan 8-bitni ulazni port za digitalne ili analogne ulaze
• Tri 16-bitna tajmera/brojača
• 16-bitne reload, capture i compare mogućnosti
• Full-duplex serijski port sa 4 operaciona moda i internim generatorom baudske brzine
• U osnovi 8-bitni A/D konvertor sa 8 multiplexiranih ulaza i programabilnom naponskom referencom pomoću koje je moguće ostvariti 10-bitnu AD konverziju u trajanju manjem od 50us.
• 16-bitni watch-dog tajmer
• Idle i power-down modovi (kod power-down moda čuvanje sadržaja celog internog RAM-a)
• Boolean procesor
• 256 direktno adresabilnih bitova
• 12 interapt izvora (7 externih i 5 internih) sa 4 nivoa prioriteta
• Interna dubina steka do 256 bajtova
• Sa quarcom od 12MHz trajanje 1 instrukcionog ciklusa od 1us
• 4 mikrosekundno 8-bitno množenje i delenje
• Mogućnost adresiranja 64KB externe programske (EPROM) i 64KB externe memorije za podatke (RAM)
• Hardverska i softverska kompatibilnost sa 8051 familijom mikrokontrolera

Osnovne hardverske razlike između 80C52/80C32 i 80C515/80C535 mogu se videti sa slike 1. Pomoću dodatnih SFR (special function registers) podržan je rad osnovnih i dodatnih mehanizama i periferija u mikrokontroleru. Na slici 2. je logička predstava, a na slici 3. je detaljna unutrašnja blok šema 80C535.

 

 

Slika 1. Hardverska razlika između 80C515/80C535 i 80C52/80C32
 
Slika 2. Logička shema SAB 80C515/80C535
 
Slika 3. Detaljna blok shema SAB 80(C)515/80(C)535


APLIKATIVNO - RAZVOJNI SISTEM CB535-2.0

Sistem je smešten na kartici evropa formata (160x100 mm) na kojoj se nalaze:

• Mikrokontroler - SIEMENS SAB80C535 (U1)
• Adresni leč - 74HCT573 (U2)
• ROM memorija 32KB - 27C256 (U3)
• RAM memorija 32KB - 62256 (U4)
• RS232 interface sa MAX232 (U5) (opciono 422/485 standard sa LTC485) 
• Supervizorsko reset kolo LTC1235CN (U6) za baterijski bekap externog i/ili internog RAM-a i externi watch-dog
• Baterija - NiCd 3V6/65mAh, ili litijumska CR2032
• Kontrolna logika - 74HCT00 (U7) i 74HCT30 (U8)
• Real Time Clock (I2C bus) - PCF8583 (U9)
• Serijski EEPROM (I2C bus) - 24C02 (ili većeg kapaciteta) (U10)
• Podesivi referentni napon za AD konvertor u uC 80535 pomoću:
- Programabilne zener diode TL431 (ZDP) ili
- Referentne zener diode LM336-5.0 (ZDR)
• Quarc od 12 MHz
• 256 bajtova I/O prostora
• Konektor za serijsku komunikaciju (K1)
• Konektori za pristup svim portovima, kao i DATA i ADRESS magistrali (K2, K3, K4)
• Konektor za priključenje mapirane periferije u I/O prostor kartice (8 bajtova) (K5)
• Konektor za priključivanje I2C periferija (K6)

Na slici 4. je izgled, na slici 5. je električna šema, na slici 6. je raspored elemenata na štampanoj ploči, dok je na slici 7. blok šema CB535-2.0.

CB535-2.0 je aplikativnorazvojni system što znači da je namenjen za ugradnju u gotove uređaje, ali i da se upotrebom EPROM emulatora ili mehanizma boot-loadera dobija razvojni sistem (vidi članak o razvojnom systemu za Intel 8031 iz prvog broja "Mikroelektronika - Projekti", ili na http://www.mikroelektronika.co.yu/moduli/modul18.htm. Dodatna mogućnost je da se razvoj uređaja ostvaruje na samom mestu ugradnje, jer se kartica sa boot-loaderom ne razlikuje od krajnje verzije u kojoj se u EPROM-u nalazi izvršni kod.

 

Slika 4. Izgled compu-board sistema CB535-2.0

Fizički, CB535-2.0 je smešten na kartici evropa formata (160x100mm). Na jednoj strani se nalaze otvori za pričvršćivanje standardnog nosača kartice, a na drugoj strani je standardni 64-pinski konektor DIN 41612 (a+c). Na karticu je potrebno dovesti napajanje +5V i digitalnu masu (GND) za digitalni deo i +12V i analognu masu (GND-A) za analogni deo. Vizuelna indikacija napajanja na kartici je ostvarena pomoću 3mm LE dioda i to za napajanja +5V (žuta), i +12V (zelena). Svako integrisano kolo na kartici poseduje 'svoj' filterski kondenzator od 100nF.

Slika 6. Raspored elemenata na štampanoj ploči CBN535-2.0

 

Supervizorsko kolo LTC1235CN (U6)

U cilju pouzdanijeg rada za generisanje reset signala upotrebljeno je integrisano kolo LTC1235. Radi se o supervizorskom kolu koje garantuje ispravan reset signal i pri napajanju od 1V. Pored reset uloge, LTC1235 omogućava i rezervno napajanje externe statičke RAM memorije (pa i internog CMOS RAM-a u samom mikrokontroleru), rano upozorenje o nestanku napajanja i ručni reset (pomoću reset tastera). Ovo kolo poseduje i watch dog tajmer koji se može koristiti umesto postojećeg internog watch doga u samom 80C535. LTC1235 je pin kompatibilan sa sličnim supervizorskim kolom MAX691, tako da je moguća njihova međusobna zamena.

Baterija za rezervno napajanje

Mesto predviđeno za bateriju je tako podešeno da je moguće postaviti klasičnu NiCd bateriju napona 3.6V kapaciteta 65mAh, ili podnožje za litijumsku bateriju CR2032 kapaciteta 180 mAh. Vrsta baterije koja se koristi zavisi od načina korišćenja CB535-2.0.

Real Time Clock (RTC) - PCF8583 (U9)

RTC je Philipsov PCF8583. Ovo je kolo sa I2C interfejsom koje se može koristiti kao tajmer i kao brojač. PCF8583 poseduje i alarmni izlaz koji je povezan na interapt mikrokontrolera. Za generisanje vremenske baze RTC-a upotrebljen je quarc od 32768 Hz, a za njeno fino podešavanje trimer kondenzator.
Serijski EEPROM - 24C02 (U10)

Na kartici se nalazi I2C serijski EEPROM 24C02 kapaciteta 256 bajtova, a moguće je postaviti sličan EEPROM većeg kapaciteta.

AD konverzija pomoću CB535-2.0

AD konvertor kod 80C535 je u osnovi 8-bitni. Moguće je softversko podešavanje prozora konverzije, tako što je i za gornju i za donju granicu na raspolaganju 16 ekvidistantnih nivoa od 0 do 5V. (Minimalna širina prozora je 1V.) Ovakvo podešavanje omogućava tačniju (finiju) AD konverziju merenih veličina čiji je opseg promena manji od 5V, ali i dobijanje 10-bitnog AD konvertora. Naime, koristeći dve uzastopne AD konverzije uz promenu prozora konverzije, moguće je dobiti 10-bitni odbirak merene veličine i to za manje od 50 mikrosekundi.

Da bi se ostvarilo što tačnije merenje analognih veličina, posebna pažnja je obraćena na izvođenje veza na štampanoj ploči. Na samoj kartici digitalna i analogna masa su spojene pomoću džampera. Ukoliko je potrebno ove dve mase se mogu trajno povezati lemljenjem, ili se uklanjanjem džampera mogu razdvojiti i povezati na nekom drugom pogodnijem mestu.

Referentni napon za AD konvertor u uC 80535 se može ostvariti bilo postavljanjem programabilne zener diode TL431 (ZDP) ili referentne zener diode LM336/5 (ZDR). Pomoću trimer potenciometra T1 podešava se nivo referentnog napona.

KONEKTORI

Konektor K1 za serijsku komunikaciju po standardima RS232 / RS485

Standardno, na CB535-2.0 je postavljeno integrisano kolo MAX232 koje omogućava serijsku komunikaciju po RS232 standardu. Za indikaciju protoka na serijskom portu u smeru od PC-ja ka mikrokontroleru služi crvena LED.

Postavljanjem takozvane 'piggy back' kartice sa 2 integrisana kola LTC485 u podnožje za MAX232, serijska komunikacija se prilagođava RS485 ili RS422 standardu.

Konektori K2, K3 i K4 za pristup svim portovima, DATA i ADRESS magistrali

U tabeli 1. dat je raspored pinova na priključnim konektorima K2, K3 i K4 (DIN 41612). Pored portova P1, P3, P4 i P5, izvedeno je i svih 8 ulaza AD konvertora (tj. port P6), DATA bus kao i donjih 8 adresa (A0-A7). Na konektorima su takođe i napajanje digitalnog dela (+5V i digitalna masa) i napajanje analognog dela (+12V, -12V i analogna masa. Priključak za -12V se u stvari ne koristi na samoj kartici, ali se nalazi na konektoru zbog BUS kompatibilnosti.) Tu je i AN signal (Adress Enable) koji služi za pristup adresama FF00-FFFFh. Ovih 256 bajtova rezervisno je kao I/O prostor u koji se mogu "umapirati" spoljašnji uređaji. (Npr. na ovaj način je moguće upaliti dodatnih 256 LE dioda). Pristup ovim adresama je identičan pristupu externom RAM-u (pomoću signala RD i WR), a dodeljivanje adresa periferiji je najjednostavnije pomoću nekog adresnog dekodera (npr. integrisano kolo 74HC688).

Portovi P0, P2 i P3 koje poseduje Intelov 8051 su i kod 80C535 nepromenjeni. Port P1 je i dalje kvazi-bidirekcioni, ali port pinovi imaju i alternativne funkcije. (U tabeli 1. su pored imena porta date i alternativne funkcije pina - INT2, INT3, INT4, INT5 i INT6 su oznake za fukcije port pinova kao interapt ulaza, CC0, CC1, CC2 i CC3 se odnose na njihove capture/compare mogućnosti. T2EX je externi reload triger ulaz tajmera 2, a T2 je ulaz tajmera T2 kao brojača. CLKOUT je izlaz sistemskog clocka.) Pored ovih, postoje i dodatni portovi - klasični kvazi-bidirekcioni portovi P4 i P5 bez alternativnih funkcija i port P6. Port P6 postoji samo u ACMOS verziji mikrokontrolera (postoji slovo 'C' u oznaci - SAB80C535). Radi se o jednosmernom - ulaznom 8-bitnom portu, sa standardnim TTL nivoima, koji je vezan paralelno 8-ulaznom analognom multiplexeru AD konvertora.

Pored osnovnih alternativnih funkcija koje imaju port pinovi u samom mikrokontroleru, na CB535-2.0 neki port pinovi imaju specijalne funkcije (u tabeli 1. one su navedene u rubrikama 'specijalne funkcije') kojima je podržan rad periferija kako onih na kartici, tako i nekih spoljnih. Pinovi P5.0 i P5.1 imaju i funkcije SDA i SCL pinova (respektivno) za I2C periferije, a pin P1.4 služi za prihvat interapta I2C Real Time Clocka PCF8583 koji se nalazi na samoj kartici. P3.4 služi i za određivanje smera RS485 komunikacije, dok je na P3.2 doveden i PFI signal (Power Failure Interrupt) sa supervizorskog kola LTC1235. Pin P1.6 je spojen sa ulazom za osvežavanje Watch Dog kola u LTC1235.

 

 

 

Tabela 1. Raspored priključaka na BUS konektorima na CB535'2.0

Backplane BUS

Zahvaljujući konektoru K2 (64-pinski konektor DIN41612 (a+c) savijen pod uglom od 90 stepeni) moguće je jednostavno povezivanje CB535-2.0 sa dodatnim karticama nekog uređaja bez mukotrpnog "ručnog" ožičavanja. Dovoljno je napraviti takozvani backplane bus na kome se nalaze odgovarajući "ženski" konektori po DIN 41612 standardu (jer je ivični konektor na CB535 "muški") i koji su međusobno spojeni paralelnim bus linijama. Postavljanjem backplane busa na zadnju stranu npr. standardne 19-inčne "rack" kutije i prostim umetanjem kartica u vođice, obezbeđeno je jednostavno povezivanje velikog broja kartica sa CB535-2.0. Jedna od njih može biti i napajanje digitalnog i analognog dela uređaja koje se preko backplane busa prosleđuje na sve ostale kartice, ili se na samom backplane-u može postaviti konektor za napajanja.

Konektori K3 i K4

Paralelno povezana sa konektorom K2, na kartici su predviđena mesta za ugradnju dva 64-pinska konektora K3 i K4 (DIN41612 (a+b)), tako da je povezivanje sa nekom drugom karticom moguće i takozvanim sandwich systemom. Pošto su mesta za ove konektore u stvari dvoredni nizovi rupa (pedova) sa rasterom od 2.54 mm, u njih je moguće postaviti i muške ili ženske letvice, što je korisno kako prilikom razvoja, tako i kao konačno rešenje u nekim slučajevima.

Konektor K5 za priključenje mapirane periferije u I/O prostor kartice (8 bajtova)

Osam bajtova I/O prostora (adrese FF80-FF88h) izdvojeno je posebno na ovaj 16-pinski konektor. Pored napajanja +5V i digitalne mase, izvedeni su i DATA bus, adrese A0, A1 i A2, WR i RD signali, kao i čip selekt signal za "prozivanje" gore navedenih adresa. Pomoću ovog konektora je moguće jednostavno priključiti neku periferiju na CB535-2.0 bez upotrebe adresnog dekodera.

Konektor K6 za priključivanje I2C periferija

Radi se o 5-to pinskom jednorednom konektoru na kome su izvedeni:
• +5V
• GND
• SCL (Serial clock)
• SDA (Serial Data)
•INT (Interapt izlaz I2C periferije).
Služi za priključivanje I2C periferija na CB535-2.0.

ZAKLJUČAK

Zahvaljujući mogućnosti 10-bitne AD konverzije, tajmerima sa capture-compare mehanizmima i ostalim unutrašnjim periferijama mikrokontrolera SAB80C535, CB535-2.0 je 8-bitni mikrokontrolerski sistem sa mogućnošću uspešne primene u raznim aplikacijama - od raznih merenja preko upravljanja motorima do kontrole procesa u industriji. Zahvaljujući BUS orijentaciji na jednostavan i efikasan način moguća su hardverska proširenja i montaža gotovog uređaja koji se bazira na CB535-2.0. Upotrebom supervizorskog kola ostvaren je pouzdan rad u uslovima spoljnjih smetnji. Korišćenjem serijske komunikacije po standardima RS232 (uz upotrebu strujnih petlji) ili RS485/422, moguća je daljinska kontrola i monitoring procesa kojima se upravlja pomoću CB535-2.0. Real Time Clock čini sistem sposobnim za samostalan rad kada je potrebno voditi računa o realnom vremenu, a serijski EEPROM omogućava (daljinsko) menjanje parametara (merenja, procesa ...) bez potrebe za reprogramiranjem glavnog EPROM-a. Za procese akvizicije i pamćenje veće količine podataka u RAM-u, kao i rad RTC-a u odsustvu glavnog napajanja, postoji baterija za rezervno napajanje. Eventualno ograničenje od 32KB ROM-a i 32KB RAM-a, lako se može prevazići upotrebom npr. Atmelove CMOS Flash memorije AT29C040A kapaciteta 512KB. Povezivanjem I2C periferija na CB535-2.0 preko I2C konektora na najjednostavniji način su moguća dodatna hardverska proširenja. I na kraju, iako CB535-2.0 nije "In Circuit Programing System", upotrebom mehanizma boot-loadera razvoj gotovog uređaja koji se bazira na ovom sistemu moguć je na mestu ugradnje. x


Pročitajte više o ovoj temi
Mali saveti za početnike iz asemblera za Intel 8051
Smart LCD, šta i kako? 
LOOK-UP tabele 
Softverska kašnjenja I
Softverska kašnjenja
Mapiranje

C o p y r i g h t  1998 mikroElektronika. All Right Reserved. Za sva pitanja obratite se redakciji