w w w. e p . c o m . p l
ELEKTRONIKA PRAKTYCZNA •
NA CD: KATALOG ONSEMI, LABVIEW 7.0, BIBLIOTEKA AVR DLA PROTELA
Miêdzynarodowy magazyn elektroników konstruktorów
8/2003
●
sierpień
●
15 zł 50 gr
(w tym 7% VAT)
8/2003 • sierpieñ
▲ Odtwarzacz MP3 z układem STA013
Miniprojekty Od str. 35 zaczyna się tegoroczny miniprojektowy „raj”. Znajdą w nim coś dla siebie zarówno gitarzyści, fani mikrokontrolerów, użytkownicy telefo− nów komórkowych, użytkownicy Girdera, a także szereg innych mniej i bardziej pomysłowych rozwiązań.
▲
„Klocki” RS485
Na str. 31 przedstawiamy opis konstrukcji odtwarzacza MP3 wykonanego na układzie STA013 firmy STMicroelectronics.
Wzmacniacz semi−surround ▲ do komputera PC
▲
W artykule na str. 51 przedstawia− my opis czterokanałowego wzmacniacza audio do PC.
Dwa kolejne „klocki” systemu RS485 przedstawiamy w artykule na str. 46.
Zegar z lampami Nixie z EP1/2003 wzbudził wśród naszych Czytelni− ków niemałą sensację. Aby ułatwić wykonanie podobnego urządzenia znacznie taniej przygotowaliśmy oryginalny projekt, którego opis publikuje− my na str. 14. Na płycie CD−EP8/2003B zamieściliśmy film prezentujący działanie tego zegara.
▲
▲ Samochodowy wzmacniacz 25 W w klasie D
▲
Zegar Nixie dla oszczędnych
Budowanie wzmacniaczy o dużej mocy do zastosowań w samochodach jest zadaniem trudnym, głównie z powodu niskiego napięcia zasilania. Skuteczny sposób ominięcia takich trudności przedstawiamy w artykule na str. 19.
Programator USB mikrokontro− lerów ATmega – ISP Na str. 25 przedstawiamy opis programatora ISP mikrokontrolerów ATmega. Wyposażono go w interfejs USB!
DSO−25216 − szybka przystawka oscyloskopowa Oscyloskop bez wyświetlacza? Na str. 67 przedstawiamy oscyloskopową przystawkę do PC, która niedawno pojawiła się na polskim rynku.
▲
▲
Radiowy system zdalnego sterowania
Dwukierunkowy system zdalnego sterowania przedstawiamy na str. 56.
6
Elektronika Praktyczna 8/2003
Nr 8 (128) sierpień 2003
Projekty
Nowości w pakiecie ▲ LabView 7 LV to jeden z najlepszych pakie− tów do projektowania aplikacji nadzoru i sterowania (choć nie tylko). Nowości jego najnowszej wersji przedstawiamy na str. 128, a wersję ewaluacyjną zamiesz− czamy na CD−EP8/2003B.
Płytki drukowane w domu ▲ Na str. 59 przedstawiamy ostatnią część artykułu o jednej z najdoskonalszych „domo− wych” technologii niskonakła− dowej produkcji płytek druko− wanych.
Zegar Nixie dla oszczędnych ..................................................... 14 Samochodowy wzmacniacz 25 W w klasie D, część 1 .......... 19 Programator USB mikrokontrolerów ATmega − ISP, część 1 .......................................................................................... 25 Odtwarzacz MP3 z układem STA013, część 1 ......................... 31 „Klocki” RS485, część 3 ............................................................... 46 Wzmacniacz semi−surround do komputera PC, część 2 ....... 51 Radiowy system zdalnego sterowania z kanałem zwrotnym, część 2 .................................................... 56
Miniprojekty Programator „atmelowych” mikrokontrolerów 89C51/52/55 ................................................................................. 35 Inteligentny wyłącznik ................................................................. 36 Rejestrator stanów logicznych dla PC ...................................... 38 Programator ISP mikrokontrolerów AVR z serii AT90S .............. 39 PanuWorld Nokia Cable ............................................................. 40 Przetwornica napięcia 1 V/5 V .................................................. 41 Rozładowywarka/tester ogniw NiCd ........................................ 41 Inteligentny sterownik wentylatora ........................................... 42 Girder PlugIn na USB − zdalne sterowanie PC poprzez USB .................................................................................. 43 Screaming Bird − przystawka do gitary elektrycznej ............... 44 Gitarowy DiFuzz ........................................................................... 44
Notatnik Praktyka Płytki drukowane w domu, część 3 .......................................... 59
Programy Protel DXP − przełom na rynku narzędzi EDA dla elektroników, część 6 ........................................................... 64 Nowości w pakiecie LabView 7, część 2 ............................... 128
Sprzęt DSO−25216 − szybka przystawka oscyloskopowa .................... 67
Programy Zbliżamy się do końca cyklu, w którym prezentujemy możli− wości Protela DXP. Zapraszamy na str. 64.
Kurs Programowanie telefonów komórkowych, część 2 ............... 69 Podstawy projektowania systemów mikroprocesorowych, część 6 ................................................... 81 Obsługa timerów w mikrokontrolerach AVR, część 2 ............ 84
▲
Automatyka Laserowe czujniki odległości firmy Baumer Electric .............. 122 QNX Momentics − praca z pakietami BSP .............................. 125
Projekty Czytelników Karta MultiIO − dodatkowe porty PAR i SER do Amigi ............ 88
Z kraju i ze świata ........................................................ 111 Biblioteka EP ................................................................. 119 Kramik+Rynek ................................................................ 91 Listy ................................................................................... 97 Ekspresowy Informator Elektroniczny ..................... 107 Wykaz reklamodawców ............................................ 110
Elektronika Praktyczna 8/2003
7
Zegar P R O Nixie J EdlaKoszczędnych T Y
Zegar Nixie dla oszczędnych AVT−521
Dawno temu, na pocz¹tku lat 70., gdy o†przenoúnych komputerach osobistych moøna by³o poczytaÊ w†powieúciach fantastyczno-naukowych, a†wúrÛd elektronikÛw zaczyna³y kr¹øyÊ wieúci o†tajemniczych diodach LED, do wyúwietlania cyfr powszechnie stosowano wskaüniki jarzeniowe Nixie. Minͳo parÍ lat i†dziú, na kolejnej fali ìpowrotÛw do przesz³oúciî, znÛw pojawi³y siÍ urz¹dzenia elektroniczne w†stylu retro, ze szklanymi baÒkami. Moda ma swoje prawa, wiÍc ulegamy jej z nadziej¹, øe projekt ma³ego zegara bÍdzie dla m³odszych CzytelnikÛw interesuj¹cy, a†starszym przypomni czasy, gdy rozpoczynali swoj¹ przygodÍ z†elektronik¹.
14
Cyfrowe wskaüniki jarzeniowe Lampy tego rodzaju s¹ pod wzglÍdem zasady dzia³ania bliskimi kuzynami niewielkich lampek stosowanych chociaøby w†prÛbnikach napiÍcia - wskaünikach jarzeniowych. åwiecenie wywo³uje w†nich przep³yw pr¹du pomiÍdzy dwiema elektrodami umieszczonymi w†specjalnej atmosferze rozrzedzonego gazu, np. neonu. NapiÍcie zap³onu takich lamp zawiera siÍ w†granicach od kilkudziesiÍciu do kilkuset woltÛw, a po zap³onie (wy³adowaniu jarzeniowym) spadek napiÍcia na lampie (napiÍcie robocze) wynosi kilkanaúcie woltÛw. Pr¹d, przy ktÛrym lampa zaczyna úwieciÊ po zap³onie jest bardzo ma³y - rzÍdu dziesi¹tek mikroamper. Szczelne szklane baÒki lamp maj¹ za zadanie utrzymanie odpowiedniego sk³adu i†ciúnienia gazu wokÛ³ elektrod. Lampy Nixie umoøliwiaj¹ najczÍúciej wyúwietlanie cyfr dziesiÍtnych od 0†do 9, ale ich
budowa sprawia, øe mog¹ s³uøyÊ takøe do wyúwietlania rÛønych symboli. Jest to zaleøne od ukszta³towania katody, wokÛ³ ktÛrej zjonizowane cz¹steczki gazu, wskutek p³yn¹cego pr¹du, jarz¹ siÍ czerwonawym úwiat³em. W†lampach przystosowanych do wyúwietlania cyfr dziesiÍtnych, katod jest dziesiÍÊ, a kaøda ma kszta³t odpowiedniej cyfry. Wyprowadzenia katod wtopione s¹ w†szklan¹ baÒkÍ i†wyprowadzone na zewn¹trz oddzielnymi drutami. Anoda dla wszystkich katod jest wspÛlna i†ma postaÊ siatki o†rzadkich oczkach, otaczaj¹c pÛ³koliúcie wszystkie katody. Cyfry katod (patrz¹c od strony obserwatora) s¹ montowane jedna za drug¹ w†taki sposÛb, aby siÍ ze sob¹ nie zwiera³y. W†momencie podania napiÍcia pomiÍdzy anodÍ lampy a†wybran¹ katodÍ, gaz wokÛ³ niej zaczyna úwieciÊ. Poniewaø znajduj¹ce siÍ przed ni¹ katody innych wygaszonych w†tym momencie cyfr s¹ wykonane z†cienkiego drutu i†przys³a-
Elektronika Praktyczna 8/2003
Zegar Nixie dla oszczędnych
Rys. 1. Schemat elektryczny sterownika zegara
niaj¹ j¹ tylko nieznacznie, a†oczka siatki anody s¹ duøe, dla obserwatora ìzapalonaî katoda prezentuje siÍ jako jasna i†czytelna cyfra úwiec¹ca w†szklanej baÒce lampy.
Mikrokontroler w†úwiecie wysokich napiÍÊ Do budowy czÍúci steruj¹cej zegara wykorzystany zosta³ mikrokontroler jednouk³adowy i†uk³ad scalony zegara czasu rzeczywistego. Z†punktu widzenia elektronika budowa czasomierza jest prosta: jest to zestaw po³¹czonych ze sob¹ licznikÛw taktowanych precyzyjnym generatorem. Jednak zrobienie tego w†starym stylu, chociaøby z†uøyciem scalonych licznikÛw cyfrowych, by³oby przesadnym utrudnianiem sobie zadania
Elektronika Praktyczna 8/2003
i†pos³uøenie siÍ mikrokontrolerem z†prostym programem steruj¹cym wydawa³o siÍ najbardziej racjonalne. Jednak jak wiadomo, mikrokontrolery zasilane s¹ niskim napiÍciem i†nie toleruj¹ poziomÛw napiÍÊ potrzebnych do zapalenia lamp Nixie. Dzisiaj bez trudu moøna zdobyÊ elementy spe³niaj¹ce rolÍ poúrednikÛw pomiÍdzy niskonapiÍciowym úwiatem procesorÛw a†wysokonapiÍciowymi wskaünikami jarzeniowymi. Graniczne napiÍcie UCE tranzystorÛw n-p-n typu MPSA42 i†p-n-p typu MPSA92 wynosi bowiem 300†V i†elementy te mog¹ pe³niÊ rolÍ interfejsu pomiÍdzy nisko- i†wysokonapiÍciowymi obwodami zegara. Maksymalny pr¹d kolektorÛw†tranzystorÛw wynosi 0,5 A, co znacznie przewyøsza potrzeby
opisywanego uk³adu. Dok³adne informacje na temat tych i†podobnych tranzystorÛw moøna uzyskaÊ na stronie internetowej firmy ON Semiconductor (http://www.onsemi.com).
Budowa zegara i†sposÛb dzia³ania Schemat elektryczny sterownika zegara pokazano na rys. 1. Pomiarem czasu w†opisywanym zegarze zajmuje siÍ uk³ad U4, czyli scalony zegar czasu rzeczywistego (RTC) 8583. Nie jest to nowy uk³ad, ale bardzo rozpowszechniony, poniewaø dobrze siÍ sprawdza w†rÛønych zastosowaniach. Moøe on spe³niaÊ takøe rolÍ kalendarza automatycznie ustalaj¹cego dni tygodnia, miesi¹ce, a†nawet lata przestÍpne,
15
Zegar Nixie dla oszczędnych
Rys. 2. Schemat elektryczny wyświetlacza
ale w†prezentowanym zastosowaniu te funkcje nie bÍd¹ wykorzystane. Najwaøniejsze, øe uk³ad podczas normalnej pracy pobiera bardzo ma³o pr¹du (jakie to waøne, powiemy za chwilÍ) oraz, øe komunikuje siÍ z†mikrokontrolerem za pomoc¹ magistrali I 2C, co oznacza, øe wymaga po³¹czenia jedynie z†dwiema liniami I/O mikrokontrolera. Pozosta³e wyprowadzenia mikrokontrolera wykorzystano do sterowania wyúwietlaczy Nixie i†obs³ugi przycisku S1. Z†uwagi na liczbÍ dostÍpnych portÛw uk³adu U1, a†takøe dla przed³uøenia øycia wyúwietlaczy, nie úwiec¹ siÍ one w†sposÛb ci¹g³y, lecz s¹ multipleksowane czyli naprzemiennie zapalane. Poniewaø dzieje siÍ to z†czÍstotliwoúci¹ wiÍksz¹ niø 50 Hz, oko ludzkie odnosi wraøenie, øe obie lampki úwiec¹ siÍ ca³y czas. Za obs³ugÍ multipleksu odpowiada linia P3.4, ktÛrej stan co 0,5 ms zmienia siÍ na przeciwny. Uk³ad zbudowany z†tranzystorÛw T12...T16 formuje dwa sygna³y w†przeciwfazie, steruj¹ce anodami dwÛch lamp naprzemiennie za³¹czane jest napiÍcie anodowe na jedn¹ z lamp. Tranzystory T1...T11 pe³ni¹ rolÍ interfejsÛw pomiÍdzy portami mikrokontrolera, a†sterowanymi 10 wyprowadzeniami katod-cyfr i†kropki - do³¹czaj¹ te elektrody do masy. Dla przyk³adu: jeøeli bÍd¹ przewodziÊ tranzystory T12 i†T4 zapalona zostanie cyfra 3 lampy L1.
16
Uk³ad zegara potrzebuje dwÛch napiÍÊ zasilaj¹cych: +5 V†dla mikrokontrolera i†wysokiego napiÍcia potrzebnego do zaúwiecenia lamp Nixie. NapiÍÊ dostarczaj¹ dwa transformatory TR1 i†TR2 po³¹czone kaskadowo. Problem podwÛjnego zasilania moøna by³o jeszcze rozwi¹zaÊ na dwa co najmniej sposoby: zamiast drugiego transformatora moøna zastosowaÊ przetwornicÍ lub zasilaÊ lampy bezpoúrednio z†sieci poprzez oporniki ograniczaj¹ce pr¹d. Pierwszy sposÛb jest dobry, ale ci¹gle cena przetwornic z napiÍÊ bezpiecznych 5/12†V na napiÍcie 150/200†V jest duøo wyøsza niø cena ma³ego transformatora. Drugiego sposobu nie polecam, poniewaø pojawia siÍ wtedy groüba poraøenia uøytkownika pr¹dem. M³odsi elektronicy maj¹ zwyczaj bagatelizowaÊ to niebezpieczeÒstwo, jednak kaødy, kto przeøy³ takie wydarzenie wie jakie niesie ze sob¹ nieprzyjemne doznania i†groüne skutki. Stosuj¹c transformator separuj¹cy unikamy nieúwiadomego zamkniÍcia poprzez w³asne cia³o obwodu pomiÍdzy zasilaniem z†sieci a†uziemieniem (kaloryfery, uziemione obudowy urz¹dzeÒ itp.). Transformator TR1 dostarcza wiÍc napiÍcia zmiennego, z†ktÛrego poprzez mostek B2 i†stabilizator U3 wytwarzane jest napiÍcie +5 V. Uzwojenia wtÛrne obydwu transformatorÛw s¹ ze sob¹ po³¹czone dziÍki czemu na uzwojeniu (normalnie pierwotnym) transfor-
matora TR2 pojawia siÍ wysokie napiÍcie ktÛre jest prostowane i†filtrowane w obwodzie z elementami B1 i†C3. Na marginesie naleøy dodaÊ, øe takie po³¹czenie dwÛch transformatorÛw dobrze uzmys³awia, jak wielkie s¹ straty energii powsta³e podczas jej przesy³ania, gdy pozornie nie jest wykonywana øadna praca. Poniewaø oba transformatory s¹ takie same, wiÍc napiÍcie na wyjúciu TR2 powinno byÊ takie samo, jak na wejúciu TR1, ale - jak pokaza³y doúwiadczenia - nie jest. Nawet bez obci¹øenia innymi uk³adami czÍúÊ energii zostaje tracona w†rdzeniach obydwu transformatorÛw na skutek dzia³ania pr¹dÛw†wirowych i†ich opornoúci magnetycznej. Ta czÍúÊ straconej energii jest wyczuwalna jako nagrzewanie siÍ rdzeni transformatorÛw. Dzia³anie zegara jest bardzo proste i†program steruj¹cy mikrokontrolerem moøe napisaÊ nawet ma³o doúwiadczony programista. Mikrokontroler odczytuje z†uk³adu RTC za pomoc¹ magistrali I2C informacje o†aktualnym czasie. NastÍpnie przekszta³ca j¹ na sygna³y steruj¹ce zapalaniem odpowiednich katod lampek Nixie w†trybie multipleksowania: odpowiednio cyfr dziesi¹tek godzin, jednostek godzin, dziesi¹tek minut i†jednostek minut.
Obs³uga zegara Poniewaø s¹ tylko 2†lampki, a†trzeba wyúwietliÊ 4†cyfry, informacje o†aktualnej godzinie i†minucie pojawiaj¹ siÍ kolejno w†odpowiedniej sekwencji. Najpierw na ok. 2†s†zapalaj¹ siÍ cyfry godzin, dla ³atwiejszej orientacji pali siÍ takøe kropka dziesiÍtna przy cyfrze jednostek godzin. NastÍpnie cyfry godzin zostaj¹ wygaszone i†po 0,3 s†pojawiaj¹ siÍ cyfry minut tym razem bez kropki dziesiÍtnej. Po 2†s†cyfry minut zostaj¹ ³agodnie wygaszone, co sygnalizuje zakoÒczenie sekwencji wyúwietlania czasu. Po sekundzie ca³y proces wraz z†odczytem aktualnego czasu z†zegara RTC zostaje powtÛrzony w†kolejnym cyklu. Ustawienie b¹dü skorygowanie bieø¹cego czasu jest bardzo proste, chociaø wykorzystywany
Elektronika Praktyczna 8/2003
Zegar Nixie dla oszczędnych WYKAZ ELEMENTÓW
Rys. 3. Schemat montażowy płytki sterownika
jest do tego tylko 1†przycisk SW1. Jeøeli w†czasie normalnej pracy zegara przycisk bÍdzie naciskany nieprzerwanie przez 2†sekundy, zegar przechodzi do trybu ustawiania. Na obu lampkach bez przerwy bÍdzie wyúwietlana aktualna godzina. KrÛtkie naciúniÍcia przycisku spowoduj¹ doliczenie kolejnej godziny aø do 23, nastÍpnie jest wyúwietlana oczywiúcie godzina 00. NaciúniÍcie przycisku d³uøej niø 2†s†powoduje przejúcie do ustawiania minut, w†sposÛb identyczny jak opisano wyøej. Kolejne d³ugie naciúniÍcie przycisku koÒczy ustawianie zegara i†sprawia, øe wraca do trybu normalnej pracy.
Montaø zegara Przyznam, øe pomys³ skonstruowania takiego zegara, podpowiedziany przez redaktora naczelnego, pocz¹tkowo nie wzbudzi³ mojego entuzjazmu - kolejny zegar! Jednak ìzabytkoweî lampki maj¹ swÛj urok i†mog¹ zabawnie prezentowaÊ siÍ we wspÛ³czesnych wnÍtrzach, wiÍc pewnie wielu CzytelnikÛw rozwaøy pomys³ budowy takiego czasomierza. NajwiÍkszy problem moøe byÊ z†jarzeniowymi wskaünikami cyfrowymi. Zapobiegliwi mog¹ je odnaleüÊ w†swoich szufladach. Niekiedy moøna takie elementy kupiÊ na wyprzedaøach, pojawiaj¹ siÍ takøe na aukcjach internetowych, np. www.allegro.pl. Ja uøy³em lampek LC-531 wyprodukowanych przez Dolnoúl¹skie Zak³ady Elektronowe UNITRA-Dolam w†1982
Elektronika Praktyczna 8/2003
roku, czyli w†minionym wieku. Moøna w†ich miejsce uøyÊ dowolnych innych. Trzeba tylko zastosowaÊ przejúciÛwkÍ pomiÍdzy otworami dla zdobytych lamp, a†coko³ami dostosowanymi do typu lamp uøytych w†projekcie. Innym wyjúciem jest zrobienie nowej p³ytki drukowanej z†zachowaniem rozstawu i†kolejnoúci stykÛw gniazda JP1 ³¹cz¹cego p³ytki lamp i†mikrokontrolera. Lampy LC-531 mia³y 5†milimetrowej d³ugoúci wyprowadzenia, ktÛre z†pewnym trudem i†z pomoc¹ kalafonii moøna lutowaÊ. Uzna³em jednak, øe ³adniej i†wygodniej bÍdzie je umieúciÊ w†podstawkach. Podstawki do lamp jeszcze trudniej zdobyÊ niø same lampy wiÍc swoje wykona³em wykorzystuj¹c gniazda precyzyjne do uk³adÛw†scalonych. Trzeba je poci¹Ê na oddzielne piny,
Rezystory R1...R10, R15, R16, R19, R22: 10kΩ SMD1206 R11: 4,7kΩ SMD 1206 R12, R14, R17: 2,2kΩ SMD1206 R13, R18: 220kΩ SMD 1206 R20: 47kΩ Kondensatory CE1: 0,22F/5,5V CE2: 220µF/16V C1, C2: 18pF SMD 1206 C3: 680nF/350 C5: 100nF SMD 1206 C13: 6/40pF Półprzewodniki D1: dioda Schottky’ego (np. BAT85) T1...T11, T13, T14, T16: MPSA42 w obudowach SMD T12, T15: MPSA92 w obudowach SMD U1: 89C2051 U2: MCP101 U3: 78L05 U4: 8583 Różne X1: 3,579MHz X2: 32,768kHz B1, B2: mostki prostownicze 250V/0,5A JP3: ARK2 Lampy Nixie np. LC−531 lub podobne (2 szt.) S1: przycisk astabilny TR1, TR2: transformatory TEZ 0,5D/6V
øeby da³y siÍ zamontowaÊ na obwodzie ko³a odpowiadaj¹cemu úrednicy coko³u lampy. Jest z†tym sporo pracy, ale potem lampÍ bez
Rys. 4. Schemat montażowy płytki wyświetlacza
17
Zegar Nixie dla oszczędnych wiÍkszego trudu moøna w†razie potrzeby wyj¹Ê i†powtÛrnie zamontowaÊ. Na p³ytce sterownika (schemat montaøowy pokazano na rys. 3) najwiÍcej trudnoúci sprawia przylutowanie niewielkich tranzystorÛw przystosowanych do montaøu powierzchniowego i†kilkunastu opornikÛw SMD w†obudowach typu 1206. Procesor i†uk³ad zegara najlepiej umieúciÊ w podstawkach. Opornik ograniczaj¹cy pr¹d katodowy R20 (do maksymalnie 1,5...2 mA) jako jedyny jest rezystorem przewlekanym. Opornik R21 typu SMD s³uøy do dodatkowego ograniczenia pr¹du kropki, ktÛry moøe maksymalnie osi¹gn¹Ê wartoúÊ 0,5 mA. Ograniczenie pr¹dÛw do wartoúci zalecanych przez producenta jest konieczne, jeúli nie chce siÍ doprowadziÊ do drastycznego skrÛcenia czasu øycia lampy. Z†uwagi na to, øe w†opisywanym zegarze nie úwiec¹ one w†sposÛb
18
ci¹g³y, ich trwa³oúÊ powinna zostaÊ wyd³uøona. Zegar wyposaøony zosta³ w†obwÛd podtrzymania zasilania uk³adu RTC na wypadek zaniku napiÍcia zasilania. ObwÛd ten sk³ada siÍ z†diody D1 i†kondensatora CE1 o†duøej pojemnoúci 0,1...0,22F. Poniewaø U4 bardzo oszczÍdnie zuøywa energiÍ w†trybie normalnej pracy, czas bÍdzie normalnie zliczany nawet w†ci¹gu kilkugodzinnego zaniku napiÍcia sieciowego - oczywiúcie bez zasilania zegar niczego nie wyúwietli. Po wlutowaniu (jako ostatnich) transformatorÛw moøna przyst¹piÊ do uruchamiania zegara. Ca³a praca sprowadza siÍ do sprawdzenia jeszcze raz poprawnoúci montaøu i†poziomu napiÍÊ: +5V i†napiÍcia dla lamp Nixie. Po w³oøeniu do podstawek uk³adÛw scalonych i†po³¹czeniu ze sob¹ obydwu p³ytek (z³¹cza p³ytek powinny zostaÊ po³¹czone
tak, aby styk 1†p³ytki lamp ³¹czy³ siÍ ze stykiem 1†p³ytki mikrokontrolera itd.) zegar powinien zadzia³aÊ, tzn. prze³¹czaÊ siÍ pomiÍdzy wskazaniami godzin i†minut. Brak wyúwietlania lub sta³e úwiecenie ktÛregoú segmentu moøe oznaczaÊ nieprawid³owe zerowanie procesora (sprawdziÊ U2), k³opoty z†procesorem lub pomy³kÍ w†po³¹czeniu ze sob¹ obydwu p³ytek. Zegar wymaga jeszcze obudowy, najlepiej takiej, aby baÒki lamp by³y dobrze widoczne. To jednak pozostawiam inwencji i†wyczuciu estetycznemu CzytelnikÛw, ktÛrzy zechc¹ sobie zmontowaÊ ma³y, lampowy zegar. Ryszard Szymaniak, AVT
[email protected] Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/sierpien03.htm oraz na p³ycie CD-EP8/2003B w katalogu PCB.
Elektronika Praktyczna 8/2003
Samochodowy wzmacniacz P R O 25 JW w E klasie K T D Y
Samochodowy wzmacniacz 25 W w klasie D, część 1 AVT−525
Wzmacniacze klasy D, nazywane takøe wzmacniaczami cyfrowymi, zyskuj¹ coraz wiÍksz¹ popularnoúÊ. Wynika to g³Ûwnie z†ich wysokiej sprawnoúci energetycznej, przekraczaj¹cej zwykle 80% oraz niez³ej (i co waøne coraz lepszej) jakoúci düwiÍku. Rekomendacje: dobre parametry audio pozwalaj¹ zastosowaÊ ten wzmacniacz m.in. w†zestawach kina domowego, w†samochodach jako wysokosprawny wzmacniacz duøej mocy, a†takøe jako niewielki i†lekki wzmacniacz przenoúny z†moøliwoúci¹ zasilania akumulatorowego.
Elektronika Praktyczna 8/2003
Moøe wzmacniacze D†s¹ bardziej skomplikowane w†wykonaniu niø wzmacniacze najczÍúciej wystÍpuj¹cej klasy AB, ale oferuj¹ duøo wiÍksz¹ sprawnoúÊ energetyczn¹, co przek³ada siÍ korzystnie na ich wymiary i†masÍ. Juø teraz wzmacniacze klasy D†s¹ seryjnie montowane w†wielu urz¹dzeniach, pocz¹wszy od telefonÛw komÛrkowych aø po sprzÍt audio wysokiej jakoúci. Chodz¹ s³uchy, øe wzmacniacze klasy D†oferuj¹ s³ab¹ jakoúÊ düwiÍku. Angielska firma Zetex wypuszczaj¹c sterownik ZXCD1000, pokaza³a (nie tylko mi), co teø naprawdÍ drzemie we wzmacniaczach klasy D. Mog¹ o†tym úwiadczyÊ parametry sterownika zebrane w†tab. 1. Sterownik ZXCD1000 moøe znaleüÊ zastosowanie do budowy wzmacniaczy do 100 W rms o†zniekszta³ceniach THD+N mniejszych niø 0,2%, w†ca³ym paúmie i†przy 90% mocy wyjúciowej. Typowa czÍstotliwoúÊ taktowania sterownika wynosi 200 kHz. MiÍdzy innymi dziÍki tak duøej czÍstotliwoúci generatora taktuj¹cego osi¹gniÍto wysok¹ jakoúÊ düwiÍku wzmac-
niacza. Pozwoli³a ona takøe na zmniejszenie wymiarÛw d³awikÛw do niezbÍdnego minimum.
Zasada dzia³ania wzmacniacza pracuj¹cego w†klasie D Idea dzia³ania typowych wzmacniaczy pracuj¹cych w†klasie D†(wzmacniaczy impulsowych) jest bardzo prosta. W†szybkim jej wyjaúnieniu pomoøe rys. 1. Na rys. 1a przedstawiono komparator analogowy, ktÛry porÛwnuje dwa sygna³y: sygna³ audio z†referencyjnym sygna³em trÛjk¹tnym, ktÛry Wzmacniacz charakteryzuje się następującymi parametrami i cechami funkcjonalnymi: ✓ Napiêcie zasilania modu³u wzmacniacza: 12...18 VDC. ✓ Moc wyjciowa 27 W dla 4Ω oraz 11 W dla 8Ω przy zasilaniu 16 V. ✓ Moc wyjciowa 22 W dla 4Ω oraz 8 W dla 8Ω przy zasilaniu 14,4 V. ✓ Wbudowany obwód ³agodnego startu chroni¹cy przez stukami w g³onikach podczas w³¹czania wzmacniacza. ✓ Wbudowany obwód ochrony przeci¹¿eniowej oraz zwarciowej. ✓ Brak potrzeby stosowania jakichkolwiek radiatorów.
19
Samochodowy wzmacniacz 25 W w klasie D
Rys. 1. Zasada tworzenia przebiegu PWM w układzie ZXCD
podawany jest na wejúcie odwracaj¹ce komparatora. W†zaleønoúci od wartoúci amplitudy sygna³u audio, ktÛra nie powinna przekraczaÊ amplitudy sygna³u trÛjk¹tnego, sygna³ na wyjúciu komparatora ma modulowane wype³nienie. Dla sygna³u wejúciowego rÛwnego po³owie amplitudy sygna³u referencyjnego, wype³nienie przebiegu wyjúciowego komparatora wynosi 50% co zilustrowano na rys. 1b. Wzrost amplitudy sygna³u audio bÍdzie powodowaÊ wzrost wspÛ³czynnika wype³nienia (rys. 1c), a†wraz z†obniøaniem jego wartoúci wspÛ³czynnik wype³nienie bÍdzie mala³ (rys. 1d). Komparator jest po prostu prostym przetwornikiem sygna³u analogowego na przebieg PWM, ktÛrego uúredniona wartoúÊ niesie informacje o†chwilowej amplitudzie sygna³u wejúciowego. Do zamienienia przebiegu PWM na sygna³ analogowy wystarczy filtr dolnoprzepustowy. Wiadome jest, øe wraz ze wzrostem czÍstotliwoúÊ sygna³u referencyjnego zwiÍksza siÍ dok³adnoúÊ konwersji sygna³u audio na przebieg PWM. Ale naleøy mieÊ na uwadze takøe to, øe wzrost czÍstotliwoúÊ referencyjnej prowadzi do trudnoúci w†wykonaniu d³awikÛw, ktÛre wchodz¹ w†sk³ad wyjúciowego filtru dolnoprzepustowego.
kiej jakoúci düwiÍku wyjúciowego wraz ze wszystkimi korzyúciami wynikaj¹cymi z†pracy w†klasie D. Schemat blokowy uk³ad ZXCD1000 przedstawiono na rys. 2. Jak widaÊ, uk³ad nie jest skomplikowany. W†jego sk³ad wchodz¹: - wewnÍtrzne stabilizatory 5,5 V oraz 9†V†s³uø¹ce do zasilania komparatorÛw oraz wzmacniaczy wyjúciowych, - generator przebiegu trÛjk¹tnego, ktÛrego czÍstotliwoúÊ moøe byÊ ustalana elementami zewnÍtrznymi (do 200 kHz), - komparator, przedwzmacniacz oraz wzmacniacz zarÛwno dla kana³u A†jak i†B. Przebiegi z†generatora zosta³y wyprowadzone na zewn¹trz (Osc A, Osc B) i†powinny zostaÊ zewnÍtrznie do³¹czone do wejúÊ Triangle A†oraz Triangle B. Dys-
trybucja przebiegu trÛjk¹tnego na zewn¹trz uk³adu umoøliwia ³atwe przes³anie przebiegu do pozosta³ych kana³Ûw. Dla unikniÍcia przes³uchÛw pomiÍdzy kana³ami jeden kana³ pracuje jako nadrzÍdny (generuje przebieg referencyjny), a†pozosta³e pracuj¹ jako podrzÍdne, pobieraj¹c sygna³ referencyjny od kana³u nadrzÍdnego. Aby by³a moøliwa praca mostkowa na wejúcie pierwszego z†komparatorÛw powinien byÊ podany sygna³ analogowy, najlepiej poprzez bufor, natomiast na wejúcie drugiego komparatora powinien zostaÊ podany sygna³ analogowy o†przeciwnej fazie.
Opis dzia³ania uk³adu Schemat blokowy wzmacniacza pokazano na rys. 3. Nie pokazano na nim dodatkowych obwodÛw powolnego startu oraz obwodÛw przeci¹øeniowych, w†jakie wyposaøono wzmacniacz. Schemat elektryczny uk³adu pokazano na rys. 4. Wejúciowy sygna³ audio jest podawany poprzez filtr dolnoprzepustowy (R3, C9) na wejúcie wzmacniacza bufora U1A oraz na wejúcie wzmacniacza odwracaj¹cego U1B o†wzmocnieniu x1. Sygna³y otrzymane w†przeciwfazie z†wyjúÊ wzmacniaczy U1 trafiaj¹ na wejúcia Audio A†oraz Audio B†(na nieodwracaj¹ce wejúcia komparatorÛw). Rezystory R17 i†R18 tworz¹ sztuczn¹ masÍ dla wzmacniaczy operacyjnych, rÛwn¹ po³owie napiÍcia zasilaj¹cego uk³ad U1. Wyjúcia przebiegÛw PWM
Sterownik ZXCD1000 ZXCD1000 jest kompletnym sterownikiem dla wzmacniaczy pracuj¹cych w†klasie D. Kontroler w†po³¹czeniu z†zewnÍtrznymi tranzystorami MOSFET (ktÛre produkuje takøe Zetex) umoøliwia zbudowanie wzmacniacza o†wyso-
20
Rys. 2. Schemat blokowy układu ZXCD1000
Elektronika Praktyczna 8/2003
Samochodowy wzmacniacz 25 W w klasie D
Rys. 3. Schemat blokowy wzmacniacza z układem ZXCD1000
(Out A†oraz Out B) steruj¹ poprzez C26...C29 tranzystorami mocy pracuj¹cymi w†mostku. Zastosowane zosta³y tranzystory wysokiej jakoúci, ktÛrych producentem jest takøe Zetex. Tranzystor T1 charakteryzuje siÍ rezystancj¹ RDS(ON)=0,075Ω oraz pr¹dem ID=3,8 A, a†T3 rezystancj¹ RDS(ON)=0,045Ω i†pr¹dem ID=5 A. Z†tranzystorami zastosowanymi w†module moøliwe jest uzyskanie mocy wyjúciowej do 25 W†przy 4Ω i†napiÍciu zasilaj¹cym rÛwnym 16 V. Elementy D2...D4, D7...D10, R7...R10 oraz R13...R16 pracuj¹ce w†mostku, pozwalaj¹ na uzyskanie wiÍkszego napiÍcia na bramkach tranzystorÛw niø napiÍcie na wyjúciach Out A†oraz Out B†(ok. 8,5 V). Pozwala to uzyskaÊ wiÍksz¹ moc wyjúciow¹ wzmacniacza. Poprzez takie sterowanie tranzystorÛw osi¹ga siÍ takøe niewielkie zniekszta³cenia przebiegu wyjúciowego. Sygna³ audio z†przebiegÛw wyjúciowych PWM odzyskiwany jest w†dolnoprzepustowych filtrach LC (L1, C30, C31 oraz L2, C33, C34). Odzyskany sygna³ audio dostÍpny jest dla g³oúnika na wyjúciach SA oraz SB. Gdy wzmacniacz klasy D†bÍdzie siÍ sk³ada³ z†kilku modu³Ûw (zbudowanych zgodnie ze schemat z†rys. 4), wspÛ³pracuj¹ce kana³y musz¹ byÊ ze sob¹ zsynchronizowane, co oznacza, øe musz¹ byÊ sterowane sygna³em trÛjk¹tnym, ktÛry jest generowany tylko przez jeden ze wzmacniaczy
Elektronika Praktyczna 8/2003
(MASTER). Konsekwencj¹ niedostosowanie siÍ do tych zaleceÒ (zsynchronizowania wzmacniaczy) mog¹ byÊ s³yszalne interferencje pomiÍdzy kana³ami. Tak wiÍc, jeøeli bÍdzie budowany wzmacniacz wielokana³owy, jeden ze wzmacniaczy bÍdzie uk³adem MASTER a†pozosta³e uk³adami SLAVE. Na rys. 5 pokazano sposÛb konfiguracji kana³u pracuj¹cego jako MASTER (rys. 5a) oraz kana³u pracuj¹cego jako SLAVE (rys. 5b). Przy pracy jako MASTER, przebieg trÛjk¹tny do rozes³ania pobierany jest z†wyjúcia Osc B†i†poprzez bufor T1 wysy³any do uk³adÛw podrzÍdnych. W†przypadku wzmacniacza SLAVE odbierany sygna³ trÛjk¹tny przed podaniem na wejúcia komparatorÛw jest poprzedzony buforem T2. Aby nie projektowaÊ dwÛch p³ytek, osobno dla wzmacniacza MASTER oraz SLAVE, wprowadzono zworki M1, S1, S2 i†S3, ktÛre pozwalaj¹ na skonfigurowanie wzmacniacza jako MASTER lub SLAVE. Kondensator C37 wyznacza czÍstotliwoúÊ przebiegu trÛjk¹tnego. Wspomniano juø, øe wzmacniacz posiada obwody ³agodnego startu oraz obwody zabezpieczaj¹ce przed zwarciem oraz przeci¹øeniem. ObwÛd ³agodnego startu ma za zadanie powoli na³adowaÊ kondensatory wystÍpuj¹ce we wzmacniaczu. Brak takiego obwodu powodowa³oby stuki
w†g³oúnikach podczas w³¹czania wzmacniacza, co jest spowodowane gwa³townym ³adowaniem kondensatorÛw. ObwÛd ³agodnego startu realizuj¹ elementy R27, R28, C38, D11 oraz T9. Przy d³uøszym braku napiÍcia zasilaj¹cego kondensator C38 roz³aduje siÍ. Po za³¹czeniu zasilania tranzystor T9 bÍdzie wy³¹czony, gdyø na jego bramce wyst¹pi napiÍcie zasilaj¹ce. £adowanie kondensatora przez R27 bÍdzie prowadziÊ do wolnego spadku napiÍcia na bramce T9. BÍdzie to powodowaÊ stopniowe otwieranie tranzystora T9, a†tym samym napiÍcie zasilaj¹ce wzmacniacz bÍdzie wolno narastaÊ. Zastosowano tranzystor IRF7416 o†rezystancji w†stanie otwarcia wynosz¹cej 0,02Ω przez co straty mocy na nim bÍd¹ niewielkie. Do omÛwienia zosta³ drugi obwÛd, ktÛry pe³ni odpowiedzialn¹ funkcje ochrony przeci¹øeniowej oraz zwarciowej. ObwÛd ten tworz¹ elementy R2, R11, R12, R25, R29, R23, C39 oraz tranzystory T5, T6 i†T10. Poprawn¹ pracÍ tego obwodu gwarantuje jego Tab. 1. Wybrane parametry wzmacniaczy z układem ZXCD1000 ✗ ✗ ✗ ✗ ✗ ✗
Napiêcie zasilania sterownika 12...18V, Sprawnoæ >90%, Obci¹¿enie 4Ω lub 8Ω, Pasmo 20 Hz...20 kHz, Czêstotliwoæ taktowania: typowo 200 kHz, Niskie TPD+N - typowo 0,2% przy 90% mocy (w ca³ym pamie).
21
Samochodowy wzmacniacz 25 W w klasie D
Rys. 4. Schemat elektryczny wzmacniacza
22
umieszczenie pomiÍdzy kondensatorem C36 a†mostkiem tranzystorÛw. Podczas duøych impulsÛw pr¹dowych obwÛd moøe byÊ zaopatrywany w†pr¹d w³aúnie z†tego kondensatora. Gdyby by³ umieszczony przed kondensatorem prowadzi³oby to do jego b³Ídnej pracy co koÒczy³oby siÍ uszkodzeniem tranzystorÛw wyjúciowych. ObwÛd ten ochroni tranzystory wyjúciowe nie tylko przy zwarciu wyjúÊ do masy ale i†ze sob¹. Celem tego obwodu jest monitorowanie pr¹du p³yn¹cego przez rezystor pomiarowy R23. W†czasie normalnej pracy wzmacniacza na rezystorze pomiarowym R23 bÍdzie wystÍpowa³ niewielki spadek i†napiÍcie na bazie T6 bÍdzie zbliøone do Ube (0,6 V). NapiÍcie na bazie T5 bÍdzie niøsze niø 0,6 V†przez co tranzystory T5 oraz T10 bÍd¹ zatkane. Na katodach diod D1 i†D2 bÍdzie wystÍpowa³o napiÍcie zasilaj¹ce. Podczas nadmiernego wzrostu pr¹du (przeci¹øenie, zwarcie wyjúÊ) tranzystor T5 zostanie otwarty. Spowoduje to na³adowanie kondensatora C39 oraz za³¹czenie tranzystora T10. Za³¹czenie T10 úci¹ga do masy poprzez diody D1, D5 przebiegi trÛjk¹tne. åci¹gniÍcie tych przebiegÛw do masy wy³¹cza przebiegi PWM na wyjúciach Out A, Out B, przez co pr¹d szybko jest redukowany do zera. Po roz³adowaniu C39 przez R11 i†R12, tranzystor T10 zostanie wy³¹czony co pozwoli na sterowanie wzmacniacza przebiegami trÛjk¹tnymi. Jeøeli przyczyna zadzia³ania obwodu przeci¹øeniowego nie zosta³a usuniÍta zadzia³a on ponownie. ObwÛd przeci¹øeniowy dzia³a bardzo szybko, ale jego czas wy³¹czenia wyznaczony jest przez T10, R11, R12 oraz C39. Zmieniaj¹c ten czas moøna ustaliÊ úredni pobÛr pr¹du podczas awarii. Duø¹ zalet¹ takiego obwodu jest moøliwoúÊ wykrywania bardzo ma³ych spadkÛw napiÍÊ na rezystorach pomiarowych. DziÍki temu moøliwe jest zastosowanie rezystorÛw o†bardzo ma³ej wartoúci (dla przedstawionego obwodu 0,01Ω). Ma³a wartoúÊ rezystancji zmniejsza straty na takim rezystorze oraz nie obniøa znacz¹co napiÍcia zasilaj¹cego wzmacniacz. Uk³ad U3 stabilizuje napiÍcie na poziomie 12 V, ktÛre jest wyko-
Elektronika Praktyczna 8/2003
Samochodowy wzmacniacz 25 WSamochodowy w klasie D wzmacniacz 25 W w klasie D WYKAZ ELEMENTÓW Rezystory R1, R2: 100kΩ R3, R4: 11kΩ R5, R6: 390Ω R7...R12: 47kΩ R13...R16: 56Ω R17, R18: 5,6kΩ R19...R21: 22kΩ R22: 1,5kΩ R23: 0,01Ω (srebrzanka 2...2,5cm o średnicy 1,4...1,6mm) R24, R25: 820Ω R26, R27: 62kΩ R28: 220kΩ R29: 56kΩ P1: potencjometr montażowy leżący 10kΩ Kondensatory C1...C8: 22µF/25V C9: 47pF C10(*): 1nF C11...C19: 100nF ceramiczny
C20, C21: 47nF C22, C23: 6,8nF C24, C25: 100µF/25V C26...C29: 1µF MKT C30...C35: 470nF C36: 2200µF/25V C37: 330pF C38: 220µF/25V C39: 220nF Półprzewodniki U1: NE5532 U2: ZXCD1000 U3: 7812 T1, T2: ZXM64P03X T3, T4: ZXM64N03X T5...T7: BC557 lub BC558 T8: BC547 lub BC548 T9: IRF7416 T10: BS170 D1...D11: 1N4148 Różne L1, L2: 20µH
(*) − montować tylko dla obciążenia 4Ω Dla modułu MATER montować R22 o rezystancji 1,5kΩ, R24, C37 oraz T7 i zworkę M1. Nie należy montować T8. Dla modułu SLAVE montować R22 o rezystancji 820Ω, T8 oraz zworki S1, S2, S3. Nie montować R24 oraz C37.
rzystywane do zasilenia wzmacniaczy U1 oraz sterownika U2. Dodatkowy obwÛd R26, P1 i†R4 umoøliwia dok³adn¹ symetryzacjÍ przebiegu wyjúciowego PWM. DziÍki takiej dok³adnej symetryzacji zyskuje siÍ zmniejszenie zniekszta³ceÒ. Marcin Wi¹zania
[email protected]
Wzmacniacz zbudowano na podstawie materia³Ûw zawartych na stronie producenta http:// www.zetex.com. Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/sierpien03.htm oraz na p³ycie CD-EP8/2003B w katalogu PCB.
Rys. 5. Konfiguracja układu ZXCD1000 jako synchronizatora (a) i jako układu synchronizowanego
Elektronika Praktyczna 8/2003
23
Programator USB mikrokontrolerów P R O ATmega J E K −T ISP Y
Programator USB mikrokontrolerów ATmega − ISP, część 1 AVT−524 Programatory ISP dla mikrokontrolerÛw AVR to temat od dawna znany i†obfituj¹cy w†rozmaite rozwi¹zania - zarÛwno komercyjne jak i†amatorskie (jedno z†moøliwych rozwi¹zaÒ przedstawiamy w†Miniprojektach). Pojawia siÍ wiÍc pytanie, czy warto od podstaw opracowywaÊ coú nowego? Na pewno nie ma sensu powielanie typowego projektu opartego np. na porcie rÛwnoleg³ym LPT. Co w†zamian? Oczywiúcie USB! Rekomendacje: programator dla wymagaj¹cych konstruktorÛw, przede wszystkim tych, ktÛrzy korzystaj¹ z†mikrokontrolerÛw ATmega.
Podczas konstruowania programatora prezentowanego w†artykule nie koncentrowa³em siÍ na zapewnieniu jego maksymalnej prostoty i†obniøeniu ceny, waøniejsze by³y jego cechy uøytkowe. Dlatego teø: - komunikacja z†komputerem steruj¹cym jest zrealizowana za pomoc¹ ³¹cza USB, co czÍsto jest jedynym dostÍpnym sposobem dla posiadaczy laptopÛw, - w³asne oprogramowanie steruj¹ce pozwala na dowolne modyfikacje, poprawki i†rozszerzenia a†takøe na stosunkowo ³atw¹ integracjÍ z†rozmaitymi úrodowiskami, - p³ytka programatora posiada oprÛcz buforowanego interfejsu ISP wyprowadzone takøe inne interfejsy (I2C, SPI) oraz linie przetwornika A/C, PWM itd. co pozwala na jej wykorzystanie na rozmaite sposoby,
- mikrokontroler programatora moøna wyposaøyÊ w†bootloader, co pozwoli na szybkie i†sprawne wymiany wersji oprogramowania za poúrednictwem tego samego ³¹cza USB.
Konstrukcja programatora Schemat elektryczny urz¹dzenia przedstawiono na rys. 1. Moøna na nim wyrÛøniÊ trzy podstawowe bloki funkcyjne: interfejs USB, mikrokontroler steruj¹cy oraz buforowany interfejs ISP. Po³¹czenie z†magistral¹ USB jest zrealizowane z†pomoc¹ uk³adu U1 - FT8U232BM - w†typowej aplikacji proponowanej przez FTDI. PamiÍÊ U2 pozwala na wprowadzenie w³asnych identyfikatorÛw programatora. Tranzystor Q3 zapewnia - zgodnie z†wymaganym standardem USB - wy³¹czanie zasilania pro-
Programator prezentowany w artykule współpracuje ze środowiskiem projektowym dla AVR−GCC − AVRSide (dostępne bezpłatnie na stronie http://www.avrside.fr.pl oraz na CD−EP8/2003B). Możliwości jego wczesnej wersji opisaliśmy w EP1/2003).
Elektronika Praktyczna 8/2003
25
Programator USB mikrokontrolerów ATmega − ISP
Rys. 1. Schemat elektryczny programatora
26
Elektronika Praktyczna 8/2003
Programator USB mikrokontrolerów ATmega − ISP gramatora podczas enumeracji oraz w†stanie uúpienia komputera - hosta. Mikrokontroler U3 steruje interfejsem ISP zgodnie z†komendami i†danymi otrzymywanymi z†dzia³aj¹cego na komputerze hoúcie oprogramowania. Zwraca teø informacje o†prawid³owym zakoÒczeniu kolejnych operacji lub o†zaistnia³ych b³Ídach. DziÍki zastosowaniu mikrokontrolera ATmega 8†nie ma koniecznoúci dodawania praktycznie øadnych dodatkowych peryferiÛw. Mikrokontroler pracuje z†wewnÍtrznym oscylatorem 8†MHz i†ma wbudowany uk³ad zeruj¹cy oraz watchdog. Jednoczeúnie dysponuje ca³¹ gam¹ dodatkowych sprzÍtowych interfejsÛw: I2C, SPI, wielokana³owym przetwornikiem analogowocyfrowym, wyjúciami PWM. Odpowiednie styki wyprowadzono na p³ytce, co pozwoli na ewentualne wykorzystanie programatora do rÛønych innych celÛw (konwertery USB<->I2C, USB<->SPI, programatory pamiÍci szeregowych, przetwornik A/C do komputera itd.). ObwÛd filtruj¹cy L2, C7 zasila obwody A/C, natomiast kondensator C10 dodatkowo filtruje wewnÍtrzne napiÍcie odniesienia 2,56 V, ktÛre zosta³o przewidziane do wykorzystania w†uk³adzie. Wyprowadzenia interfejsu SPI tworz¹ zarazem wejúcie magistrali ISP pozwalaj¹cej na szeregowe wpisanie do mikrokontrolera programu wykonawczego oraz ustawieÒ konfiguracyjnych. Interfejs ISP ³¹czy linie I/O mikrokontrolera steruj¹cego z†wejúciami ISP docelowego uk³adu. Musi on spe³niÊ nastÍpuj¹ce wymagania: - ca³kowicie uniezaleøniÊ zespÛ³ urz¹dzeÒ od kolejnoúci w³¹czania zasilania, - umoøliwiÊ do³¹czanie uk³adu docelowego zasilanego innym napiÍciem, - uaktywniaÊ linie steruj¹ce ISP tylko i†wy³¹cznie w†trakcie programowania - normalnie powinny pozostawaÊ w†stanie wysokiej impedancji nie wp³ywaj¹c w†øaden sposÛb na dzia³anie docelowego uk³adu bez koniecznoúci od³¹czania. Zadania te zosta³y zrealizowane przy pomocy inwertera z†wyj-
Elektronika Praktyczna 8/2003
úciem OC (U4) oraz trÛjstanowego bufora HC244 (U5). Bufor U5 oraz pull-up y jego linii wejúciowych s¹ zasilane napiÍciem docelowego systemu - zawsze wiÍc uzyskamy potrzebn¹ zgodnoúÊ poziomÛw logicznych. Inwerter U4 jest zasilany dwustronnie poprzez diody Schottky ego D1 i†D2. Kostka pozostaje wiÍc ìpod napiÍciemî niezaleønie od chwilowego pod³¹czenia zasilania - eliminuje to moøliwoúÊ wysterowania wejúÊ przy braku zasilania U4 (co uk³ady cyfrowe niezbyt lubi¹). Wyjúcia typu otwarty kolektor pozwalaj¹ na odpowiednie dopasowanie poziomÛw logicznych (dla poziomu niskiego 0†V, a†dla poziomu wysokiego Vcc - niezaleønie od jego wartoúci - oczywiúcie w†ramach moøliwoúci uk³adu, czyli do 6†V). Nie ma to wiÍkszego znaczenia przy zasilaniu obu uk³adÛw jednakowym napiÍciem (czyli +5 V†- tyle programator otrzymuje z†magistrali USB). Natomiast przy np. 3,3 V†systemu docelowego mamy nastÍpuj¹c¹ sytuacjÍ: - zasilanie U5 = 3,3 V, - wysokie poziomy logiczne na wejúciach i†wyjúciach U5 = ok. 3,3 V, - zasilanie U4 = ok. 4,7...4,8 V (ok. +5 V†z†USB pomniejszone o†spadek na diodzie Schottky ego), - wysokie poziomy logiczne na wejúciach U4 od strony programatora - ok. 5†V†(co jest dopuszczalne - nie przekraczamy napiÍcia zadzia³ania wejúciowych wewnÍtrznych diod ochronnych kostki), - wysoki poziom logiczny na wejúciu U4 od strony bufora (wyprowadzenia 12, 13) = ok. 3,3 V. Jest to jedyna linia wymagaj¹ca dok³adniejszego sprawdzenia: z†danych serii HC wynika, øe przy takiej wartoúci napiÍcia zasilaj¹cego minimalne napiÍcie rozpoznawane jako poziom wysoki wynosi nieco mniej niø 3,3 V, mieúcimy siÍ wiÍc w†wymaganym zakresie. Wynika z†tego, øe uk³ady z†zasilaniem poniøej 3,3 V†mog¹ sprawiaÊ problemy. Jak nisko moøna zejúÊ - pozostaje do praktycznego sprawdzenia (zazwyczaj rzeczywiste w³aúciwoúci uk³adÛw s¹ lepsze niø gwarantowane wartoúci podawane w†katalogach).
ZwrÛcmy teø uwagÍ na sposÛb w³¹czania linii RST interfejsu. Sekwencja przebiega nastÍpuj¹co: - ustawiamy programowo niski poziom SCK - bufor jest jeszcze w†stanie wysokiej impedancji i†na wyjúciu nic siÍ nie dzieje, - ustawiamy programowo niski poziom RST - bufor 244 zostaje w³¹czony podaj¹c na wyjúcie SCK poziom niski, ale linia RST zostaje przestawiona z†poziomu wysokiego na niski dopiero po krÛtkiej chwili wynikaj¹cej ze sta³ej czasowej obwodu R17, C12. W†ten sposÛb gwarantujemy stabilny stan niski SCK w†chwili zakoÒczenia zerowania, zgodnie z†zaleceniami Atmela dotycz¹cymi wchodzenia w†tryb programowania szeregowego.
Montaø uk³adu Ca³oúÊ uk³adu zosta³a zmontowana na dwuwarstwowej p³ytce drukowanej, ktÛrej schemat montaøowy pokazano na rys. 2. Uøyto g³Ûwnie elementÛw SMD, co pozwoli³o na zachowanie niewielkich wymiarÛw. Wyprowadzenia interfejsÛw moøemy wyposaøyÊ w†listwy goldpin albo pozostawiÊ do pod³¹czeÒ przewodami - w†zaleønoúci od potrzeb. Do polutowania najlepiej uøyÊ grota mini wave, ale poniewaø rastry kostek nie naleø¹ do najmniejszych tradycyjne techniki teø bÍd¹ zupe³nie wystarczaj¹ce. Po zlutowaniu sprawdümy dok³adnie, czy nie ma zwarÊ ani przerw. Wskazane jest teø przemycie p³ytki jednym z†dostÍpnych preparatÛw chemicznych (np. PCC). Pod³¹czenie do ISP prototypowego docelowego uk³adu wykonamy wed³ug w³asnych potrzeb niezbyt d³ugim (najwyøej kilkanaúcie centymetrÛw) przewodem taúmowym.
Uruchamianie programatora Sam sprzÍtowy uk³ad bez skonfigurowania i†zaprogramowania nie przyda siÍ nam do niczego. ìOøywianieî p³ytki przebiega w†kilku etapach. Wszystkie przedstawione opisy i†programy dotycz¹ systemu Windows. AdaptacjÍ uk³adu do innych systemÛw operacyjnych pozostawiam inwencji CzytelnikÛw.
27
Programator USB mikrokontrolerów ATmega − ISP Niezbędne programy (łącznie ze środowiskiem AVRSide) oraz pliki pomocnicze publikujemy na płycie CD−EP8/2003B.
Etap 1†- konfiguracja uk³adu interfejsu USB Najpierw musimy wyposaøyÊ siÍ w†narzÍdzia ze strony producenta (www.ftdichip.com) - bÍdzie nam potrzebny sterownik tzw. bezpoúredni (direct driver) D2xx (najnowsza wersja z†obs³ug¹ uk³adÛw w†wersji BM) oraz program Ftd2xxst.exe do obs³ugi szeregowej pamiÍci EEPROM 93C46. Rozpakowane pliki umieszczamy na dysku i†zapamiÍtujemy lokalizacjÍ. Instalacja sterownikÛw Teraz moøemy po raz pierwszy pod³¹czyÊ nasz uk³ad do magistrali USB (bezpoúrednio do gniazda A†komputera albo poprzez huba z†w³asnym zasilaniem, nie ograniczaj¹cego poboru pr¹du do 100 mA). Po w³¹czeniu Windows wyúwietli informacjÍ o†obecnoúci nowego urz¹dzenia USB i†poprosi o†podanie lokalizacji sterownika odnajdujemy i†zatwierdzamy lokalizacjÍ folderu z†plikami (jak wyøej) - po chwili instalacja jest zakoÒczona. Menedøer urz¹dzeÒ w†kluczu Kontrolery uniwersalnej magistrali szeregowej pokaøe teraz obecnoúÊ urz¹dzenia ìFTDI FT8U2XX DEVICEî. Uwaga! Sprawa moøe siÍ powaønie skomplikowaÊ jeúli uøywamy juø jakiegoú uk³adu z†kostk¹ FTDI obs³ugiwan¹ jako wirtualny port szeregowy. System ma
Rys. 2. Rozmieszczenie elementów na płytce drukowanej
28
wtedy dla firmowych VID oraz PID zainstalowany inny zestaw sterownikÛw (VCP), co wyklucza jednoczesne uøycie D2xx. Jedynym wyjúciem bÍdzie wtedy skonfigurowanie kostki FT8U232 na innym komputerze i†zmiana np. PID. Taki sam zmieniony PID musimy rÍcznie wpisaÊ do pliku *.inf sterownika D2xx, aby system umia³ przypisaÊ p³ytce z†nowym PID w³aúnie ten sterownik. Operacje ze zmian¹ PID (VID) musz¹ byÊ przeprowadzone z†naleøyt¹ starannoúci¹ - jeúli siÍ pomylimy system w†ogÛle nie bÍdzie w†stanie obs³uøyÊ p³ytki (zg³aszaj¹c tylko obecnoúÊ nieznanego urz¹dzenia). Wpisy do deskryptorÛw FT8U232 S³uøy do tego wspomniany powyøej program narzÍdziowy Ftd2xxst.exe. SposÛb jego uøycia jest dok³adnie opisany w†podrÍczniku, ktÛry w†postaci elektronicznej publikujemy na CD-EP8/ 2003B. Po wybraniu nowego pliku edytujemy wszystkie potrzebne pola: Manufacturer = FTDI Manufacturer ID = FT Vendor ID = 0403 Product ID = 6001 (chyba, øe wymagana jest zmiana zgodnie z†uwag¹ powyøej) Description = avr isp loader (tej pozycji uøywa program nadrzÍdny PC do lokalizacji urz¹dzenia, nie moøe byÊ wiÍc ona zmieniana, chyba øe rÛwnolegle z†kodem programu). W†opcjach zaawansowanych ustawiamy: Plug and Play - nie Fixed Serial Number - dowolnie, w†prototypach ustawi³em na ìtakî, wprowadzaj¹c rÍcznie numery 20000001, 20000002 itd.) Self Powered - nie Remote Wakeup - nie Max Power (mA) - 250 mA (wprawdzie sam programator mieúci siÍ w†podstawowych 100 mA, ale byÊ moøe bÍdziemy stosowaÊ p³ytkÍ w†innym celu i†przyda siÍ moøliwoúÊ zasilenia dodatkowych zewnÍtrznych podzespo³Ûw).
WYKAZ ELEMENTÓW Rezystory R1, R4, R7, R10...R12: 3,3kΩ 1206 R2, R3: 27Ω 0805 R5: 1,5kΩ 0805 R6: 470Ω 1206 R8: 2,2kΩ 1206 R9: 10kΩ 0805 R13...16: 100kΩ 1206 Kondensatory C1, C11: 10µF/16V 6032 tantal C2: 33nF 0805 C3...C5, C13: 100nF 1206 C6, C12: 10nF 0805 C7...C9: 100nF 1206 C10: 1µF/16V 3216 tantal Półprzewodniki U1: FT8U232BM TQFP32 U2: 93C46 SO8 U3: Atmega 8 TQFP32 U4: 74HC03 SO14 U5: 74HC244 SO20 Q3: tranzystor P−MOS MMBF 2202 PT1 SOT23 D1, D2: dioda uniwersalna Schottky Minimelf Różne Y1: rezonator ceramiczny 6,00 MHz CSTCC6.00MG − TC (Murata) SMD (można też powierzchniowo przylutować rezonator przewlekany) L1, L2: koralik ferrytowy przewlekany J1: gniazdo USB typ B listwy goldpin, przewód taśmowy
Po zakoÒczeniu edycji zapamiÍtujemy plik i†programujemy EEPROM. Nowe ustawienia deskryptorÛw bÍd¹ uøyte po nastÍpnej enumeracji (czyli od³¹czeniu i†ponownym pod³¹czeniu p³ytki).
Etap 2†- konfiguracja mikrokontrolera ATmega 8 Uøywamy do tego dowolnego posiadanego programatora ISP. Prototypy by³y konfigurowane z†poziomu AVRSide za poúrednictwem optoizolowanego programatorka RS. ZwrÛÊmy tylko uwagÍ na prawid³owe pod³¹czenie linii - za pomoc¹ schematu i†rysunku p³ytki zlokalizujemy bez trudu wyprowadzenia interfejsu ISP. Mikrokontroler zastosowany w†projekcie pracuje z†wewnÍtrznym oscylatorem 8†MHz. Prze-
Elektronika Praktyczna 8/2003
Programator USB mikrokontrolerów ATmega − ISP stawiamy wiÍc fabryczne 0001 (1 MHz) na 0100. Pozosta³ych bitÛw moøemy w†naszym zastosowaniu nie zmieniaÊ. Jednoczeúnie naleøy odczytaÊ i†zanotowaÊ wartoúÊ bajtu kalibracyjnego dla 8†MHz. ATmega po zerowaniu zawsze automatycznie ³aduje do korekcyjnego rejestru OSCCAL wartoúÊ dla 1†MHz. Musimy wiÍc w†czÍúci inicjalizacyjnej programu prze³adowaÊ samodzielnie OSCCAL odczytan¹ powyøej wartoúci¹. Wymaga to wprawdzie przekompilowania programu oddzielnie dla kaødego egzemplarza urz¹dzenia, co jednak na etapie testÛw i†uruchamiania (czy teø przy sk³adaniu pojedynczych p³ytek na w³asne potrzeby) nie jest øadnym utrudnieniem.
Elektronika Praktyczna 8/2003
Uwaga! Konfiguracja fuseíÛw wymaga uwagi i†starannoúci. Sprawdümy dwa razy zanim coú ostatecznie wpiszemy do mikrokontrolera. NiektÛre bity mog¹ nam bowiem ca³kiem zablokowaÊ interfejs ISP, ale nawet zmiana ürÛd³a taktowania (inne niø potrzebne ustawienie CSEL) sprawi w†zmontowanym juø urz¹dzeniu mnÛstwo k³opotÛw.
Etap 3†zaprogramowanie mikrokontrolera Jak zaznaczono wyøej, naleøy wpisaÊ do programu w³aúciw¹ dla danego egzemplarza ATmega wartoúÊ OSCCAL (na pocz¹tku funkcji main() w†module u_main.c). Kod dla programatora jest wol-
nym oprogramowaniem, ca³kowicie dostÍpnym - moøna wiÍc przy okazji go poprawiaÊ czy rozszerzaÊ o†nowe funkcje (na razie uruchomione s¹ tylko podstawowe operacje dla serii ATmega). Otrzymany po kompilacji plik wynikowy avrisp.hex ³adujemy do mikrokontrolera dowolnym programatorem ISP. Teraz moøemy przyst¹piÊ do praktycznych prÛb ale o†tym za miesi¹c. Jerzy Szczesiul, AVT
[email protected]
Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/sierpien03.htm oraz na p³ycie CD-EP8/2003B w katalogu PCB.
29
Odtwarzacz MP3 P Rz układem O J E KSTA013 T Y
Odtwarzacz MP3 z układem STA013, część 1
Przerobienie komputerowego napÍdu CD-ROM na odtwarzacz audio nie jest zadaniem bardzo trudnym. Bardziej skomplikowane jest odtwarzanie plikÛw MP3, ale przyk³ad YamppÛw dowodzi, øe jest to takøe moøliwe. W†artykule przedstawiamy interesuj¹ce rozwi¹zanie odtwarzacza MP3, o†doúÊ nietypowej - jak na polskie warunki - budowie. Rekomendacje: projekt prezentuj¹cy niebanalne podejúcie do konstrukcji elektronicznych, g³Ûwnie dziÍki zastosowaniu oryginalnego zestawu elementÛw. Jest to konstrukcja pogl¹dowa, st¹d pewne uproszczenia w†jej opisie.
Elektronika Praktyczna 8/2003
Korzenie standardu kodowania düwiÍku MP3 leø¹ w†czasach powstawania standardu p³yt CD. WÛwczas postanowiono, øe cyfrowy düwiÍk bÍdzie rejestrowany jako wierna kopia sygna³u analogowego (czyli naturalnego), ale tylko w†paúmie do 20 kHz, bo wyøszych düwiÍkÛw ìnormalnyî homo sapiens i†tak nie s³yszy. To ograniczenie by³o teø na rÍkÍ inøynierom, ktÛrzy nie musieli pracowaÊ nad zbyt skomplikowanymi uk³adami elektronicznymi. Dlaczego? DüwiÍk - jak kaøde zjawisko - istnieje w†pewnych wymiarach. Oceniamy jego g³oúnoúÊ (fachowo: natÍøenie) i†wysokoúÊ (czÍstotliwoúÊ). Tak teø pokazuj¹ go najczÍúciej wykresy jako amplitudÍ pewnych czÍstotliwoúci. Øeby zamieniÊ sygna³ analogowy na cyfrowy trzeba go prÛbkowaÊ: podzieliÊ na jak najmniejsze, rÛwne kawa³ki (prÛbki), zmierzyÊ wartoúÊ kaødej takiej prÛbki wed³ug okreúlonej skali, a†wynik pomiaru zapisaÊ w†postaci cyfrowej. DüwiÍk CD to 16bitowe prÛbki wykonywane z†czÍstotliwoúci¹ 44,1 kHz dla kaødego kana³u z†osobna. W†jednej sekundzie powstaje wiÍc 141,2 kb danych (16*44,1*2), co daje ok. 10†MB na minutÍ utworu. Nic dziwnego, øe úcieøki audio CD
w†postaci plikÛw wave zajmuj¹ tak duøo miejsca. Naleøa³o upakowaÊ dane do maksimum, ale bez utraty jakoúci sygna³u. Wydawa³o siÍ to niemoøliwe, lecz z†pomoc¹ przysz³a niedoskona³oúÊ ludzkiego ucha. Teoretycznie s³yszymy düwiÍki z†zakresu od 20†Hz do 20 kHz, wiÍc p³yta CD oferuje nam pe³n¹ skalÍ doznaÒ. Jednak w†rzeczywistoúci wiÍkszoúÊ ludzi jest g³ucha na wszystko powyøej 16...17 kHz, choÊ odczuwa wysokie düwiÍki samym mÛzgiem i†cia³em. Na dodatek ucho najlepiej reaguje na pasmo 2†do 4†kHz (mowa mieúci siÍ w†zakresie tzw. pasma telefonicznego - 0,5 do 3†kHz). Pozosta³e düwiÍki trzeba bardziej wzmocniÊ, by sta³y siÍ s³yszalne. DziÍki kodowaniu Layer 3†moøemy skompresowaÊ düwiÍk CD do 12 razy bez utraty jakoúci i†przesy³aÊ go z†sensown¹ szybkoúci¹ (przy nawet 128 kb/s). Dlatego mimo wszystko MPEG Layer 3†jest na razie najlepszy, a†na pewno najpopularniejszy. Do niedawna Ûw format moøna by³o odtwarzaÊ jedynie na komputerach osobistych, lecz ostatnio coraz popularniejsze staj¹ siÍ sprzÍtowe odtwarzacze MP3.
31
Odtwarzacz MP3 z układem STA013
Rys. 1. Schemat elektryczny otoczenia mikrokontrolera
Urz¹dzenie ktÛre pragniemy zaprezentowaÊ naleøy do odtwarzaczy tego typu. Zamys³ konstrukcyjny by³ taki aby urz¹dzenie mia³o charakter stacjonarny. Powodem takiego rozwi¹zania by³ brak moøliwoúci technicznych do miniaturyzacji uk³adu (warunki amatorskie).
Opis uk³adu Urz¹dzenie sk³ada siÍ z†nastÍpuj¹cych czÍúci: mikrokontrolera H8/3048 (rys. 1), do³¹czonych do niego pamiÍci zewnÍtrznych DRAM (rys. 2) i†Flash ROM (rys. 3), dekodera MP3 STA013 wraz z†przetwornikiem C/A TDA1543 (rys. 4), klawiatury, wyúwietlacza
Rys. 2. Schemat elektryczny pamięci DRAM
32
LCD 2x20 znakÛw oraz interfejsu IDE (rys. 5) i†napÍdu CD. Schemat blokowy odtwarzacza pokazano na rys. 6. ìSercemî uk³adu jest oczywiúcie mikrokontroler, ktÛry steruje wszystkimi, pozosta³ymi podzespo³ami. Kiedy zostaje w³¹czone zasilanie w†pierwszej kolejnoúci nastÍpuje zerowanie procesora oraz uk³adu STA013. W†nastÍpnej kolejnoúci zostaje uruchomiony program steruj¹cy urz¹dzeniem. Kod programu zosta³ stworzony przy uøyciu asemblera. Po starcie programu zostaj¹ zainicjalizowane poszczegÛlne podzespo³y odtwarzacza. Po w³oøeniu p³yty do napÍdu nastÍpuje automatyczne wyszukiwanie utworÛw. Po przeszukaniu zawartoúci p³yty w†pamiÍci DRAM s¹ zapisywane informacje odnoúnie znalezionych utworÛw: d³ugoúÊ, sektor pocz¹tkowy i†nazwa pliku. NastÍpnie na wyúwietlaczu zostaje wyúwietlona informacja odnoúnie liczby znalezionych úcieøek düwiÍkowych. Po tym moøemy przejúÊ do odtwarzania düwiÍku. Odtwarzanie utworu zrealizowane jest w†oparciu o†buforowanie danych. Pewien fragment pamiÍci DRAM (oko³o 400 kB) jest przeznaczone na bufor do tymczasowego przechowywania czÍúci odtwarzanego utworu. Bufor ma charakter dynamiczny tzn. na pocz¹tku wczytywana jest ma³a porcja danych, rozpoczyna siÍ odtwarzanie, a†nastÍpnie w†miarÍ up³ywu czasu zostaje wype³niany danymi do koÒca swojej objÍtoúci. Powodem takiego rozwi¹zania jest wyeliminowanie zw³oki przy prze³¹czaniu na odtwarzanie kolejnego utworu, gdyø za kaødym razem
Rys. 3. Schemat elektryczny bloku pamięci Flash
Elektronika Praktyczna 8/2003
Odtwarzacz MP3 z układem STA013
Rys. 4. Schemat elektryczny przetwornika C/A
kiedy zmieniamy odtwarzany plik musia³aby zostaÊ odczytana stosunkowa duøa porcja danych, co wprowadza³o by niepotrzebne opÛünienia. Podczas odtwarzania utworu wyúwietlacz pokazuje nazwÍ nagrania jak rÛwnieø jego numer na liúcie. Nazwa jest odczytywana z†pliku MP3, w†standardzie ktÛrego przewidziano odpowiednie miejsce na tego typu informacje (TAG). Kiedy odtwarzamy dany utwÛr mamy rÛwnieø dostÍp do innych funkcji zwi¹zanych z†regulacj¹ g³oúnoúci, tonÛw wysokich i†niskich. Moøemy rÛwnieø przeskakiwaÊ pomiÍdzy utworami z†listy, dostÍpna jest takøe funkcja playlista. Istnieje zatem moøliwoúÊ pouk³adania utworÛw w†dowolnej kolejnoúci i†odtwarzania zgodnie z†list¹.
Mikrokontroler H8/3048 W†projekcie uøyliúmy mikrokontroler firmy Hitachi (obecnie Renesans) o†oznaczeniu H8/3048. Jest to jednostka posiadaj¹ca j¹dro zgodne ze znan¹ seri¹ procesorÛw tej firmy H8/300H. Procesor po-
Elektronika Praktyczna 8/2003
siada 32-bitow¹ wewnÍtrzn¹ architekturÍ, wiÍc jest dosyÊ ìmocnyî. Jego g³Ûwnym atutem, ktÛry przes¹dzi³ o†zastosowaniu, w†projekcie to przede wszystkim mnogoúÊ portÛw I/O i†wbudowany kontroler pamiÍci DRAM (do 2†MB). Jego uøycie by³o stosunkowo ³atwe, bowiem uruchomienie uk³adu mikroprocesorowego z†jego udzia³em sprowadza siÍ do pod³¹czenia do struktury uk³adu zegarowego i†wprowadzenie odpowiedniego programu do pamiÍci EEPROM. Pomimo tego zaistnia³y pewne problemy z†uruchomieniem uk³adu, ale to bÍdzie tematem dalszej czÍúci artyku³u.
Dekoder MP3 STA013 Za jego poúrednictwem odbywa siÍ w³aúciwa dekompresja düwiÍku. Producentem uk³adu jest firma ST Microelectronics. STA013 to specjalizowany procesor DSP zawieraj¹cy w†swojej strukturze wszystkie niezbÍdne bloki pozwalaj¹ce na dekompresjÍ i†obrÛbkÍ düwiÍku podawanego na wejúcie uk³adu jako ci¹g liczb
zakodowany standardem MP3. Do prawid³owej pracy uk³ad potrzebuje uk³adu zegarowego stabilizowanego oscylatorem kwarcowym o†odpowiedniej czÍstotliwoúci. Sterowanie uk³adem odbywa siÍ za pomoc¹ magistrali I2C. Dane ürÛd³owe przesy³ane s¹ do uk³adu ze poúrednictwem magistrali szeregowej, synchronizowanej taktami zegara. Po dekompresji sygna³ wyjúciowy, przesy³any jest do przetwornika C/A za pomoc¹ magistrali I2S. Cechy charakterystyczne uk³adu STA013 s¹ nastÍpuj¹ce: - jest zgodny ze standardem Layer III,ujÍtym w†normie ISO/IEC pod numerem 11172-3 (MPEG 1†Audio), - jest zgodny rÛwnieø ze standardem ISO/IEC 13818 - 3.2 (MPEG 2†Audio), - pozwala na dekodowanie Layer III, düwiÍku stereo, mono lub dwukana³owego, - rozpoznaje i†dekoduje wszystkie czÍstotliwoúci düwiÍku: 48, 44,1, 32, 24, 22,05, 16, 12, 11,025, 8†kHz,
33
Odtwarzacz MP3 z układem STA013
Rys. 5. Schemat elektryczny interfejsu IDE
- pozwala na dekompresjÍ düwiÍku o†dowolnej czÍstotliwoúci bitowej: od 8†do 320 kb/s, - posiada cyfrow¹ regulacjÍ g³oúnoúci, wysokich i†niskich tonÛw, - wbudowany szeregowy interfejs düwiÍkowy, - obs³uga poprzez magistralÍ I2C, - niski pobÛr mocy dziÍki zastosowaniu technologii CMOS i†napiÍcia zasilania 3,3 V. Pomimo, øe struktura uk³adu jest bardzo skomplikowana, uruchomienie go jest stosunkowo proste. Po do³¹czeniu zasilania oraz uk³adu zegarowego i†przetwornika C/A uk³ad jest gotowy do pracy. Za pomoc¹ magistrali I2C†moøemy np. odczytaÊ zawartoúÊ rejestru identyfikacyjnego uk³adu, ktÛry powinien zawieraÊ wartoúÊ ACh. Jeøeli prÛba z†identyfikacj¹ siÍ powiedzie, przystÍpujemy do konfiguracji pracy uk³adu poprzez wpisanie odpowiednich parametrÛw do rejestrÛw konfiguracyjnych. Wartoúci powyøszych parametrÛw szczegÛ³owo opisuje dokumentacja. NastÍpnie wysy³amy dane wejúciowe
Rys. 6. Schemat blokowy odtwarzacza
34
i†uzyskujemy w³aúciwy, s³yszalny düwiÍk.
Spostrzeøenia i†trudnoúci podczas budowy urz¹dzenia Urz¹dzenie w†prototypowej wersji zosta³o zbudowane modu³owo. Kaødy modu³ jest zmontowany na osobnej p³ytce drukowanej, a†ca³oúÊ jest ze sob¹ odpowiednio po³¹czona. Sta³o siÍ tak z†dwÛch przyczyn. Pierwsza z†nich to brak odpowiednich narzÍdzi do zaprojektowania i†wykonania profesjonalnej p³ytki drukowanej z†metalizacj¹ otworÛw o†obustronnym druku. Spraw¹ oczywist¹ jest, øe taka p³ytka charakteryzowa³a by siÍ duø¹ komplikacj¹ po³¹czeÒ i†w†warunkach domowych nie moøliwe jest jej wykonanie. Drugi powÛd modu³owoúci to ³atwoúÊ lokalizacji ewentualnych usterek i†moøliwoúÊ w†przysz³oúci dokonywania zmian konfiguracji modu³Ûw. £atwo moøna zmieniÊ np. modu³ sterowania uk³adem z†zastosowaniem innego mikrokontrolera, bez koniecznoúci przebudowy ca³ego urz¹dzenia.
Naleøy rÛwnieø wspomnieÊ, øe ca³y proces budowy sk³ada³ siÍ z†konstrukcji po kolei poszczegÛlnych modu³Ûw, a†dopiero pÛüniej urz¹dzenie zosta³o scalone. Jako pierwszy zosta³ zbudowany modu³ dekompresji MP3. Testowo zosta³ on pod³¹czony do portu rÛwnoleg³ego komputera PC, na ktÛrym zasta³a zasymulowana magistrala I2C†do sterowania dekoderem. Poprzez Ûw port by³a przesy³ana porcja danych w†postaci pliku MP3, a†urz¹dzenie odtwarza³o düwiÍk. Jednak samo odtwarzanie nie nast¹pi³o od razu. Naleøa³o uporaÊ siÍ z†konfiguracj¹ uk³adu, ustawieniem parametrÛw C/A, co nie naleøa³o do rzeczy ³atwych. Po uruchomieniu modu³u dekodera przeszliúmy do budowy sterownika mikrokontrolera. W†tym przypadku rÛwnieø wyst¹pi³y problemy, ktÛre wynika³y z†niepoprawnego montaøu elementÛw. NajwiÍcej trudnoúci sprawi³o nam napisanie procedury obs³ugi CD-ROM-a. Dokumentacja opisuj¹ca standard ATAPI, jak¹ posiadamy, nie przedstawia jasno problemu sterowania czytnikiem p³yt CD. Jednak z†tym problemem rÛwnieø uda³o nam siÍ uporaÊ i†CD-ROM zacz¹³ w†koÒcu odczytywaÊ wskazane sektory. Kiedy temat odczytu danych zosta³ zrealizowany wyst¹pi³ problem przy przysy³aniu odczytanych informacji do dekodera. Chcieliúmy wykorzystaÊ do tego celu sprzÍtow¹ synchroniczn¹ magistralÍ szeregow¹ w†ktÛr¹ wyposaøony zosta³ mikrokontroler. Okaza³o siÍ jednak, øe bajt przesy³any t¹ magistral¹ posiada odwrotn¹ kombinacjÍ bitÛw, niø kolejnoúÊ akceptowana przez STA013. Naleøa³o w†kaødej porcji danych poodwracaÊ odpowiednio bity kaødego bajtu. Proces ten jest prosty do realizacji, lecz czasoch³onny. Transfer danych okaza³ siÍ za wolny, a†efektem tego by³o zrywanie podczas odtwarzania utworÛw o†strumieniu szybszym niø 160 kb/s. Problem po optymalizacji programu uda³o siÍ rozwi¹zaÊ. Leszek Bednarz Krzysztof Lenard Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/sierpien03.htm oraz na p³ycie CD-EP8/2003B w katalogu PCB.
Elektronika Praktyczna 8/2003
M I N I P R O J E K T Y Wspólną cechą układów opisywanych w dziale "Miniprojekty" jest łatwość ich praktycznej realizacji. Zmontowanie układu nie zabiera zwykle więcej niż dwa, trzy kwadranse, a można go uruchomić w ciągu kilkunastu minut. Układy z „Miniprojektów” mogą być skomplikowane funkcjonalnie, lecz łatwe w montażu i uruchamianiu, gdyż ich złożoność i inteligencja jest zawarta w układach scalonych. Wszystkie układy opisywane w tym dziale są wykonywane i badane w laboratorium AVT. Większość z nich znajduje się w ofercie kitów AVT, w wyodrębnionej serii „Miniprojekty” o numeracji zaczynającej się od 1000.
Programator „atmelowych” mikrokontrolerów 89C51/52/55
Prezentowane w†artykule urz¹dzenie jest ³atwym w†wykonaniu programatorem ìduøychî mikrokontrolerÛw z†pamiÍci¹ Flash z†rodziny '51. Rekomendacje: niez³ej jakoúci programator, przydatny wszystkim projektantom korzystaj¹cym z†popularnych mikrokontrolerÛw produkowanych przez firmÍ Atmel.
Elektronika Praktyczna 8/2003
Prezentowany programator jest przeznaczony do programowania wszystkich wersji produkowanych przez firmÍ Atmel mikrokontrolerÛw 89C51, 89C52 i†89C55 (nie jest obs³ugiwany 89C55WD). Programator opracowa³ Wichit Sirichote z†King Mongkut's Institute of Technology i†udostÍpni³ pod nazw¹ Easy-Downloader 2.0. Schemat elektryczny programatora pokazano na rys. 1. Jego prac¹ steruje mikrokontroler U1 (89C51 lub 89C52) z†wpisanym do pamiÍci programem ez52.hex, ktÛry jest dostÍpny bezp³atnie w†Internecie pod adresem http:// chaokhun.kmitl.ac.th/~kswichit/easy2/ez52.hex. Uk³ad U4 spe³nia rolÍ stabilizatora napiÍcia zasilaj¹cego elementy programatora, a†U3 programowanego stabilizatora napiÍcia programuj¹cego. Za prze³¹czanie wartoúci tego napiÍcia odpowiada tranzystor T1 sterowany z†wyjúcia P3.3 mikrokontrolera U1. NapiÍcie podawane na z³¹cze JP1 powinno byÊ wyprostowane, wstÍpnie wyfil-
Rys. 1. Schemat elektryczny programatora
35
M I N I P R O J E K T Y WYKAZ ELEMENTÓW Rezystory R1: 8,2kΩ R2: 250Ω/1% R3: 2,15kΩ/1% R4: 1,15kΩ/1% R5: 1kΩ R6: 10kΩ DR1: 8x10kΩ (R−pack w obudowie SIL9) Kondensatory CE1, CE3, CE5: 10µF/16V CE2: 1µF/25V CE4: 100µF/25V C1, C2: 30pF C3: 100nF
Półprzewodniki D1: dowolna dioda LED T1: 2N2222 U1: AT89C51 (DIP40, z programem ez52.hex) U3: LM317T U4: LM7805CT U5: DS275 Inne X1: 11,0592MHz U2: podstawka ZIF40 JP1: złącze zasilania JP2: DB9M
P³ytka drukowana jest dostÍpna w AVT - oznaczenie AVT-1375. Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w I n t e r n e c i e p o d a d r e s e m : http://www.ep.com.pl/?pdf/ sierpien03.htm oraz na p³ycie CD-EP8/2003 w katalogu PCB.
trowane i†mieÊ wartoúÊ co najmniej 17 VDC przy pr¹dzie o†natÍøeniu 100 mA. Dioda úwiec¹ca D1 sygnalizuje w³¹czenie zasilania programatora. Wymiana danych pomiÍdzy mikrokontrolerem U1 i†komputerem PC odbywa siÍ poprzez interfejs szeregowy RS232. RolÍ konwertera napiÍciowego RS232<->TTL spe³nia uk³ad U5 typu DS275.
Jest to doúÊ nietypowe rozwi¹zanie, ale wybrano je ze wzglÍdu na niewielk¹ obudowÍ uk³adÛw DS275 i†moøliwoúÊ zamÛwienia ich bezp³atnej dostawy jako prÛbek. Schemat montaøowy p³ytki programatora pokazano na rys. 2. Podczas montaøu programatora warto zwrÛciÊ uwagÍ na koniecznoúÊ precyzyjnego zamontowania uk³a-
Rys. 2. Schemat montażowy programatora
dÛw U3 i†U4 - nie mog¹ siÍ one stykaÊ radiatorami. Prac¹ programatora steruje bezp³atne oprogramowanie, zgodne z†Windows 95/98/ Me/NT/2000/XP, ktÛre publi-
kujemy na CD-EP8/2003B, jest ono dostÍpne takøe na stronie autora: http:// chaokhun.kmitl.ac.th/ ~kswichit/ez4/EZDL4.exe. AG
prze³¹czania duøych pr¹dÛw (o natÍøeniu do 16 A), a†elementy wy³¹cznika s¹ odseparowane od napiÍcia 220 V. Do zasilania uk³adu zastosowano zasilacz zbudowany z†transformatora TS2/15, mostka prostowniczego i†stabilizatora. NapiÍcie na wyjúciu mostka prostowniczego (oko³o 12 V) s³uøy do zasilania cewki przekaünika. Na wyjúciu stabilizatora (US3) otrzymuje siÍ napiÍcie 5†V, ktÛre s³uøy do zasilania procesora i†odbiornika podczerwieni. Przycisk S1 s³uøy do
zmiany stanu przekaünika oraz do wprowadzenia wy³¹cznika w†tryb programowania kodÛw. Schemat montaøowy przedstawiono na rys. 2. P³ytka wielkoúci¹ zosta³a dopasowana do obudowy Z27, ktÛra ma wtyczkÍ oraz gniazdo przystosowane do napiÍcia 220†V. NapiÍcie zasilania 220†V naleøy do³¹czyÊ do z³¹cza CON1, a†odbiornik do z³¹cza CON2, oczywiúcie przy wy³¹czonym napiÍciu sieciowym.
Inteligentny wyłącznik Niemal kaøde nowoczesne urz¹dzenie audio-wideo jest wyposaøone w†zdalne sterowanie. Przy tym sposobie obs³ugi urz¹dzenia pobieraj¹ pr¹d zarÛwno w†stanie aktywnym, jak rÛwnieø w†stanie czuwania. Moc pobierana przez uk³ad czuwania nie jest duøa (kilka, kilkanaúcie watÛw), ale sumaryczna energia pobrana przez urz¹dzenie w stanie oczekiwania moøe byÊ spora. Rekomendacje: wy³¹cznik umoøliwia oszczÍdn¹ energetycznie obs³ugÍ urz¹dzeÒ zdalnie sterowanych.
36
Wy³¹cznik jest sterowany za pomoc¹ pilota zdalnego sterowania i†wspÛ³pracuje z†systemami RC5 (Philips) oraz SIRC (Sony). Wy³¹cznik odbiera sygna³y wysy³ane przez nadajnik zdalnego sterowania i†po odebraniu odpowiedniej (wczeúniej zaprogramowanej przez uøytkownika) komendy moøe ca³kowicie od³¹czyÊ urz¹dzenie od napiÍcia zasilania, a†za pomoc¹ innej komendy moøe do³¹czyÊ zasilanie do urz¹dzenia. Schemat wy³¹cznika przedstawiono na rys. 1. Elementem steruj¹cym jest mikrokontroler PIC16F676. Procesor jest taktowany sygna³em zegarowym o czÍstotliwoúci stabilizowanej zewnÍtrznym rezonatorem kwarcowym. Sygna³ zerowania, po w³¹czeniu zasilania, jest generowany wewnÍtrznie. Do sygnalizacji stanu pracy w³¹cznika s³uøy dwukolorowa dioda LED D1. Jako odbiornik promieniowania podczerwonego zastosowano uk³ad typu TSOP1738. Jako uk³ad wykonawczy zastosowano przekaünik, dziÍki ktÛremu uzyskano moøliwoúÊ
Elektronika Praktyczna 8/2003
M I N I P R O J E K T Y WYKAZ ELEMENTÓW
Rys. 1. Schemat elektryczny automatycznego wyłącznika
Po zmontowaniu ca³ego uk³adu i†pod³¹czenia go do napiÍcia zasilaj¹cego przyciskiem S1 moøna rÍcznie zmieniaÊ stan przekaünika. Kaødorazowe jego naciúniÍcie spowodujÍ zmianÍ stanu na przeciwny. W†czasie za³¹czenia stykÛw przekaünika dioda bÍdzie úwieci³a siÍ kolorem czerwonym.
Aby umoøliwiÊ zdalne sterowanie, naleøy zaprogramowaÊ kody s³uø¹ce do w³¹czenia i†wy³¹czenia przekaünika. W†tym celu naleøy od³¹czyÊ napiÍcie zasilania, nacisn¹Ê klawisz S1 i†ponownie w³¹czyÊ zasilanie. Po tych czynnoúciach procesor znajdzie siÍ w†trybie programowania, sygnalizuj¹c to
Rys. 2. Schemat montażowy płytki
Elektronika Praktyczna 8/2003
úwieceniem zielonej diody. Najpierw na klawiaturze pilota naleøy nacisn¹Ê klawisz, ktÛry bÍdzie powodowa³ za³¹czenie przekaünika, po prawid³owym odebraniu tego kodu przez wy³¹cznik dioda zgaúnie, a†procesor bÍdzie oczekiwa³ przez oko³o 2†sekundy na koniec transmisji, po czym dioda zapali siÍ na czerwono. Oczekiwanie na zakoÒczenie transmisji jest zabezpieczeniem przez kilkakrotnym zapisem tego samego kodu w†pamiÍci procesora. Po podaniu kodu w³¹czaj¹cego przekaünik naleøy podaÊ kod wy³¹czaj¹cy, naciskaj¹c kolejny klawisz na klawiaturze pilota. W†tym przypadku rÛwnieø dioda zostanie wy³¹czona, a†po oko³o 2†sekundach od zwolnienia klawisza na pilocie zostanie ponownie zapalona, koÒcz¹c proces zapisu kodÛw. Odebrane sekwencje zostan¹ zapisane w†pamiÍci EEPROM, dziÍki czemu nie zostan¹ utracone po wy³¹czeniu zasilania. Aby stan przekaünika by³ zmieniany po kaødorazo-
Rezystory R1: 330Ω R2: 220Ω R3: 4,7kΩ Kondensatory C1: 1000µF/25V C2, C3: 100nF C4: 100µF/16V C5, C6: 30pF C7: 47µF/16V Półprzewodniki D1: dioda LED dwukolorowa okrągła 5 mm D2: 1N4007 T1: BC547 MG: mostek prostowniczy 1A/400V US1: PIC16F676 zaprogramowany US2: TSOP1738 US3: LM78L05 Różne CON1, CON2: ARK2(5mm) CON3: goldpin 1x2 S1: mikrowłącznik X1: rezonator kwarcowy 4MHz Transformator TS2/15 Bezpiecznik 5A Gniazdo bezpiecznika do druku Obudowa Z27
P³ytka drukowana jest dostÍpna w AVT - oznaczenie AVT-1370. Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/?pdf/ sierpien03.htm oraz na p³ycie CD-EP8/2003 w katalogu PCB.
wym naciúniÍciu tylko jednego klawisza, jako kod w³¹czaj¹cy i†wy³¹czaj¹cy przekaünik naleøy nacisn¹Ê ten sam klawisz pilota. Po zaprogramowaniu wybranych klawiszy naleøy wy³¹czyÊ i†ponownie w³¹czyÊ zasilanie. Od tej pory stan przekaünika moøe byÊ zmieniony za pomoc¹ klawisza S1 lub zdalnie wczeúniej przypisanymi klawiszami. Krzysztof P³awsiuk, AVT
[email protected]
37
M I N I P R O J E K T Y
Rejestrator stanów logicznych dla PC Nie wszyscy elektronicy mog¹ sobie pozwoliÊ na zakup analizatora stanÛw logicznych. Napisany przeze mnie program, spe³niaj¹cy funkcjÍ rejestratora sygna³Ûw cyfrowych, moøe zast¹piÊ te kosztowne przyrz¹dy podczas prostych pomiarÛw. Rekomendacje: szczegÛlnie polecamy pocz¹tkuj¹cym elektronikom, ktÛrzy minimalnym nak³adem czasu i†úrodkÛw mog¹ wykonaÊ bardzo przydatny i†funkcjonalny rejestrator sygna³Ûw cyfrowych.
Rejestrator-analizator stanÛw logicznych moøna wykonaÊ na wiele sposobÛw, ale bez w¹tpienia na³atwiejszy to powierzyÊ tÍ rolÍ komputerowi PC. Rozwi¹zanie takie ma wadÍ, poniewaø nie jest moøliwe precyzyjne odmierzanie czasu prÛbkowania, ale walory uøytkowe takiego rejestratora w†znacznym stopniu j¹ niweluj¹. Analizowane sygna³y s¹ wprowadzane do PC poprzez rÛwnoleg³y port drukarkowy (Centronics). W†podstawowej wersji tego interfejsu mamy do dyspozycji 5†wejúÊ, ktÛrych stany moøemy odczytaÊ s¹ to sygna³y BUSY, ACK, PAPEROUT, ONLINE oraz !ERROR. Aby nie†uszkodziÊ linii interfejsu (choÊby jej nieumyúlnym do³¹czeniem do napiÍcia wyøszego od 5†V), ktÛry†jest dzisiaj zwykle zintegrowany z†p³yt¹ g³Ûwn¹ komputera, naleøy go odpowiednio zabezpieczyÊ. Linie wspÛ³czesnych wersji Centronicsa s¹ wewnÍtrznie ìpodci¹gniÍteî do napiÍcia 3,3 V. Wystarczy wiÍc zastosowaÊ najprostsz¹ optoizolacjÍ transoptorow¹ (stosuj¹c na przyk³ad transoptory CNY17 lub 4N35), w†ktÛrej tranzystor bÍdzie zwiera³ liniÍ wejúciow¹ portu do masy w†momencie przep³ywu pr¹du przez†diodÍ LED - rys. 1. NatÍøenie pr¹du p³yn¹cego przez tÍ diodÍ naleøy oczywiúcie ograniczyÊ, np. za pomoc¹ rezystora.
Obs³uga programu Okno dzia³aj¹cego programu (dla Windows 98 i†systemÛw pochodnych) pokazano na rys. 2. Ustawiane w†nim czasy naleøy traktowaÊ jako orientacyjne. W†celu zwiÍkszenia dok³adnoúci ich odmierzania warto wy³¹czyÊ wszystkie inne aplikacje. Program wyúwietla orientacyjny wykres, ktÛry ma po-
Rys. 1. Schemat elektryczny optoizolowanego wejścia rejestratora
38
mÛc w†analizowaniu przebiegÛw. Obs³uga jest doúÊ intuicyjna. Po klikniÍciu na wykres moøemy przesuwaÊ jego zawartoúÊ za pomoc¹ klawiszy kursorÛw: <, > oraz Home, PageUp, PageDown. Na pierwszym planie znajduje siÍ przebieg sygna³u podawanego na liniÍ !ERROR, za nim (ìw g³¹bî) widaÊ kolejno linie, ktÛrym odpowiada coraz wyøszy numer bitu w†odczytanym bajcie z†rejestru BASE+1. Liczby pod s³upkami wykresu oznaczaj¹ numer prÛbki (pomiaru). W†ten sposÛb moøemy np. okreúliÊ czasy trwania impulsÛw. Na wykresie mieúci siÍ maksymalnie 999 prÛbek, zaú ca³y bufor zawiera 65535. ZawartoúÊ bufora moøemy eksportowaÊ, np. do Excela, co pozwala wykonaÊ lepsze wykresy, analizÍ zgromadzonych danych itp. W†tym celu wystarczy klikn¹Ê na†przycisk ZrzuÊ bufor do pliku. WÛwczas w†katalogu programu zostanie utworzony plik tekstowy buf_data.txt zawieraj¹cy dane moøliwe do zaimportowania do Excela jako plik tekstowy z†separatorem w†postaci spacji. Program zawsze zapisuje zawartoúÊ ca³ego bufora, bez wzglÍdu na†to, ile w†nim znajduje siÍ prÛbek (poza obszarem prÛbek znajduj¹ siÍ zera). Przed dokonaniem pomiaru naleøy wybraÊ adres bazowy portu LPT (BASE), ktÛry bÍdzie wykorzystywany jako wejúcie danych rejestratora. Pomiar moøna przeprowadzaÊ dwoma sposobami: bez synchronizacji oraz z†synchronizacj¹ sygna³em wyzwalaj¹cym. Niezaleønie jednak od sposobu, naleøy wpierw ustawiÊ wartoúci OdstÍpy czaso-
we oraz IloúÊ prÛbek. Pierwsza liczba okreúla odstÍp czasu, po jakim ma byÊ dokonywany pomiar. Druga zaú okreúla, ile razy zostanie przeprowadzony pomiar. Zatem czas samego pomiaru wyniesie minimum: (ustalone odstÍpy czasowe + 4†ms) * liczba prÛbek Pomiar bez sygna³u wyzwalaj¹cego jest przeprowadzany zaraz po wciúniÍciu przycisku PrÛbkuj natychmiast. Pomiar z†synchronizacj¹ (ktÛra nie jest moøe najdok³adniejsza z†powodu pewnych opÛünieÒ, jednak zwykle wystarcza) wymaga ustawienia jeszcze dwÛch parametrÛw. Pierwszym z†nich jest Bit wyzwalaj¹cy,†ktÛry okreúla, z†ktÛrej linii pomiar ma byÊ wyzwalany (np. bit 3 oznacza liniÍ !ERROR). Drugim zaú jest poziom wyzwalaj¹cy: czy wyzwolenie ma nast¹piÊ poziomem 1 (high), czy 0 (low). Kiedy ustawimy powyøsze parametry, wystarczy klikn¹Ê na przycisk Czekaj na wyzwolenie. Jeúli teraz pojawi siÍ odpowiedni sygna³ na podanej linii, pomiar zostanie wykonany. W†przeciwnym razie program bÍdzie ca³y czas w†stanie oczekiwania. Jeøeli bÍdziemy chcieli przerwaÊ ten stan, wystarczy przycisn¹Ê aktywny przycisk Oczekiwanie: stop. Bez wzglÍdu na to, czy pomiar zostanie dokonany, czy nie, zawartoúÊ wykresu i†bufora ulegnie zmianie (o†czym naleøy pamiÍtaÊ). Jeúli bÍdziemy chcieli okreúliÊ stan linii synchronizuj¹cej czy innej na chwilÍ przed wyzwoleniem, moøemy sygna³ wyzwalaj¹cy pozostawiÊ bez zmian, a†na odpowiedniej linii umieúciÊ uk³ad opÛünia-
Rys. 2. Widok okna programu obsługującego rejestrator
Elektronika Praktyczna 8/2003
M I N I P R O J E K T Y Tab. 1. Przypisanie linii wejściowych do styków w typowych gniazdach i w rejestrze danych o adresie BASE+1 Bit portu BASE+1 Sygna³
7
6
5
4
3
BUSY ACK PAPER OUT ONLINE !ERROR
Masa
Numer styku w DB25
11
10
12
13
15
18...25 (wybór np. 21)
Numer styku w DB36
11
10
12
13
32
19...30, 33
j¹cy (z³oøony np. z†kilku bramek, obwodu RC lub RL). W†przypadku nowszych wersji programu (od 3.12) dostÍpna jest opcja Czas jest krytyczny, ktÛr¹ moøna wykorzystaÊ, kiedy badamy szybkie przebiegi. Jednak naleøy j¹ wykorzystywaÊ ostroønie, gdyø istniej¹ sytuacje, w†ktÛrych doprowadzimy do zawieszenia siÍ systemu, np. zbyt d³ugi czas prÛbkowania
czy - w†przypadku wyzwalania - brak odpowiedniego sygna³u synchronizuj¹cego. OprÛcz tego dostÍpna jest opcja (od wersji 3.15) ukrycia okna programu na pasku zadaÒ w†tzw. trayu.
Instalacja programu Aplikacja nie ma w³asnego instalatora. Jako øe zosta³y uøyte niestandardowe komponenty i†kontrolki ActiveX,
wymagane s¹ dodatkowe biblioteki z†Delphi 3.0. Dlatego przed uruchomieniem programu naleøy skopiowaÊ plik cfx32.ocx do katalogu systemowego (najczÍúciej c:\windows\system), a†nastÍpnie dodaÊ do rejestru odpowiednie klasy, uruchamiaj¹c skrypt w†pliku cfx.reg. Aplikacja ponadto wymaga sterownika DriverLINX, ktÛry moøna pobraÊ ze strony DiskDude: - http://venezia.cx/~diskdude/ software/cbuilder/index.html, - http://venezia.cx/~diskdude/ files/cbuilder/DLPortIO/ DLPortIO.zip, - http://venezia.cx/~diskdude/ files/cbuilder/DLPortIO/ port95nt.exe.
Powyøsza czynnoúÊ nie jest jednak konieczna w†przypadku systemu Windows 98. Wystarczy do wspomnianego wyøej katalogu systemowego skopiowaÊ jeszcze pliki dlportio.sys oraz dlportio.dll. Wszystkie te czynnoúci moøemy wykonaÊ automatycznie, uruchamiaj¹c plik wsadowy syst_upd.bat. W†razie koniecznoúci naleøy tylko uruchomiÊ ponownie system, a†nastÍpnie program oscpil.exe. Jeúli powyøsze czynnoúci nie†przynios¹ skutku, trzeba kolejno wykonaÊ polecenia: regsvr32 /u cfx32.ocx oraz regsvr32 cfx32.ocx. Janusz U¿ycki
[email protected]
Programator ISP mikrokontrolerów AVR z serii AT90S Pomimo zamieszania wywo³anego przez ostr¹ selekcjÍ przeprowadzon¹ niedawno wúrÛd mikrokontrolerÛw AVR przez firmÍ Atmel, mikrokontrolery z†serii AT90S s¹ nadal produkowane (choÊ okreúlane jako ìmatureî, czyli przewidziane do wycofania z†produkcji), moøna je takøe nadal bez wiÍkszego trudu kupiÊ w†sklepach elektronicznych. Rekomendacje: projekt polecany szczegÛlnie fanom mikrokontrolerÛw AVR, ktÛrzy chc¹ wykonaÊ sobie - praktycznie beznak³adowo funkcjonalny programator ISP.
Autorem programu - bo prezentowany programator sk³ada siÍ przede wszystkim z†programu - jest S³owak Juraj Lihosith. Program AVR Programmer wspÛ³pracuje z†bardzo prostym interfejsem (schemat elektryczny pokazano na rys. 1), za pomoc¹ ktÛrego moøna programowaÊ nastÍpuj¹ce mikrokontrolery wyposaøone w†interfejs SPI: AT90S1200, AT90S2313, AT90S2323, AT90S2343, AT90S2333, AT90S4414, AT90S4434, AT90S4433, AT90S8515, AT90S8535 oraz mikrokontroler z†rodziny '51 - AT89S8252. Dane moøna wprowadzaÊ do pamiÍci programu Flash oraz danych EEPROM, moøliwe jest takøe programowanie i†kasowanie bitÛw zabezpieczaj¹cych i†konfiguracyjnych, do ktÛrych dostÍp podczas programowania ISP przewidzia³ producent w†oficjalnych specyfikacjach. Interfejs programuj¹cy jest do³¹czany do portu rÛwnoleg³ego (Centronics) komputera PC. Dioda LED sygnalizuje aktywnoúÊ programatora. Sygna³y XTAL1,
Na płycie CD−EP8/ 2003B zamieściliśmy program AVR Programmer 3.3 (pracuje z Windows 95/98/Me) oraz noty katalogowe mikrokontrolerów obsługiwanych przez niego (oprócz AT90S4414).
Elektronika Praktyczna 8/2003
SCK, MOSI, MISO, GND i†RESET naleøy do³¹czyÊ do tak samo oznaczonych wyprowadzeÒ wymienionych mikrokontrolerÛw, a†linia VCC s³uøy g³Ûwnie do zasilania diody LED. Interfejs moøe zostaÊ nieco uproszczony i†wtedy nie s¹ wykorzystywane linie VCC i†XTAL1 - szczegÛ³y moøna znaleüÊ w†pomocy programu AVR Programmer. Na rys. 2 pokazano widok okna dzia³aj¹cego programu, ktÛry, jakkolwiek niezbyt duøy, wymaga instalacji. Podczas korzystania z†programu naleøy pamiÍtaÊ o†zweryfikowaniu dzia³ania programatora dla rÛønych prÍdkoúci transmisji (Interface Speed) w†wiÍkszoúci testowanych przypadkÛw najlepsz¹ stabilnoúÊ pracy uzyskiwano dla prÍdkoúci Medium. W†zaleønoúci od wybranej konfiguracji pracy interfejsu pokazane-
go na rys. 1, trzeba takøe ustaliÊ odpowiedni tryb jego pracy (Interface Mode). Autor programu udostÍpnia go bezp³atnie, ale przewiduje moøliwoúÊ jego rejestracji za rÛwnowartoúÊ 3†USD. Rejestracja nie zwiÍksza funkcjonalnoúci programu. TG WiÍcej informacji o†programie prezentowanym w†artykule moøna znaleüÊ w†Internecie pod adresem: http://avr.webpark.sk/. Instalacyjn¹ wersjÍ programu AVR Programmer publikujemy na CD-EP8/2003B, jest ona dostÍpna takøe w†Internecie pod adresem: http://avr.webpark.sk/Files/ setup.exe.
Rys. 1. Schemat elektryczny programatora
Rys. 2. Wygląd okna programu sterującego
39
M I N I P R O J E K T Y
PanuWorld Nokia Cable Opublikowana miesi¹c temu pierwsza czÍúÊ artyku³u o†protokole Mbus dla telefonÛw Nokia wywo³a³a ogromne zainteresowanie wúrÛd naszych CzytelnikÛw. Specjalnie dla nich przygotowaliúmy miniprojekt interfejsu, za pomoc¹ ktÛrego bÍd¹ mogli modyfikowaÊ zawartoúÊ pamiÍci swojego telefonu. Rekomendacje: dla wszystkich uøytkownikÛw telefonÛw Nokia (z interfejsami Mbus i†Fbus), ktÛrzy zamierzaj¹ nieco lepiej poznaÊ ich moøliwoúci...
Prezentowany projekt powsta³ na bazie popularnego rozwi¹zania PanuWorld Nokia Cable, czyli dwustandardowego interfejsu zgodnego z†protoko³ami Mbus oraz Fbus. Wejúcia i†wyjúcia interfejsu (od strony telefonu) s¹ przystosowane do wspÛ³pracy ze wszystkimi telefonami,
Zasilanie dla tego uk³adu jest dostarczane z†interfejsu RS232 komputera PC, dioda Zenera D1 spe³nia rolÍ stabilizatora-ogranicznika napiÍcia, zapobiegaj¹cego przekroczeniu wartoúci napiÍcia zasilaj¹cego powyøej 4,7V. Interfejs zmontowano na niewielkiej p³ytce drukowa-
Prezentowany interfejs nie nadaje się do “flashowania” telefonów Nokia! Odpowiedni do tego celu interfejs opiszemy w EP za miesiąc. takøe tymi, ktÛrych interfejsy s¹ przystosowane do sygna³Ûw w†standardzie napiÍciowym 3,3 V. Schemat elektryczny interfejsu pokazano na rys. 1. Nie wymaga on specjalnego komentarza, jest to bowiem minimalnie rozbudowana typowa aplikacja uk³adu MAX232.
nej, ktÛrej schemat montaøowy pokazano na rys. 2. Montaø jest prosty w†przeprowadzeniu, z†przyczyn praktycznych (ew. serwisowanie) warto zastosowaÊ pod uk³ad US1 podstawkÍ. Sam interfejs - co oczywiste - nie poradzi sobie z†modyfikowaniem nastaw
telefonu, do tego celu jest niezbÍdne specjalistyczne oprogramowanie. Dobrym ürÛd³em jest strona internetowa Fan Klubu Nokii (www.fkn.pl), na ktÛrej moøna znaleüÊ szereg interesuj¹cych nowoúci. TG Dodatkowe informacje moøna znaleüÊ m.in. pod adresami: - http://nokiafree.org, - http://www.fkn.pl, - http://www.gsm4u.cz, - http://www.gsmtricks.com.ua, - http://www.nokia.w.interia.pl.
WYKAZ ELEMENTÓW Rezystory R1: 1kΩ R2: 33kΩ R3: 47Ω Kondensatory C1...C4: 1µF/25V C5: 2,2µF/25V Półprzewodniki US1: MAX232 D1: 4V7 D2, D7: BAT85 D3: 3V0 D4, D6: 1N4148 D5: 2V7 T1: BC548B Różne J1: DB9F (wtyczka z przewodem) JP1: goldpin 4x1
P³ytka drukowana jest dostÍpna w AVT - oznaczenie AVT-1376.
Rys. 1. Schemat elektryczny interfejsu
Rys. 2. Rozmieszczenie elementów na płytce drukowanej
40
Rys. 3. Opis funkcji styków gniazda telefonów Nokia 6110/8110
Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/?pdf/ sierpien03.htm oraz na p³ycie CD-EP8/2003 w katalogu PCB.
Rys. 4. Opis funkcji styków gniazda telefonów Nokia 21xx/31xx/81xx
Elektronika Praktyczna 8/2003
M I N I P R O J E K T Y
Przetwornica napięcia 1 V/5 V Przy bateryjnym zasilaniu uk³adÛw cyfrowych naleøy pamiÍtaÊ, øe napiÍcie ogniw zmienia siÍ wraz z†up³ywem czasu. Ponadto jego niewielka wartoúÊ wymusza stosowanie wielu ogniw w†celu uzyskania napiÍcia zasilaj¹cego o†wartoúci 5V. Alternatywnym rozwi¹zaniem jest zastosowanie wysokosprawnej przetwornicy napiÍcia, ktÛrej jeden z†moøliwych wariantÛw przedstawiamy w†artykule. Rekomendacje: przydatna wszystkim uøytkownikom systemÛw cyfrowych, ktÛre musz¹ byÊ zasilane bateryjnie napiÍcie 5†V†moøna uzyskaÊ z pojedynczego ogniwa 1,5 V!
Przetwornica umoøliwia zasilanie uk³adÛw cyfrowych napiÍciem 5†V z†pojedynczego ogniwa 1,5†V. Schemat elektryczny przetwornicy przedstawiono na rys. 1. G³Ûwnym elementem jest uk³ad US1, w†ktÛrym zintegrowano wszystkie elementy niezbÍdne do sterowania wewnÍtrznego tranzystora mocy. NapiÍcie indukowane w†L1 jest podawane na diodÍ D1, ktÛra ìprzepuszczaî do odbiornika tylko dodatnie szpil-
ki. NapiÍcie to jest wyg³adzane przez kondensator C1. NapiÍcie wyjúciowe jest podawane takøe na wejúcie PS uk³adu US1, co umoøliwia odpowiedni¹ modyfikacjÍ przebiegu steruj¹cego wewnÍtrznym tranzystorem, aby niezaleønie od napiÍcia zasilania oraz pr¹du obci¹øenia napiÍcie wyjúciowe by³o jak najbardziej zbliøone do wartoúci 5†V. Minimalna wartoúÊ napiÍcia zasilania przetwornicy wynosi 0,9 V, co umoøliwia pracÍ z†jed-
Rys. 1. Schemat elektryczny przetwornicy napięcia
nym ogniwem o†napiÍciu nominalnym 1,5 V, a†nawet z†akumulatorem o†napiÍciu 1,2 V. WydajnoúÊ pr¹dowa przetwornicy jest úciúle powi¹zana z†napiÍciem zasilania, dlatego dla wiÍkszych pr¹dÛw naleøy zastosowaÊ wyøsze napiÍcie zasilania. Na rys. 2 przedsta-
wiono zaleønoúci napiÍcia wyjúciowego od pobieranego pr¹du. Przetwornica jest wyposaøona w†wejúcie w³¹czaj¹ce !SHDN. Podanie na to wejúcie napiÍcia mniejszego niø 0,2 V†wy³¹cza przetwornicÍ w†tym trybie pobierany jest pr¹d spoczynkowy o†wartoúci oko³o 2†µA. W†czasie normalnej pracy na wejúcie to naleøy podaÊ napiÍcie o wartoúci wiÍkszej niø 0,8 V. Uk³ad zosta³ zmontowany na p³ytce dwustronnej z†elementami umieszczonymi po obu stronach (rys. 3). Uk³ad US1 i†kondensator naleøy wlutowaÊ od strony ìlutowaniaî, pozosta³e elementy po w³aúciwej stronie montaøu elementÛw. AG
WYKAZ ELEMENTÓW Kondensatory C1: 47µF/6V 6032 L1: 100µH Półprzewodniki D1: 1N5817 US1: TC125501ECT Różne CON1: goldpin 1x2 kątowy CON2: goldpin 1x3 kątowy
P³ytka drukowana jest dostÍpna w AVT - oznaczenie AVT-1372. Rys. 2. Zależności pomiędzy napięciem wyjściowym i prądem pobieranym z wyjścia przetwornicy a napięciem zasilania przetwornicy
Rys. 3. Schemat montażowy płytki drukowanej
Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/?pdf/ sierpien03.htm oraz na p³ycie CD-EP8/2003 w katalogu PCB.
Rozładowywarka/tester ogniw NiCd Do³adowywanie akumulatora niklowokadmowego, gdy nie zosta³ on do koÒca roz³adowany, powoduje wyst¹pienie efektu pamiÍciowego, ktÛry degraduje pojemnoúÊ akumulatora. Rekomendacje: urz¹dzenie pozwala zapobiec powstawaniu efektu pamiÍciowego w†akumulatorach NiCd o†pojemnoúciach do 1,2 Ah.
Elektronika Praktyczna 8/2003
Aby przeciwdzia³aÊ powstawaniu efektu pamiÍciowego, naleøy przed ³adowaniem przeprowadziÊ kontrolowane roz³adowanie akumulatora. NiektÛre ³adowarki posiadaj¹ juø wbudowan¹ funkcjÍ roz³adowywania przed ³adowaniem, co skutecznie wyd³uøa øywotnoúÊ
akumulatorÛw. Wed³ug danych katalogowych akumulatory NiCd nie powinny byÊ roz³adowywane poniøej 1†V, a†wy³adowanie poniøej 0,6†V powoduje trwa³e ich uszkodzenie. Prezentowane urz¹dzenie wykonano przy uøyciu kilku ogÛlnie dostÍpnych podzespo-
Czytelników zainteresowanych szczegółowymi informacjami związanymi z obsługą i korzysta− niem ze współczesnych akumulatorów zachęcamy do sięgnięcia po EP4 i 5/2003, w których opublikowaliśmy artykuły związane z tym tematem.
³Ûw (rys. 1). Jest to typowy przerzutnik astabilny (multiwibrator), ktÛry pracuje z†czÍstotliwoúci¹ oko³o 15 kHz. Dzia³anie roz³adowywarki polega na zasilaniu przerzutnika z†roz³adowywanego akumulatora. Przerzutnik pracuj¹c pobiera pr¹d o†znacznym natÍøeniu (ze wzglÍdu na niewielkie wartoúci rezystorÛw w³¹czonych w†kolektory T1 i†T2), powoduj¹c roz³adowanie akumulatora. WartoúÊ pr¹du roz³adowania zaleøy od wartoúci rezystorÛw R1 i†R2 oraz indukcyjnoúci cewki L1, a†takøe czÍstotliwoúci pracy
41
M I N I P R O J E K T Y WYKAZ ELEMENTÓW Rezystory R1, R6: 1,5Ω R2, R5: 4,7kΩ R3, R4: 150Ω Kondensatory C1, C2: 680nF Półprzewodniki D1, D2: 1N4007 D3: dowolna dioda LED T1, T2: BD135 Różne L1: 6,8mH Rys. 1. Schemat elektryczny rozładowywarki
multiwibratora. Wartoúci tych elementÛw musz¹ byÊ tak dobrane, aby wartoúÊ pr¹du pobieranego przez roz³adowywarkÍ nie przekroczy³a znamionowego pr¹du roz³adowania akumulatora. Dioda D1 1N4007 zapobiega wy³adowaniu do³¹czonego akumulatora poniøej 0,9 V. Dioda LED D3
s³uøy do sygnalizacji roz³adowania. Jest ona zasilana z†cewki L1, na ktÛrej w†wyniku samoindukcji pojawia siÍ napiÍcie wystarczaj¹ce do przekroczenia napiÍcia progowego diody. Schemat montaøowy urz¹dzenia przedstawiono na rys. 2. Prosta konstrukcja urz¹-
Rys. 2. Schemat montażowy płytki rozładowywarki
dzenia zapewnia ³atwy montaø. Uruchomienie sprowadza siÍ do sprawdzenia poprawnoúci montaøu i†pod³¹czenia akumulatora. Uk³ad moøemy z†powodzeniem wykorzystywaÊ jako tester akumulatorÛw. KG
P³ytka drukowana jest dostÍpna w AVT - oznaczenie AVT-1374. Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/?pdf/ sierpien03.htm oraz na p³ycie CD-EP8/2003 w katalogu PCB.
Inteligentny sterownik wentylatora Wentylatory s¹ powszechnie stosowane do ch³odzenia urz¹dzeÒ elektronicznych, gdy zastosowanie radiatora o†odpowiednich wymiarach nie jest moøliwe. Jeúli wentylator pracuje prawid³owo, to ch³odzony uk³ad pracuje w†dozwolonym zakresie temperatury, jeúli jednak wentylator zostanie zatrzymany, uk³ad moøe siÍ uszkodziÊ na skutek przegrzania. Rekomendacje: sterownik umoøliwia nadzorowanie pracy wentylatora i†sygnalizowanie jego uszkodzenia lub obniøenia wydajnoúci pracy.
Schemat elektryczny sterownika-sygnalizatora przedstawiono na rys. 1. Zastosowano w nim specjalizowany uk³ad typu TC670. Jego schemat blokowy przedstawiono na rys. 2. Kontrola pracy wentylatora odbywa siÍ poprzez pomiar jego prÍdkoúci obrotowej, ktÛry jest wykonywany z†wykorzystaniem przetwornika czÍstotliwoúÊnapiÍcie. Do pomiaru wykorzystywany jest spadek napiÍcia na rezystorze R4, ktÛry w³¹czony jest szeregowo w†obwÛd zasilania wentylatora. W†zaleønoúci od nominalnego pr¹du pobieranego przez wentylator naleøy dobraÊ wartoúÊ rezystora R4.
Zalecane wartoúci znajduj¹ siÍ w†tab. 1. Sygna³ z†wejúcia SENSE trafia na wejúcie przetwornika czÍstotliwoúÊnapiÍcie, na wyjúciu ktÛrego otrzymuje siÍ napiÍcie o wartoúci proporcjonalnej do prÍdkoúci obrotowej wentylatora. NapiÍcie to jest podawane na wejúcie wewnÍtrznego komparatora. PorÛwnuje on napiÍcie z†wyjúcia przetwornika czÍstotliwoúÊ-napiÍcie z†napiÍciem podanym na wejúcie THRESHOLD. Do³¹czony do tego wejúcia potencjometr PR umoøliwia regulacjÍ czu³oúci czujnika. Wyjúcie komparatora jest po³¹czone z†uk³a-
Tab. 1. Zalecane wartości rezystora R4 w zależności od prądu pobieranego przez wentylator Nominalny pr¹d wentylatora
Zalecana Ω] R4[Ω wartoœæ R4[
100
4,7
200
2,4
300
1,8
400
1,3
500
1,0
600
0,8
42
WYKAZ ELEMENTÓW Rezystory R1: 1kΩ R2: 10kΩ R3: 330Ω R4: 4,7Ω Kondensatory C1, C2: 47µF/16V C3, C4: 100nF Półprzewodniki D1: 1N4148 D2: LED 3 mm okrągła− czerwona US1: TC670 US2: LM78L05 Różne CON1, CON2: ARK2 (3,5mm) CON3: goldpin 1x2 męski S: mikrowłącznik
P³ytka drukowana jest dostÍpna w AVT - oznaczenie AVT-1373.
Rys. 1. Schemat elektryczny sygnalizatora pracy wentylatora
Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/?pdf/ sierpien03.htm oraz na p³ycie CD-EP8/2003 w katalogu PCB.
Elektronika Praktyczna 8/2003
M I N I P R O J E K T Y bÍdzie mia³ zbyt niski obroty, to tranzystor w³¹czy diodÍ D2. Dioda bÍdzie úwieci³a siÍ do momentu wyzerowania alarmu przez zwarcie przycisku S. Sygnalizator przeznaczony jest do kontroli pracy wentylatora Rys. 2. Budowa wewnętrzna układu o†napiÍciu zasilania TC670 rÛwnym 12 V, jednak dem steruj¹cym tranzystorem uk³ad TC670 przystosowany wyjúciowym. Jeúli wentylator jest do napiÍÊ zasilania z†za-
kresu 3...5,5 V, dlatego konieczne sta³o siÍ obniøenie napiÍcia z†12 V†na 5†V. Do tego celu zastosowano stabilizator typu LM78L05. Po zmontowaniu uk³adu, do z³¹cza CON1 naleøy do³¹czyÊ napiÍcie zasilaj¹ce, do z³¹cza CON2 nadzorowany wentylator, a†do z³¹cza CON3 przycisk zeruj¹cy alarm. Potencjometr PR naleøy tak ustawiÊ, aby dioda D2 nie zapala³a siÍ w†czasie normalnej pracy wen-
Rys. 3. Schemat montażowy płytki drukowanej
tylatora, a†jedynie w†momencie zmniejszenia jego obrotÛw. KP
Girder PlugIn na USB Zdalne sterowanie PC poprzez USB Znany juø Czytelnikom EP S³owak Igor Cesko stworzy³ oprogramowanie dla mikrokontrolerÛw AVR, ktÛre emuluje interfejs USB. DziÍki temu w†USB moøna wyposaøyÊ praktycznie dowolny mikrokontroler z†rodziny AVR. Przyk³adow¹ implementacjÍ Igor wykona³ na AT90S2313 oraz AT90S2323. WersjÍ bardziej uniwersaln¹ (na 2313) przedstawiamy w†artykule.
Przyk³adowa aplikacja to nastÍpca popularnego interfejsu do zdalnego sterowania PC (http://www.cesko.host.sk/girderplugin.htm). Autor zachowa³ identyczn¹ funkcjonalnoúÊ wersji USB z†wersj¹ wspÛ³pracuj¹c¹ z†interfejsem RS232, jedyn¹ istotn¹ rÛønic¹ jest koniecznoúÊ zainstalowania specjalnego sterownika umoøliwiaj¹cego wspÛ³pracÍ PC z†mikrokontrolerem AVR do³¹czonym do USB (pracuje w†trybie Low Speed - 1,5 Mbd). Schemat elektryczny przystawki pokazano na rys. 1. RolÍ interfejsu RC->USB spe³nia mikrokontroler IC1, ktÛrego pamiÍÊ zaprogramowano programem udostÍpnia-
a†maksymalna czÍstotliwoúÊ taktowania AT90S2313-10 wynosi 10 MHz. W†zaleønoúci od posiadanych elementÛw jako czujnik podczerwieni moøna zastosowaÊ jeden z†czterech typÛw (w wielu odmianach) detektorÛw zintegrowanych z†soczewk¹, wzmacniaczem i†filtrami. Schemat montaøowy p³ytki drukowanej (opracowanej przez I. Cesko) pokazano na rys. 2. Zamiarem autora by³o umieszczenie interfejsu w†obudowie od typowego ìkluczaî USB. Prezentowane urz¹dzenie, podobnie do innych do³¹czanych do USB, wymaga zainstalowania odpowiednich driverÛw (dostÍpne bezp³atnie).
Procedura instalacji jest szczegÛ³owo opisana w†dokumentacji umieszczonej pod adresem http://www.cesko.host.sk/downloads/IgorPlugUSBinstallsteps.zip (publikujemy j¹ takøe na CD-EP8/2003B). GK
WYKAZ ELEMENTÓW Rezystory R1: 1,5kΩ R2: 100Ω R3, R4: 1kΩ Kondensatory C1: 100nF C2: 10µF/16V C3: 4,7µF/16V Półprzewodniki IC1: AT90S2313−10 (zaprogramowany programem usb90s23x3.hex) IC2: TSOP17xx lub SFH506−xx alternatywnie z IC3 IC3: TSOP1838 lub SFH5110 alternatywnie z IC2 D1, D2: diody LED Różne XC1: złącze krawędziowe USB−A XT1: kwarc 12 MHz
P³ytka drukowana jest dostÍpna w AVT - oznaczenie AVT-1378. Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/?pdf/ sierpien03.htm oraz na p³ycie CD-EP8/2003 w katalogu PCB.
Rys. 1
Artyku³ powsta³ na bazie materia³Ûw udostÍpnionych przez Igora Cesko (http:// www.cesko.host.sk/) i†za jego zgod¹.
Elektronika Praktyczna 8/2003
nym bezp³atnie przez autora projektu (komplet oprogramowania i†dokumentacji publikujemy takøe na CDEP8/2003B). Naleøy zwrÛciÊ uwagÍ, øe mikrokontroler jest przetaktowany - zastosowano bowiem kwarc o†czÍstotliwoúci rezonansowej 12 MHz,
Rys. 2
43
M I N I P R O J E K T Y
Screaming Bird − przystawka do gitary elektrycznej Projekty dla gitarzystÛw publikujemy stosunkowo rzadko, st¹d nasza duøa dba³oúÊ o†dobÛr tematÛw. Prezentowany projekcik jest ³atwy w†wykonaniu wzmacniaczem do gitary elektrycznej z†nieco zmodyfikowan¹ charakterystyk¹ czÍstotliwoúciow¹.
Pierwowzorem prezentowanego urz¹dzenia jest sprawdzone przeze mnie opracowanie Electro Harmonix, dostÍpne na rynku pod nazw¹ EH Screaming Bird. Jej dzia³anie polega na wyostrzeniu brzmienia wyøszych sk³adowych sygna³u pobieranego z†przetwornika gitary, co nadaje jej brzmieniu nieco ìptasiegoî polotu. Schemat elektryczny przystawki pokazano na rys. 1. Jest to - jak na wspÛ³czesne standardy - uk³ad zaskakuj¹co prosty, ale - jak wykaza³y prÛby - skuteczny w†dzia³aniu. Jest on przystosowany do za-
silania z†typowej w†zastosowaniach ìgitarowychî baterii 9†V. Na p³ytce drukowanej (jej schemat montaøowy pokazano na rys. 2) przewidziano miejsca na typowe gniazda chinch, stosowane w†sprzÍcie audio. Nie jest to typowe - jak na aplikacje ìgitaroweî - z³¹cze, w†zwi¹zku z†czym moøna je zast¹piÊ klasycznymi duøymi Jackami, dziÍki czemu nie bÍdzie konieczne stosowanie dodatkowego w³¹cznika zasilania przystawki. Z†montaøem poradz¹ sobie bez trudu najmniej doúwiadczeni konstruktorzy, nie powinien on sprawiÊ
trudnoúci takøe tym gitarzystom, ktÛrzy nie zajmuj¹ siÍ elektronik¹ zbyt powaønie. Jarek Jaskulski
WYKAZ ELEMENTÓW Rezystory R1: 430kΩ R2: 10kΩ R3: 100kΩ R4: 43kΩ R5: 390Ω Kondensatory C1, C2: 2,2nF Półprzewdoniki T1: BC413C Różne Gn1, Gn2: chinch do druku lub duży Jack stereo (montowany na obudowie)
P³ytka drukowana jest dostÍpna w AVT - oznaczenie AVT-1379. Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/?pdf/ sierpien03.htm. Rys. 1
Rys. 2
Gitarowy DiFuzz Pierwowzorem prezentowanego efektu gitarowego jest konstrukcja Jacka Ormana. Sprawdzony ìw bojuî fuzz przyda siÍ z†pewnoúci¹ pocz¹tkuj¹cym gitarzystom, ktÛrzy z†oczywistych przyczyn lubi¹ efekty tego typu.
Schemat elektryczny przystawki pokazano na rys. 1. Sk³ada siÍ ona z†jednostopniowego wzmacniacza z†tranzystorem T1, z†wyjúcia ktÛrego jest sterowany wzmacniacz rÛønicowy T2, T3. Na bazÍ tranzystora T2 jest podawany sygna³ bezpoúrednio z†kolektora T1, natomiast na bazÍ T3 sygna³ nieco przesuniÍty w†fazie. Powoduje to miÍkkie podcinanie ìkrawÍdziî sygna³u wyjúciowego, dziÍki czemu brzmienie prezentowanego fuzza jest znacznie lepsze niø w†przypadku klasycznych ìobcinaczyî. Urz¹dzenie powinno byÊ za-
silane z†baterii 9†V. Jako gniazda Gn1 i†Gn2 moøna zastosowaÊ typowe w†takich zastosowaniach duøe Jacki stereofoniczne. Ze wzglÍdu na wygodÍ montaøu i†bezpieczeÒstwo eksploatacji ich montaø zalecamy bezpoúrednio na obudowie urz¹dzenia, a†nie na p³ytce drukowanej. Na rys. 2 pokazano schemat montaøowy p³ytki drukowanej. Jest to druk jednostronny, o†niezbyt duøej gÍstoúci upakowania. DziÍki bardzo ma³ej liczbie zastosowanych elementÛw, montaø przystawki jest prosty, a†jego uruchomienie sprowadza siÍ
zazwyczaj wy³¹cznie do pod³¹czenia: zasilania, gitary i†wzmacniacza. Jarek Jaskulski
WYKAZ ELEMENTÓW Rezystory R1: 1MΩ R2, R7: 100kΩ R3: 470kΩ R4: 6,8kΩ R5: 1kΩ...100kΩ (dobrać w zależności od oczekiwanego efektu dźwiękowego) R6: 1kΩ Kondensatory C1, C4, C5: 100nF C2: 10nF C3: 10µF/16V Półprzewodniki T1: BC413C T2, T3: 2N3906 Różne Gn1, Gn2: chinch do druku lub duży Jack stereo (montowany na obudowie)
P³ytka drukowana jest dostÍpna w AVT - oznaczenie AVT-1380.
Rys. 1
44
Rys. 2
Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/?pdf/ sierpien03.htm.
Elektronika Praktyczna 8/2003
„Klocki” P R O RS485 J E K
T
Y
„Klocki” RS485, część 3 W†trzeciej czÍúci artyku³u przedstawiamy dwie karty wyjúÊ cyfrowych, za pomoc¹ ktÛrych w systemie RS485 moøna sterowaÊ prac¹ urz¹dzeÒ zasilanych napiÍciami o†wartoúci nie wiÍkszej niø 50 V. Rekomendacje: te ìklockiî RS485 polecamy szczegÛlnie tym Czytelnikom, ktÛrzy musz¹ przesy³aÊ dane na duøe odleg³oúci z†relatywnie duø¹ prÍdkoúci¹.
Karta wyjúÊ cyfrowych (stan aktywny GND) AVT-533 Karta wyjúÊ cyfrowych (z aktywnym stanem GND) ma osiem wyjúÊ typu otwarty kolektor, z†maksymalnym pr¹dem obci¹øenia 0,5†A. NapiÍcie podane na wyjúcie karty moøe wynosiÊ do 50†V. W†uk³adzie wyjúciowym s¹ zastosowane diody zabezpieczaj¹ce, co umoøliwia bezpoúrednie sterowanie elementami z indukcyjnoúciami, na przyk³ad przekaünikami. Karta pozwala na komunikacjÍ dwustronn¹, dziÍki czemu moøna sprawdziÊ stan wszystkich wyjúÊ.
Budowa
Klocki RS485 to: -
AVT-530 - konwerter RS232<->RS485, AVT-531 - karta przekaników, AVT-532 - karta triaków, AVT-533 - karta wyjæ cyfrowych (aktywne GND), AVT-534 - karta wyjæ cyfrowych (aktywne VCC), AVT-535 - karta wejæ cyfrowych, AVT-536 - 8-wejciowa karta wejæ analogowych, AVT-537 - 4-cyfrowy wywietlacz LED, AVT-538 - 32-znakowy wywietlacz LCD.
46
Schemat elektryczny karty cyfrowych wyjúÊ przedstawiono na rys. 9. Jej g³Ûwnym elementem jest mikrokontroler PIC16F84A, ktÛry odpowiada za odbiÛr†oraz nadawanie danych w†standardzie RS485 oraz - w†zaleønoúci od odebranych danych - odpowiednio steruje uk³adem wykonawczym. Procesor pracuje z†zewnÍtrznym rezonatorem kwarcowym o†czÍstotliwoúci 4†MHz. Do zerowania procesora zastosowano specjalizowany generator sygna³u zeruj¹cego DS1813 (US3). Jako uk³ad wykonawczy zastosowano uk³ad scalony typu ULN2803A (US4). Zawiera on osiem kluczy tranzystorowych wraz z†rezystorami wejúciowymi (schemat pojedynczego stopnia
wyjúciowego uk³adu ULN2803A przedstawiono na rys. 10). ObwÛd wyjúciowy kaødego tranzystora jest zabezpieczony przez wewnÍtrzne diody przed uszkodzeniem, w†przypadku sterowania odbiornikiem indukcyjnym. Diody te zwieraj¹ napiÍcia wyøsze niø napiÍcie panuj¹ce na wyprowadzeniu COM. Uk³ad nadaje siÍ wiÍc do sterowania przekaünikami bez koniecznoúci stosowania zewnÍtrznych diod. Jeúli karta bÍdzie wykorzystana do sterowania przekaünikami, to na wejúcie COM naleøy podaÊ plus napiÍcia zasilaj¹cego te przekaüniki. Maksymalne napiÍcie podane na kolektory tranzystorÛw wyjúciowych uk³adu ULN2803A wynosi 50 V, a†maksymalny pr¹d†przewodzenia pojedynczego tranzystora wynosi 500†mA. Nie naleøy jednak przekraczaÊ maksymalnej mocy ca³ego uk³adu, ktÛra wynosi 1150 mW. Za konwersjÍ poziomÛw sygna³Ûw pojawiaj¹cych siÍ w†linii transmisyjnej na poziomy TTL odpowiada uk³ad MAX485 (US2). Dokonuje on rÛwnieø konwersji z†poziomÛw TTL na poziomy RS485. W†czasie spoczynku uk³ad ten znajduje siÍ w†trybie odbiornika, poniewaø na wejúciach DE i†!RE wystÍpuje poziom niski wymuszony przez wyjúcie procesora. Prze³¹czenie uk³adu MAX485 w†tryb nadawania nastÍpuje tylko na czas wysy³ania danych przez kartÍ wyjúÊ cyfrowych, a†nastÍpnie zostaje przywrÛ-
Elektronika Praktyczna 8/2003
„Klocki” RS485
Rys. 9. Schemat elektryczny karty cyfrowych wyjść (stan aktywny 0V)
cony tryb odbioru, aby nie blokowaÊ linii transmisyjnej. Dodatkowy rezystor R3 s³uøy do dopasowania linii i†powinien byÊ zamontowany tylko w†jednym module, najbardziej oddalonym od nadajnika (konwertera RS232<>RS485). O jego montaøu naleøy jednak zdecydowaÊ po pod³¹czeniu wszystkich modu³Ûw, gdyø w†czasie testÛw okaza³ siÍ zbÍdny. Zworka JP1 s³uøy do zmiany podstawowego adresu, pod ktÛrym bÍdzie zg³asza³a siÍ karta wyjúÊ cyfrowych. Natomiast zworka JP2 umoøliwia powrÛt do podstawowego adresu urz¹dzenia. Rezystory R1 i†R2 spe³niaj¹ rolÍ rezystorÛw podci¹gaj¹cych wejúcia RA3 i†RA4 do plusa zasilania. Opis zmiany podstawowego adresu karty wyjúÊ cyfrowych zostanie przedstawiony w†dalszej czÍúci artyku³u, gdyø dla wszystkich modu³Ûw przebiega w†taki sam sposÛb. Do stabilizacji napiÍcia zasilaj¹cego zastosowano monolityczny stabilizator typu LM7805, natomiast do filtracji napiÍcia zastosowano kon-
Rys. 10. Budowa pojedynczego stopnia wzmacniacza zawartego w układzie ULN2803A
Elektronika Praktyczna 8/2003
densatory C1...C4. Dioda D1 zabezpiecza stabilizator przed uszkodzeniem w†przypadku podania napiÍcia o†odwrotnej polaryzacji.
Montaø Montaø karty wyjúÊ cyfrowych (schemat montaøowy pokazano na rys. 11) naleøy rozpocz¹Ê od wlutowania rezystorÛw (bez rezystora R3*), w†nastÍpnej kolejnoúci montujemy podstawki pod uk³ady scalone i†kondensatory. Na samym koÒcu naleøy wlutowaÊ stabilizator napiÍcia i†z³¹cza. Do z³¹cza CON7 trzeba do³¹czyÊ przewody zasilacza o†napiÍciu oko³o 9†V (100 mA). Z³¹cza CON1...CON4 s¹ wyjúciami karty i†do nich naleøy pod³¹czyÊ uk³ady sterowane przez kartÍ. Do z³¹cza CON5 naleøy do³¹czyÊ masÍ uk³adÛw sterowanych. Na tym z³¹czu znajduje siÍ takøe†wyprowadzenie COM uk³adu ULN2803A i†jeúli uk³ad ma byÊ zastosowany do sterowania obci¹øeniem indukcyjnym, np. przekaünikiem, to do tego wyprowadzenia naleøy pod³¹czyÊ plus napiÍci¹ zasilaj¹cego przekaüniki. Wyeliminuje to koniecznoúÊ stosowania diod zabezpieczaj¹cych uk³ad ULN2803A przed uszkodzeniem w czasie prze³¹czania przekaünika. Do z³¹cza CON6 naleøy pod³¹czyÊ przewody wspÛlnej dla wszystkich modu³Ûw magistrali, zwracaj¹c przy tym uwagÍ na sposÛb pod³¹czenie (A do A, B†do B).
Obs³uga karty wyjúÊ cyfrowych Karta wyjúÊ cyfrowych ma adres odpowiadaj¹cy znakowi ì3î w†kodzie ASCII, dlatego jakiekolwiek dzia³ania jej dotycz¹ce mog¹ byÊ wykonane po podaniu tego adresu. Stan wyjúÊ moøe byÊ zmieniany pojedynczo, niezaleønie dla kaødego wyjúcia lub grupowo po podaniu w†jednym pakiecie danych stanÛw wszystkich wyjúÊ. Moøliwy jest takøe odczyt stanu dowolnego wyjúcia, jak rÛwnieø wszystkich jednoczeúnie.
Rys. 11. Schemat montażowy płytki wyjść cyfrowych
47
„Klocki” RS485 WYKAZ ELEMENTÓW Rezystory R1, R2: 10kΩ R3*: 120Ω według opisu Kondensatory C1: 220µF/25V C2, C4: 100nF C3: 100µF/16V C5, C6: 30pF C7: 47µF/16V C8: 100nF Półprzewodniki D1: 1N4007 US1: PIC16F84A zaprogramowany US2: MAX485 US3: DS1813 US4: ULN 2803A US5: LM7805 Różne CON1...CON7: ARK2(5mm) JP1, JP2: goldpin 1x2 + jumper X1: kwarc 4MHz Podstawka DIP8− 1 szt., DIP18− 2szt.
Kaøda komenda rozpoczyna siÍ od znaku ESC (klawisz Escape na klawiaturze), nastÍpnie naleøy podaÊ adres karty i†rozkaz, jaki ma byÊ wykonany. Zestawienie wszystkich komend umoøliwiaj¹cych sterowaniem kart¹ wyjúÊ cyfrowych oraz przyk³adowe polecenia i†reakcjÍ na nie karty przedstawiono w†tab. 4.
Karta wyjúÊ cyfrowych (stan aktywny VCC) AVT-534 Karta wyjúÊ cyfrowych (stan aktywny VCC) posiada osiem wyjúÊ typu otwarty emiter, co umoøliwia sterownie napiÍciem zasilania VCC. Maksymalny pr¹d wyjúciowy wynosi 0,5 A, a†napiÍcie za³¹czania 50 V. Dodatkowo w†uk³adzie wyjúciowym zastosowane s¹ diody zabezpieczaj¹ce, co umoøliwia bezpoúrednie sterowanie uk³adami indukcyjnymi, na przyk³ad przekaünikami. Karta umoøliwia komunikacjÍ dwustronn¹, dziÍki czemu moøna sprawdziÊ stan wszystkich wyjúÊ.
Tab. 4. Zestawienie wszystkich komend umożliwiających sterowanie kartą wyjść cyfrowych (aktywne GND) Rodzaj komendy
Wydana komenda
Reakcja karty wyjϾ cyfrowych
Podanie masy na jedno wyjcie
ESC 3 w n 1 enter n-numer wyjcia (1...8)
Podanie masy na wyjcie o numerze n n=1...8 (odpowiednio 1=wyjcie 1, 2=wyjcie 2 itd.)
Przyk³ad: ESC 3 w 3 1 enter Ustawienie stanu ESC 3 w n 0 enter wysokiej impedancji n-numer wyjcia (1...8) Przyk³ad: ESC 3 w 4 0 enter Ustawienie stanów ESC 3 w a s1s2s3s4s5s6s7s8 wszystkich wyjæ enter jednoczenie s1...s8 mog¹ byæ równe 0 lub 1 (ASCII)
Przyk³ad: ESC 3 w a 11110000 enter Odczyt stanu jednego wyjcia
Odczyt stanów wszystkich wyjæ
ESC 3 r n enter n-numer wyjcia (1...8)
Przyk³ad: ESC 3 r 5 enter ESC 3 r a enter
Przyk³ad: ESC 3 r a enter
pracuje z†zewnÍtrznym rezonatorem o†czÍstotliwoúci 4†MHz, a†do jego zerowania zastosowano specjalizowany uk³ad DS1813 (US3). Jako uk³ad wykonawczy zastosowano uk³ad typu UDN2981A (US4), uk³ad ten zawiera osiem
Podanie masy na wyjcie numer 3 Ustawienie stanu wysokiej impedancji na wyjciu o numerze n; n=1...8 (odpowiednio 1=wyjcie 1, 2=wyjcie 2 itd.) Ustawia stan wysokiej impedancji na wyjciu o numerze 4 Ustawia stany dla wszystkich wyjæ jednoczenie. Parametry s1...s8 odpowiadaj¹ stanom odpowiednich wyjæ (s1 odpowiada stanowi wyjcia 1, s2 stanowi wyjcia 2 itd.). Parametr s równy 1 (ASCII) powoduje podanie stanu masy, a równy 0 (ASCII) ustawienie wysokiej impedancji Podaje stan masy na wyjciach o numerach 1...4 i ustawia stany wysokiej impedancji na wyjciach o numerach 4...8. Zwraca informacjê o stanie wskazanego w parametrze n wyjcia. Jeli wyjcie jest w stanie GND, to zwraca 1 (ASCII), jeli w stanie wysokiej impedancji, to 0 (ASCII) Odczytuje stan wyjcia o numerze 5 Zwraca informacjê o stanie wszystkich wyjæ, do modu³u steruj¹cego wysy³ane jest 8 znaków. Jeli wyjcie jest w stanie GND, to zwraca 1 (ASCII), jeli w stanie wysokiej impedancji, to 0 (ASCII). Odczytuje stany wszystkich wyjæ
stopni wzmacniaj¹cych, ktÛre umoøliwiaj¹ za³¹czanie dodatniego napiÍcia o†maksymalnej wartoúci 50 V. Niezaleønie od wartoúci napiÍcia zasilania tranzystorÛw wyjúciowych, na wejúcie stopnia wzmacniaj¹cego moøna poda-
Budowa Schemat elektryczny karty cyfrowych wyjúÊ przedstawiono na rys. 12. Jej g³Ûwnym elementem jest mikroprocesor PIC16F84A, ktÛry odpowiada za odbiÛr†oraz nadawanie danych oraz steruje uk³adem wykonawczym. Procesor
48
Elektronika Praktyczna 8/2003
„Klocki” RS485
Rys. 12. Schemat elektryczny karty wyjść cyfrowych (stan aktywny plus zasilania)
waÊ napiÍcie z†zakresu 0...5 V. Wyjúcie kaødego stopnia jest zabezpieczone przed uszkodzeniem przez wewnÍtrzne diody w†przypadku sterowania odbiornikiem o†duøej indukcyjnoúci. Diody te zwieraj¹ napiÍcia niøsze niø napiÍcie masy (GND), doskonale nadaj¹ siÍ wiÍc†do sterowania przekaünikami bez koniecznoúci stosowania dodatkowych zewnÍtrznych diod. Maksymalne napiÍcie zasilania tranzystorÛw wyjúciowych uk³adu ULN2981A wyWYKAZ ELEMENTÓW Rezystory R1, R2: 10kΩ R3*: 120Ω według opisu Kondensatory C1: 220µF/25V C2, C4: 100nF C3: 100µF/16V C5, C6: 30pF C7: 47µF/16V C8: 100nF Półprzewodniki D1: 1N4007 US1: PIC16F84A zaprogramowany US2: MAX485 US3: DS1813 US4: UDN 2981A US5: LM7805 Różne CON1...CON7: ARK2(5mm) JP1, JP2: goldpin 1x2 + jumper X1: kwarc 4MHz Podstawka DIP8 1 szt., DIP18 2szt.
Elektronika Praktyczna 8/2003
nosi 50 V, a†maksymalny pr¹d†przewodzenia przez pojedynczy tranzystor wynosi 500 mA. Nie naleøy jednak przekraczaÊ maksymalnej mocy ca³ego uk³adu, ktÛra wynosi 1150 mW. Za konwersjÍ sygna³Ûw pojawiaj¹cych siÍ w†linii transmisyjnej na standard TTL odpowiada uk³ad MAX485 (US2), dokonuje on rÛwnieø konwersji z†poziomÛw†TTL na poziomy RS485. W†czasie spoczynku uk³ad ten znajduje siÍ w†trybie odbiornika, poniewaø na wejúciach DE i†!RE panuje stan niski wymuszony przez wyjúcie procesora. Prze³¹czenie w†tryb nadawania uk³adu MAX485 nastÍpuje tylko na czas wysy³ania danych przez kartÍ wyjúÊ cyfrowych, a†nastÍpnie zostaje przywrÛcony tryb odbioru, aby nie blokowaÊ linii transmisyjnej. Dodatkowy rezystor R3 s³uøy do dopasowania linii i†powinien byÊ zamontowany tylko w†jednym module, najbardziej oddalonym od nadajnika (konwertera RS232<>RS485). O†jego montaøu naleøy jednak zdecydowaÊ po pod³¹czeniu wszystkich modu³Ûw, gdyø w†czasie testÛw okaza³ siÍ zbÍdny. Zworka JP1 s³uøy do zmiany podstawowego adresu, pod ktÛrym bÍdzie zg³asza³a siÍ karta wyjúÊ cyfrowych. Natomiast zworka JP2 umoøliwia powrÛt do podstawowego adresu urz¹dzenia. Rezystory R1 i†R2 s³uø¹ jako rezystory podci¹gaj¹ce wejúcia RA3 i†RA4 do
plusa zasilania. Opis zmiany podstawowego adresu karty wyjúÊ cyfrowych zostanie przedstawiony w†dalszej czÍúci artyku³u, gdyø dla wszystkich modu³Ûw przebiega w†taki sam sposÛb. Do stabilizacji napiÍcia zasilaj¹cego zastosowano monolityczny stabilizator typu LM7805, natomiast do filtracji napiÍcia zastosowano kondensatory C1...C4. Dodatkowa dioda D1 zabezpiecza stabilizator przed uszkodzeniem w†przypadku podania napiÍcia o†odwrotnej polaryzacji.
Rys. 13. Schemat montażowy karty wyjść cyfrowych
49
„Klocki” RS485
Montaø Montaø elementÛw karty cyfrowych wyjúÊ (rys. 13) naleøy rozpocz¹Ê od wlutowania rezystorÛw (bez rezystora R3). W†nastÍpnej kolejnoúci lutujemy podstawki pod uk³ady scalone i†kondensatory. Na samym koÒcu naleøy wlutowaÊ stabilizator napiÍcia i†z³¹cza. Do z³¹cza CON7 naleøy do³¹czyÊ przewody zasilacza o†napiÍciu oko³o 9†V (100 mA). Z³¹cza CON1...CON4 s¹ wyjúciami karty wyjúÊ cyfrowych i†do nich naleøy pod³¹czyÊ uk³ady sterowane przez kartÍ. Do z³¹cza CON5 naleøy doprowadziÊ masÍ uk³adÛw sterowanych i†plus zasilania uk³adu UDN2981A. W†przypadku uaktywnienia danego wyjúcia, na wyjúciu tym bÍdzie panowa³o napiÍcie o†wartoúci podanej na wejúcie VCC uk³adu UDN2981A. LiniÍ magistrali RS485 naleøy pod³¹czyÊ do z³¹cza CON6, zwracaj¹c przy tym uwagÍ na sposÛb pod³¹czenia (A do A, B†do B).
Tab. 5. Zestawienie wszystkich komend umożliwiających sterowanie kartą wyjść cyfrowych (aktywne VCC) Rodzaj komendy
Wydana komenda
Reakcja karty wyjϾ cyfrowych
Podanie plusa na jedno wyjcie (VCC)
ESC 4 w n 1 enter n-numer wyjcia(1...8)
Podanie plusa zasilania na wyjcie o numerze n n=1...8 (odpowiednio 1=wyjcie 1, 2=wyjcie 2, itd.)
Przyk³ad: ESC 4 w 3 1 enter Podanie stanu ESC 4 w n 0 enter wysokiej impedancji n-numer wyjcia (1...8) na jedno z wyjæ Przyk³ad: ESC 4 w 4 0 enter Ustawienie stanów ESC 4 w a s1s2s3s4s5s6s7s8 wszystkich wyjæ enter jednoczenie s1...s8 mog¹ byæ równe 0 lub 1 (ASCII)
Przyk³ad: ESC 4 w a 11110000 enter Odczyt stanu jednego wyjcia
Obs³uga karty wyjúÊ cyfrowych Karta wyjúÊ cyfrowych posiada adres rÛwny znakowi ì4î (ASCII), dlatego jakiekolwiek dzia³ania jej dotycz¹ce mog¹ byÊ wykonane po podaniu tego adresu. Stan wyjúÊ moøe byÊ zmieniany pojedynczo, niezaleønie dla kaødego wyjúcia lub grupowo przez podanie w†jednym pakiecie danych stanÛw wszystkich wyjúÊ. Dodatkowo moøliwy jest takøe odczyt stanu dowolnego wyjúcia, jak rÛwnieø wszystkich jednoczeúnie. Kaøda komenda rozpoczyna siÍ od znaku ìESCî (klawisz Escape na klawiaturze), nastÍpnie naleøy podaÊ adres karty i†rozkaz,
50
Odczyt stanów wszystkich wyjæ
ESC 4 r n enter n-numer wyjcia (1...8)
Przyk³ad: ESC 4 r 5 enter ESC 4 r a enter
Przyk³ad: ESC 4 r a enter
jaki ma byÊ wykonany. Zestaw wszystkich komend umoøliwiaj¹cych sterowaniem kart¹ wyjúÊ cyfrowych oraz przyk³adowe polecenia i†reakcja karty na nie jest przedstawiony w†tab. 5. Krzysztof P³awsiuk, AVT
[email protected]
Podanie plusa zasilania na wyjcie numer 3 Podanie stanu wysokiej impedancji na wyjcie o numerze n; n=1...8 (odpowiednio 1=wyjcie 1, 2=wyjcie 2, itd.) Podaje stan wysokiej impedancji na wyjcie o numerze 4 Ustawia stany dla wszystkich wyjæ jednoczenie. Parametry s1...s8 odpowiadaj¹ stanom odpowiednich wyjæ (s1 odpowiada stanowi wyjcia 1, s2 stanowi wyjcia 2 itd.). Parametr s równy 1 (ASCII) powoduje podanie stanu wysokiego (VCC), a równy 0 (ASCII) stanu wysokiej impedancji. Podaje stan plusa na wyjciach o numerach 1...4 i stanów wysokiej impedancji na wyjciach o numerach 4...8. Zwraca informacjê o stanie wskazanego w parametrze n wyjcia. Jeli wyjcie jest w stanie wysokim (VCC), to zwraca 1 (ASCII), jeli w stanie wysokiej impedancji, to 0 (ASCII) Odczytuje stan wyjcia o numerze 5 Zwraca informacjê o stanie wszystkich wyjæ, do modu³u steruj¹cego wysy³ane jest 8 znaków. Jeli wyjcie jest w stanie wysokim (VCC), to zwraca 1 (ASCII), jeli w stanie wysokiej impedancji, to 0 (ASCII). Odczytuje stany wszystkich wyjæ
Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/sierpien03.htm oraz na p³ycie CD-EP8/2003B w katalogu PCB.
Elektronika Praktyczna 8/2003
Wzmacniacz semi−surround P R doOkomputera J E K T PC Y
Wzmacniacz semi−surround do komputera PC, część 2 AVT−516
Wszyscy lubimy uszlachetniaÊ nasze komputery, zw³aszcza øe spÍdzamy przy nich bardzo duøo czasu. Powodzenie wczeúniejszych wersji wzmacniaczy do PC zachÍci³o nas do opracowania unowoczeúnionej, znacznie bardziej efektownej wersji takiego urz¹dzenia, o†moøliwoúciach adekwatnych do wspÛ³czesnych wymagaÒ uøytkownikÛw. Rekomendacje: projekt polecamy wszystkim uøytkownikom PC, a†zw³aszcza tym, ktÛrzy dbaj¹ o†jego multimedialne walory uøytkowe. Prezentowany wzmacniacz moøe byÊ takøe doskona³ym elementem nowoczesnej stylizacji komputera z†uøyciem lamp fluorescencyjnych i†podúwietlanych wentylatorÛw.
Elektronika Praktyczna 8/2003
Dzia³anie i†obs³uga wzmacniacza Po w³¹czeniu zasilania najpierw s¹ inicjowane porty mikrokontrolera PIC16F76 i†zaleønie od ustawienia zworki ZW inicjowany jest wyúwietlacz VFD lub LCD. NastÍpnie sprawdzane jest czy jest to pierwsze uruchomienie uk³adu (lub uruchomienie po wymianie pamiÍci EEPROM). Jeøeli tak jest, to pierwsze 20 komÛrek pamiÍci EEPROM (uk³ad U7) jest zerowanych, i†pod adresy 7†i†8 wpisywana jest wartoúÊ 40. Jest to wartoúÊ pocz¹tkowa temperatur uøywana przez funkcje temp1 i†temp2. Jeøeli jest to kolejne uruchomienie wzmacniacza to procedura inicjalizacji EEPROM jest pomijana. Kolejnym krokiem jest przes³anie do procesorÛw U1 i†U2 ustawieÒ zapisanych w†pamiÍci EEPROM: wartoúÊ g³oúnoúci, regulacje basÛw, tonÛw wysokich i†obu uk³adÛw düwiÍku przestrzennego surround1 i†surround2 tak øeby wszystkie te ustawienia mia³y tak¹ wartoúÊ jak przed wy³¹czeniem wzmacniacza. Z†pamiÍci EEPROM odczytywana jest informacja o†trybie pracy wzmac-
niacza: CD-ROM lub Quadro i†odpowiednio ustawiany jest stan linii portu RC0, ktÛra steruje prze³¹cznikiem wejúÊ torÛw 1†i†2†wzmacniacza. ProcedurÍ inicjalizacji wzmacniacza koÒczy zaprogramowanie dwu uk³adÛw termostatÛw wartoúci¹ odczytan¹ z†komÛrek 7†i†8†EEPROM, po czym wyúwietlany jest przez 2†sekundy napis AVT PC AMPLIFIER. Po rozpoczÍciu dzia³ania pÍtli g³Ûwnej programu steruj¹cego wyúwietlana jest wartoúÊ g³oúnoúci np. Volume -10dB Fu i†program oczekuje na obrÛt lub przyciúniÍcie osi impulsatora. ObrÛt osi w†prawo powoduje zwiÍkszenie g³oúnoúci (czyli zmniejszenie t³umienia wyraøonego w†dB), a†obrÛt w†lewo zmniejszenie g³oúnoúci. Po osi¹gniÍciu wartoúci 0dB dalsze obracanie osi¹ w†prawo nie wywo³uje øadnego dzia³ania i†analogicznie - po osi¹gniÍciu -84dB obracanie w†lewo nie powoduje zmiany g³oúnoúci. Trzeba pamiÍtaÊ, øe na wyúwietlaczu pokazywana jest wartoúÊ t³umienia torÛw 1†i†2. Jeøeli za pomoc¹ funkcji vol 1,2 i†vol 3,4 zostan¹ ustawione rÛøne poziomy t³umienia w†kana-
51
Wzmacniacz semi−surround do komputera PC
Rys. 5. Schemat elektryczny modułu pomiaru temperatury
³ach 1,2 i†3,4, to w†kana³ach 3†i†4†t³umienie bÍdzie siÍ zmienia³o wspÛ³bieønie z†t³umieniem w†kana³ach 1†i†2. RÛwnieø tutaj po osi¹gniÍciu wartoúci skrajnych dalsze obracanie osi¹ nie zmieni regulowanych wartoúci. Takie rozwi¹zanie umoøliwia ustawienie rÛønej g³oúnoúci pomiÍdzy par¹ g³oúnikÛw przednich i†tylnych, czyli coú w†rodzaju balansu. Uk³ad BH3857 nie ma moøliwoúci ustawiania rÛønej g³oúnoúci (t³umienia) w†kaødym ze swoich kana³Ûw, dlatego nie przewidziano moøliwoúci regulacji balansu lewa - prawa strona. Po obrÛceniu osi impulsatora nowe wartoúci t³umienia s¹ wpisywana do uk³adÛw U1 i†U2 i†zapisywane do pamiÍci EEPROM. Na wyúwietlaczu jest wyúwietlana nowa wartoúÊ t³umienia dla kana³Ûw 1†i†2. PrzyciúniÍcie osi impulsatora umoøliwia wejúcie do menu funkcji sterownika wzmacniacza i†wybranie jednej z†9†funkcji: - regulacja g³oúnoúci w†kana³ach 1†i†2 - funkcja Vol 1,2, - regulacja g³oúnoúci w†kana³ach 3†i†4†- funkcja Vol 3,4, - regulacja tonÛw niskich ca³ego wzmacniacza - funkcja Bass, - regulacja tonÛw wysokich ca³ego wzmacniacza - funkcja Treble,
52
- w³¹czenie (lub wy³¹czenie) uk³adu düwiÍku przestrzennego surround 1†- funkcja Surr.1, - w³¹czenie (lub wy³¹czenie) uk³adu düwiÍku przestrzennego surround 2†- funkcja Surr.2, - ustawienie trybu pracy CDROM/quadro - funkcja Ch 2/4, - ustawienie temperatury 1†- funkcja Temp1, - ustawienie temperatury 2†- funkcja Temp2, - odczytanie temperatury 1†- funkcja Termometr. Po wejúciu do menu funkcyjnego wyúwietlana jest ostatnio wybrana funkcja np. Ch 2/4. KrÍcenie osi¹ impulsatora powoduje sekwencyjne wyúwietlanie kolejnych funkcji. Po przyciúniÍciu osi rozpoczyna siÍ wykonywanie funkcji, ktÛrej nazwa jest w³aúnie wyúwietlana. Funkcja Vol 1,2 reguluje g³oúnoúÊ w†kana³ach 1i 2†(g³oúniki przednie). Po jej wybraniu na ekranie pojawia siÍ np. Vol 1,2 -36dB. KrÍc¹c osi¹ impulsatora ustawia siÍ wartoúÊ t³umienia dok³adnie tak samo jak przy regulacji g³oúnoúci w†pÍtli g³Ûwnej programu. Zmieniana wartoúÊ jest wyúwietlana, przesy³ana go uk³adu U1 i†zapamiÍtywana w†pamiÍci EEPROM. PrzyciúniÍcie osi koÒczy funkcjÍ i†program przechodzi do pÍtli g³Ûwnej.
Funkcja Vol 3,4 dzia³a podobnie jak funkcja Vol 1,2. W†trakcie jej wykonywania ustawiane wartoúci t³umienia s¹ wpisywane do uk³adu U2 i†reguluj¹ g³oúnoúÊ w†kana³ach 3i 4†(g³oúniki tylne). Jeøeli w†g³oúnikach przednich zostanie ustawiona wiÍksza g³oúnoúÊ niø w†tylnych, to w†czasie regulacji g³oúnoúci w†pÍtli g³Ûwnej ta rÛønica zostanie zachowana. Regulacja barwy tonÛw obejmuje jednoczeúnie wszystkie kana³y. Oznacza to, øe na przyk³ad ustawienie tonÛw niskich powoduje wpisanie regulowanej wartoúci do obu procesorÛw jednoczeúnie. Tony niskie ustawiane s¹ po wywo³aniu funkcji Bass - na wyúwietlaczu pojawia siÍ np.: Bass +02dB. Tony niskie reguluje siÍ przez krÍcenie osi¹ impulsatora od -15dB do +15dB. ObrÛt w†lewo powoduje zwiÍkszenie t³umienia, a†obrÛt w†prawo podbijanie niskich czÍstotliwoúci. Nowa wartoúÊ po obrÛceniu osi jest wyúwietlana na wyúwietlaczu, wpisywana do uk³adÛw U1 i†U2, nastÍpnie zapisywana do pamiÍci EEPROM. Wyjúcie z†menu ustawiania jest moøliwe po przyciúniÍciu osi impulsatora. Regulacja tonÛw wysokich dzia³a podobnie. Po wywo³aniu funkcji Treble na wyúwietlaczu pojawia siÍ np. Treble +04dB. Przez obracanie osi¹ impulsatora regulowaÊ poziom (t³umienie lub podbijanie) wyøszych czÍstotliwoúci. Ustawiona wartoúÊ jest wpisywana do obu procesorÛw i†zapisywana w†pamiÍci EEPROM. PrzyciúniÍcie osi impulsatora koÒczy dzia³anie tej funkcji. NastÍpne dwie funkcje Surr1 i†Surr2 umoøliwiaj¹ w³¹czenie lub wy³¹czenie uk³adÛw düwiÍku dookÛlnego surround. Jak to juø zosta³o powiedziane procesor BH3857 ma wbudowane dwa niezaleøne uk³ady surround. Po wywo³aniu funkcji Surr1 moøna w³¹czyÊ lub wy³¹czyÊ pierwszy z†tych uk³adÛw: SURR1 ON. Przez krÍ-
Rys. 6. Rozmieszczenie elementów na płytce do pomiaru temperatury
Elektronika Praktyczna 8/2003
Wzmacniacz semi−surround do komputera PC
Rys. 7. Podłączenie czujników temperatury do wzmacniacza
cenie osi¹ impulsatora moøna ustawiÊ w³¹czenie ON lub wy³¹czenie OFF uk³adu. Kaøda z†nastaw jest wpisywana na bieø¹co do obu procesorÛw i†zapamiÍtywana w†pamiÍci EEPROM. PrzyciúniÍcie osi impulsatora koÒczy dzia³anie funkcji. W³¹czenie lub wy³¹czenie drugiego uk³adu surround realizowane jest tak samo za pomoc¹ funkcji Surr2. Wzmacniacz moøe pracowaÊ w†dwu trybach: tryb z†czterema kana³ami umownie nazwany trybem Quadro i†tryb z†dwoma kana³ami umownie nazwany trybem CD-ROM. W†trybie Quadro sygna³ z†wejúÊ IN1...IN4 jest poddawany regulacjom przez uk³ady procesorÛw U1 i†U2 i†podawany na wejúcia wzmacniacza mocy U3. W†trybie CD-ROM na wejúcia procesora U1 podawany jest stereofoniczny sygna³ z†toru cyfrowego (uk³ady U5 i†U4), a†wejúcia IN1 i†IN2 s¹ od³¹czone przez styki przekaünika Prz1. Po prze³¹czeniu w†tryb CDROM sygna³ z†wejúÊ IN3 i†IN4 jest automatycznie wyciszany (mute) przez uk³ad procesora U2. WybÛr trybu pracy jest dokonywany za pomoc¹ funkcji Ch2/ 4. Po jej wywo³aniu na ekranie wyúwietlany jest napis MODE CDROM Przez krÍcenie osi¹ impulsatora sekwencyjnie jest zmieniany tryb pracy. Odpowiednie ustawienia s¹ zapisywane do pamiÍci EEPROM i†w†przypadku Quadro wysterowywany jest przekaünik Prz1. Do sygnalizacji w³¹czonego trybu wykorzystywana jest trÛjkolorowa dioda LED D2. Dla trybu CD-ROM úwieci na niebiesko, a†dla trybu Quadro na zielono. Funkcje Temp1 i†Temp2 umoøliwiaj¹ ustawienie temperatur dwÛch czujnikÛw TCN75 pracuj¹cych w†trybie termostatu. Pierwszy z†czujnikÛw mierzy temperaturÍ we wnÍtrzu obudowy kom-
Elektronika Praktyczna 8/2003
putera lub temperaturÍ procesora. Funkcja Temp1 ustawia temperaturÍ Tset w†zakresie 10...99oC†uk³adu o†adresie A0...A2 = 000. Temperatura histerezy Thyst ma wartoúÊ o†5oC†niøsz¹ niø ustawiana temperatura Tset. Po osi¹gniÍciu temperatury Tset wyprowadzenie INT/CMPTR pod³¹czone do ALM i†dalej do linii RC2 sterownika U6 przechodzi w†stan niski. Po wymuszeniu stanu niskiego na RC2 jest sygnalizowane przekroczenie temperatury. Na wyúwietlaczu pojawia siÍ migaj¹cy napis: t1 out of range. Po przyciúniÍciu osi impulsatora napis znika i†wzmacniacz pracuje dalej normalnie. Ponowne uaktywnienie sygnalizacji przekroczenia temperatury jest moøliwe po wy³¹czeniu i†w³¹czeniu wzmacniacza, lub po wejúciu w†menu funkcyjne. Spadek temperatury poniøej wartoúci ustawionej funkcj¹ Temp1 -5oC†powoduje zmianÍ stanu wyjúcia ALM (RC2) w†stan wysoki. Konstrukcja mechaniczna wzmacniacza - ograniczone gabaryty i†miejsce jego zamontowania w†obudowie komputera - wymusi³y zastosowanie niezbyt duøego radiatora uk³adu wzmacniacza mocy U3. Praktycznie przy takich warunkach ch³odzenia nie jest moøliwe wykorzystanie wiÍkszej mocy wzmacniacza. Øeby moøna by³o ìmocniejî sobie pograÊ i†nie spowodowaÊ wy³¹czenia U3 z†powodu przegrzania, trzeba zastosowaÊ ch³odzenie wymuszone. Wentylator ch³odz¹cy moøe byÊ w³¹czony ca³y czas, lub w³¹czany w†momencie, kiedy radiator osi¹gnie zadan¹ temperaturÍ ustawian¹ funkcj¹ Temp2. Czujnik TCN75 programowany funkcj¹ Temp2 musi mieÊ adres A0...A2=100b. Po osi¹gniÍciu zaprogramowanej temperatury wyprowadzenie INT/CMPTR przechodzi w†stan wysoki i†moøe wprowadziÊ
w†stan nasycenia tranzystor w³¹czaj¹cy wentylator. Ostatni¹ funkcj¹ spe³nian¹ przez prezentowane urz¹dzenie jest termometr. Na wyúwietlaczu jest wyúwietlana temperatura mierzona przez uk³ad wykorzystywany przez funkcjÍ temp1. Wyjúcie z†funkcji ustawiania jest moøliwe przez naciúniÍcie (i przytrzymanie) osi impulsatora. Uk³ady pomiaru temperatury pod³¹czane s¹ do rzÍdu goldpinÛw opisanych na p³ytce: D_GND (masa cyfrowa), +5VD, ALM, SDA i†SCL. Schemat elektryczny uniwersalnego uk³adu pomiaru temperatury (dla funkcji Temp1 i†Temp2) pokazano na rys. 5, a†jego p³ytka drukowana na rys. 6. Dla temperatury Temp1 na p³ytce montowany jest uk³ad TCN75, zwora SEL jest zwarta (A0=0), a†zwora SEL1 jest zwiera wyprowadzenie INT/CMPTR z†ALM. W†drugim uk³adzie pomiaru temperatury radiatora trzeba zmontowaÊ wszystkie elementy. Zwora SEL powinna byÊ rozwarta (A0=1). Zwora SEL1 zwiera C†z†rezystorem R1. Po osi¹gniÍciu temperatury ustawionej funkcj¹ Temp2 INT/CMPTR przechodzi w†stan wysoki powoduj¹c nasycenie tranzystora T1 i†za³¹czenie wentylatora. Øeby umoøliwiÊ ³atwy kontakt termiczny obudowy uk³adu TCN75 z†procesorem lub radiatorem moøna elementy R1, R2 i†T2 przylutowaÊ od drugiej strony p³ytki. Zaleønie od potrzeb moøna pod³¹czyÊ tylko jeden z†czujnikÛw lub obydwa na raz. Moøna teø nie wykorzystywaÊ øadnego. Jeøeli wykorzystywane s¹ oba na raz, to jeden z†nich jest pod³¹czony do uk³adu wzmacniacza. Po³¹czenie drugiego jest moøliwe przez zrÛwnoleglone wyprowadzenia D_GND, +5VD SDA i†SCL jak to pokazano na rys. 7.
Montaø i†uruchomienie wzmacniacza Wzmacniacz sk³ada siÍ z†4†p³ytek drukowanych. Na p³ytce g³Ûwnej (schemat montaøowy pokazano na rys. 8) s¹ umieszczone wszystkie zasadnicze elementy wzmacniacza: procesory audio, wzmacniacz mocy, tor przetwornika C/A (uk³ady U4 i†U5), sterownik z†pamiÍci¹ EEPROM oraz uk³ady zasilania i†prze³¹cznika wejúÊ IN1, IN2. Na p³ytce czo³owej (rys. 9) umieszczo-
53
Wzmacniacz semi−surround do komputera PC
Rys. 8. Schemat montażowy głównej płytki wzmacniacza
no wyúwietlacz VFD lub LCD, impulsator i†trÛjkolorow¹ diodÍ LED. Na dwÛch bocznych p³ytkach nie s¹ montowane øadne elementy, s³uø¹ one jako elementy konstrukcji mechanicznej wzmacniacza. Montaø najlepiej jest rozpocz¹Ê od zmontowania p³ytki g³Ûwnej bez wzmacniacza mocy. Niestety dla chc¹cych j¹ zmontowaÊ samodzielnie w†ca³oúci nie mam dobrych wiadomoúci. Uk³ady BH3857AFV umieszczone s¹ w†obudowach do montaøu powierzchniowego, w†ktÛrych odstÍp pomiÍdzy nÛøkami wynosi zaledwie 0,5 mm. Przylutowanie dwÛch uk³adÛw 40-nÛøkowych jest zadaniem doúÊ trudnym, ale moøliwym do wykonania. Kolejnym uk³adem przystosowanym do montaøu powierzchnio- Rys. 9. Schemat
54
wego jest przetwornik C/A PCM1710U. Przylutowanie tego elementu nie powinno jednak sprawiaÊ wiÍkszych problemÛw. Po zmontowaniu p³ytki g³Ûwnej montujemy elementy na p³ycie czo³owej. Jest ona przystosowana do pod³¹czenia jednego z†dwÛch rodzajÛw wyúwietlaczy: VFD typu CU165ECPB lub LCD o†organizacji 1x16 znakÛw. Kolejnym krokiem bÍdzie po³¹czenie wszystkich czterech p³ytek wzmacniacza w†jedn¹ mechaniczn¹ ca³oúÊ tak, øeby powsta³ modu³,
ktÛry moøna umieúciÊ w†obudowie komputera w†miejsce przewidziane dla dodatkowego dysku lub odtwarzacza CD (fot. 10). W†pierwszej kolejnoúci trzeba po³¹czyÊ p³ytkÍ g³Ûwn¹ z†czo³ow¹ za pomoc¹ rzÍdu k¹towych goldpinÛw. RzÍdy punktÛw lutowniczych umieszczone s¹ na krawÍdziach obu p³ytek tak, øe po wlutowaniu goldpinÛw obie p³ytki przylegaj¹ do siebie i†s¹ po³¹czone pod k¹tem prostym. Jest to po³¹czenie mechaniczne pomiÍdzy p³ytkami i†elektryczne pomiÍdzy sterownikiem umieszczonym na p³ytce g³Ûwnej a†wyúwietlaczem i†impulsatorem i†diod¹ LED umieszczonymi na p³ytce czo³owej. NastÍpnym etapem bÍdzie przylutowanie p³ytek bocznych prawej i†lewej (patrz opisy na p³ytkach) z†p³ytk¹ g³Ûwn¹. Tutaj rÛwnieø do mechanicznego po³¹czenia pomiÍdzy p³ytkami wykorzystane zosta³y k¹towe goldpiny. W†p³ytkach w†odpowiednich miejscach umieszczono punkty lutownicze tak, øe montaø polega tylko na wlutowaniu elementÛw ³¹cz¹cych. Na koÒcu wlutowujemy goldpiny ³¹cz¹ce p³ytki boczne z†p³ytk¹ czo³ow¹. W†taki sposÛb ca³y wzmacniacz zostanie precyzyjnie i†mocno ìzszytyî w†ca³oúÊ. Uruchomienie rozpoczynamy od pod³¹czenia napiÍcia prze-
montażowy czołowej płytki wzmacniacza
Elektronika Praktyczna 8/2003
Wzmacniacz semi−surround do komputera PC
Fot. 10. Widok zmontowanego wzmacniacza od góry
miennego o†wartoúci ok. 10 V†do zaciskÛw 10 VAC i†sprawdzenia poprawnoúci napiÍÊ zasilaj¹cych +8 V, +5 VD i†+5 VA. Jeøeli zosta³ zastosowany wyúwietlacz VFD lub LCD z†podúwietlaniem, to trzeba pamiÍtaÊ, øe pobiera on pr¹d w†obwodzie +5 VD moøe przekraczaÊ 300 mA i†zbyt duøa wartoúÊ napiÍcia przemiennego spowoduje wydzielanie siÍ duøej mocy na stabilizatorach U8 i†U10. Jeøeli napiÍcia s¹ prawid³owe, to trzeba do podstawki w³oøyÊ zaprogramowany mikrokontroler PIC16F76 i†odpowiednio ustawiÊ zworÍ ZW (LED ZW zwarta, VFD ZW rozwarta). Na ekranie wyúwietlacza po w³¹czeniu zasilania powinien siÍ pojawiÊ na 2†sekundy napis AVT PC AMPLIFIER i†program przechodzi do pÍtli g³Ûwnej. Uruchomienie toru audio moøna wykonaÊ dwoma sposobami: z†pomoc¹ generatora akustycznego i†oscyloskopu oraz ìna s³uchî. Ja zdecydowanie polecam te pierwsza metodÍ poniewaø ³atwo moøna wykryÊ ewentualne zniekszta³cenia sygna³u, czy wzbudzenie siÍ na wysokich czÍstotliwoúciach. Po podaniu sygna³u z†generatora (amplituda 100...200
Elektronika Praktyczna 8/2003
mV, czÍstotliwoúÊ 1†kHz) na kolejne wejúcia IN1...IN4 sprawdzamy regulacjÍ g³oúnoúci we wszystkich czterech kana³ach. Sonda oscyloskopu pod³¹czana jest kolejno na wejúcia IN1...IN4 wzmacniacza mocy (jeszcze na tym etapie nie wlutowanego). NastÍpnie trzeba zmieniÊ czÍstotliwoúÊ na ok. 100 Hz i†po wybraniu funkcji Bass sprawdziÊ regulacjÍ tonÛw niskich. Podobnie przy czÍstotliwoúci 10 kHz za pomoc¹ funkcji Treble jest sprawdzana regulacja tonÛw wysokich. Jeøeli wszystko jest w†porz¹dku wlutowujemy wzmacniacz mocy i†przykrÍcamy go do radiatora. Radiator musi byÊ wczeúniej przymocowany do p³ytki przez 2†wkrÍty M3 wkrÍcone w†nagwintowane otwory w†korpusie radiatora. W†modelowym wzmacniaczu zosta³ uøyty dostÍpny w†Elfie radiator KS111 o†wysokoúci 37,3 mm. Oczywiúcie moøna tutaj uøyÊ dowolnego radiatora o†zbliøonych wymiarach. Po zamontowaniu wzmacniacza mocy trzeba do wszystkich czterech wejúÊ do³¹czyÊ g³oúniki, a†do zaciskÛw AC12V do³¹czyÊ napiÍcie przemienne o†wartoúci ok. 12 V. Jeøeli
do wyjúcia nie jest pod³¹czony g³oúnik to funkcjÍ obci¹øenia moøe spe³niaÊ rezystor o†rezystancji 8...12 Ω i†mocy 10 W. Waøne jest, aby podczas prÛb, a†potem eksploatacji, wszystkie wyjúcia by³y obci¹øone. W†trybie Quadro do wszystkich wejúÊ podajemy teraz sygna³ akustyczny. DüwiÍk powinien byÊ bez zniekszta³ceÒ i†zak³ÛceÒ. Po pod³¹czeniu z†napÍdu CD-ROM sygna³u cyfrowego (z wyjúcia Digital Audio Output Connector) do wejúcia D_IN sprawdzamy poprawnoúÊ dzia³ania toru cyfrowego. Odtwarzanie w†tym torze jest moøliwe po przejúciu w†tryb CD-ROM - funkcja Ch 2/ 4. Stereofoniczny düwiÍk z†p³yty CD jest odtwarzany w†kana³ach 1†i†2. Kana³y 3†i†4†s¹ automatycznie wyciszane. W³¹czenie uk³adÛw Surround koÒczy sprawdzanie dzia³ania toru akustycznego. Na koniec pozostaje jeszcze sprawdzenie czujnikÛw temperatury. Po ich pod³¹czeniu i†skonfigurowaniu najpierw sprawdzamy czujnik temperatury wnÍtrza obudowy (lub procesora). Funkcj¹ Temp1 trzeba ustawiÊ temperaturÍ zbliøona do pokojowej i†po lekkim podgrzaniu czujnika (np. przez dotkniÍcie palcem) obserwujemy sygnalizacjÍ przekroczenia temperatury. Po tych czynnoúciach ustawiamy ø¹dan¹ temperaturÍ alarmu. Dok³adnie tak samo moøe zostaÊ sprawdzony drugi czujnik. Moøna beø øadnych konsekwencji dla dzia³ania programu steruj¹cego wzmacniacza zrezygnowaÊ z†jednego lub z†obydwu czujnikÛw. Jeøeli nie bÍdzie pod³¹czony czujnik mierz¹cy temp1 to nie bÍdzie dzia³aÊ funkcja termometr. Sprawdzony i†uruchomiony wzmacniacz trzeba umieúciÊ w†obudowie komputera w†miejscu przeznaczonym na dodatkowy napÍd CD-ROM. Przedtem do metalizacji otworÛw w†p³ytkach bocznych trzeba przylutowaÊ nakrÍtki M3 do ktÛrych bÍd¹ wkrÍcone wkrÍty mocuj¹ce wzmacniacz do obudowy komputera. Tomasz Jab³oñski, AVT
[email protected] Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/sierpien03.htm oraz na p³ycie CD-EP8/2003B w katalogu PCB.
55
Radiowy P R O Jsystem E K zdalnego T Y sterowania z kanałem zwrotnym
Radiowy system zdalnego sterowania z kanałem zwrotnym, część 2 AVT−517 W†drugiej czÍúci artyku³u przedstawiamy protokÛ³ bezprzewodowej transmisji danych, montaø uk³adÛw zdalnego sterowania oraz sposÛb uruchomienia toru radiowego. Rekomendacje: system bardzo przydatny do dwukierunkowej transmisji danych na relatywnie duøe odleg³oúci w†nielicencjonowanym paúmie 433 MHz. Moøe spe³niaÊ rolÍ systemu zdalnego sterowania modeli lub medium transmisyjnego w†lokalnych systemach telemetrycznych.
56
Format transmitowanych bajtÛw Najwaøniejsze do prawid³owego dzia³ania uk³adu jest unikniÍcie podczas transmisji b³ÍdÛw i†przek³amaÒ wywo³anych np. przez zaniki sygna³u czy zak³Ûcenia. S³uøy temu odpowiednio zaprojektowany protokÛ³ transmisji i†zawarte w†nim zabezpieczenia. Kaøda transmisja rozpoczyna siÍ wys³aniem 16 bajtÛw tzw. preambu³y (rys. 4). Kaødy z†bajtÛw ma wartoúÊ 55H, co w†rezultacie oznacza wygenerowanie sygna³u prostok¹tnego o†poziomie logicznym zmienianym na przeciwny dla kaødego kolejnego bitu preambu³y. Taki sposÛb postÍpowania zwi¹zany jest z†wymaganiami stawianymi przez transceiver CC1000 pracuj¹cy w†trybie odbiorczym. Preambu³a koÒczy si͆wys³aniem pierwszego znaku sygnatury, rÛøni¹cego siÍ wartoúci¹ od ci¹gu 55H. W†tym przypadku kodem sygnatury bÍdzie
bajt o†wartoúci 10H. Od tego momentu rozpoczyna siÍ transmisja danych oraz dodatkowych bajtÛw, dziÍki ktÛrym moøna po stronie odbiornika sprawdziÊ poprawnoúÊ transmisji, a†w†przypadku b³Ídu odrzuciÊ zniekszta³cone dane. Najpierw po znaku sygnatury wysy³ane s¹ dwa bajty okreúlaj¹ce liczbÍ transmitowanych bajtÛw danych. Bajt drugi jest powtÛrzeniem pierwszego i†jeúli po stronie odbiorczej program mikrokontrolera stwierdzi, øe siÍ rÛøni¹, ca³a transmisja zostanie odrzucona jako niepoprawna. NastÍpnie wysy³ane s¹ bajty danych. W†prezentowanym przyk³adzie pierwszy bajt zawiera informacjÍ o†po³oøeniu serwomechanizmu 1, drugi informacjÍ o†po³oøeniu serwomechanizmu 2, natomiast trzeci jest bajtem statusu. W†kaødym bajcie wykorzystane s¹ tylko trzy bity. Bity 0 i†1 okreúlaj¹ stan prze³¹cznikÛw w³¹cz/wy³¹cz odbiornika, natomiast ustawiony bit
Elektronika Praktyczna 8/2003
Radiowy system zdalnego sterowania z kanałem zwrotnym
Rys. 4. Format ramki danych przesyłanej każdorazowo
7†oznacza w³¹czony kana³ zwrotny i†ø¹danie odpowiedzi od odbiornika po zakoÒczeniu bieø¹cej transmisji nadajnika. Po nadaniu zasadniczego ci¹gu danych kolejne bajty danych s¹ powtÛrzeniem nadanych wczeúniej, z†t¹ rÛønic¹ øe ich wartoúci s¹ zanegowane (s¹ przesy³ane w uzupe³nieniu do 1, w dope³nieniu). Jeøeli po stronie odbiorczej zostanie stwierdzona rÛønica pomiÍdzy bajtem danych a†jego zanegowanym powtÛrzeniem, bajt zostanie odrzucony jako b³Ídny. Na samym koÒcu wysy³ana jest suma kontrolna transmisji. Suma budowana jest poprzez wykonanie operacji logicznej ExOR kolejnych bajtÛw†od bajtu sygnatury do ostatniego bajtu danych poprzedzaj¹cego bajt sumy. Jeøeli po stronie odbiorczej suma obliczona nie bÍdzie zgodna z†sum¹ przes³an¹, ca³a transmisja jako fa³szywa zostanie odrzucona. Wszystkie bajty transmitowane s¹ z†pierwszym najbardziej znacz¹cym bitem. Jeøeli w³¹czony jest kana³ zwrotny, odbiornik w†odpowiedzi jako bajty danych wysy³a tylko bajt statusu wraz z†jego negacj¹. W†bajcie tym poziom wysoki bitu 0†oznacza sygnalizacjÍ alarmu niskiego poziomu zasilania odbiornika, natomiast bit 1†przekazuje poziom wejúcia prze³¹cznika w³¹cz/ wy³¹cz odbiornika. Format pozosta³ych bajtÛw transmisji jest identyczny jak w†przypadku nadajnika.
menty jako pierwsze powinny byÊ lutowane. Rozmiar opornikÛw i†kondensatorÛw naleøy do standardu SMD1206, toteø nie powinno byʆwiÍkszych k³opotÛw z†ich montaøem, jeøeli ma siÍ do dyspozycji cienk¹ cynÍ i†lutownicÍ z†odpowiednim grotem. Pozosta³e elementy s¹ typu przewlekanego. Poniewaø demontaø elementu typu SMD jest bardziej pracoch³onny niø w†przypadku elementÛw przewlekanych, przed przylutowaniem warto sprawdziÊ, czy jego wartoúÊ jest na pewno zgodna z†podan¹ w†spisie elementÛw. Wyprowadzenia modu³u wykonane s¹ w†dwÛch rzÍdach po 6†stykÛw. Modu³ nie powinien byÊ bezpoúrednio lutowany, lecz wk³adany do z³¹cz przystosowanych do jego wyprowadzeÒ, tzw. gold pin w†rastrze 2,54 mm (0,1 cala). Pozosta³e wyprowadzenia: zasilania, serwomechanizmÛw, wyjúÊ steruj¹cych, takøe najlepiej wykonaÊ w†postaci roz³¹czalnych gniazd. Na p³ytce nadajnika wszystkie zastosowane elementy s¹ typu
przewlekanego. Elementy znajduj¹ siÍ po jednej stronie p³ytki, dziÍki czemu moøna j¹ przymocowaÊ wewn¹trz ewentualnej obudowy. Takøe tutaj modu³ powinien byÊ zamontowany na przystosowanych do tego z³¹czach. Diody sygnalizacyjne i†prze³¹czniki steruj¹ce moøna zamocowaÊ na gÛrze obudowy, w†ktÛrej zamontowana bÍdzie p³ytka nadajnika. Osobny problem montaøowy nastrÍczaj¹ potencjometry steruj¹ce po³oøeniem serwomechanizmÛw. SposÛb ich zamocowania zaleøy od zastosowania uk³adu zdalnego sterowania. Jeøeli bÍdzie uøywany np. do sterowania ruchami miniaturowej g³owicy kamery, to wystarcz¹ dwa zwyk³e potencjometry z†oúkami, zamontowane na gÛrnej czÍúci obudowy nadajnika. W†przypadku sterowania serwomechanizmami modelu pojazdu, najwygodniejsze by³yby dr¹øki sterownicze pracuj¹ce w†osiach X†i†Y†z†wymuszan¹ pozycj¹ neutraln¹, gdy operator nimi nie manipuluje. Jeøeli jest taka moøliwoúÊ, moøna prÛbowaÊ adaptowaÊ stare uk³ady sterowania zabawek. Moøna takøe w³asnorÍcznie skonstruowaʆmanipulator steruj¹cy, co jednak wymaga wyobraüni i†umiejÍtnoúci.
Montaø Dwustronna p³ytka drukowana odbiornika ma wymiary 45 x†50mm (jej schemat montaøowy pokazano na rys. 5). Wszystkie elementy odbiornika (³¹cznie z†modu³em) znajduj¹ siÍ po jednej stronie, co umoøliwia zamocowanie p³ytki w†obudowie. Gniazdo anteny, zaleønie od potrzeb, umoøliwia jej montaø z†obu stron. W†celu zmniejszenia wymiarÛw p³ytki drukowanej, obudowy opornikÛw, kondensatorÛw nie-elektrolitycznych i†tranzystorÛw przystosowane s¹ do montaøu powierzchniowego i†w³aúnie te ele-
Elektronika Praktyczna 8/2003
Rys. 5. Schemat montażowy płytek układów zdalnego sterowania
57
Radiowy system zdalnego sterowania z kanałem zwrotnym
Anteny Otwory pod gniazda antenowe przeznaczone s¹ pod z³¹cza typu SMA dla giÍtkich, fabrycznych anten dipolowych, jednak najproúciej i†najtaniej wykonaÊ antenÍ samemu. Wystarczy do tego kawa³ek grubego drutu np. miedzianego lub srebrzanki o†úrednicy nie mniejszej niø 1†mm. Najprostszy w†wykonaniu jest dipol ÊwierÊfalowy. Stanowi go kawa³ek drutu o†d³ugoúci 16...17 cm wlutowany w†centralny otwÛr gniazda antenowego JP1 (rys. 6). Charakterystyka promieniowania takiej anteny jest dookÛlna i†ma niez³e parametry, co sprzyja osi¹ganiu wiÍkszych zasiÍgÛw pomiÍdzy nadajnikiem i†odbiornikiem. Zaleønie od potrzeb, antenÍ moøna wlutowaÊ zarÛwno od strony elementÛw, jak i†po stronie przeciwnej. Jeøeli zaleøy nam na mniejszych rozmiarach, antenÍ moøna wykonaÊ jako skrÛcon¹ w†postaci spirali. Spirala ma 10 zwojÛw o†úrednicy 8†mm i†d³ugoúÊ 20 mm. Zalet¹ takiej anteny s¹ ma³e rozmiary, natomiast ma ona gorsze parametry propagacyjne. Moøna takøe zastosowaÊ wariant mieszany, stosuj¹c jeden typ anteny w†nadajniku, a†inny w†odbiorniku i†eksperymentalnie ustaliÊ, ktÛre rozwi¹zanie najlepiej nam odpowiada. ZasiÍgi opisywanego uk³adu bardzo zaleø¹ od otoczenia w†jakim pracuje i†od zastosowanych anten. Podczas prÛb w†terenie otwartym zasiÍg dochodzi³ do 150...200 m. W†budynku wielokondygnacyjnym moøna by³o osi¹gn¹Ê zasiÍg†ponad 6†piÍter.
nie naleøy do³¹czyÊ zasilanie do p³ytki odbiornika. Serwomechanizmy powinny zostaÊ ustawione w†po³oøeniu úrodkowym. NastÍpnie do p³ytki nadajnika oddalonej o†oko³o 50 cm do³¹czamy zasilanie przy zwartym prze³¹czniku kana³u zwrotnego. Przy sprawnie dzia³aj¹cym uk³adzie dioda do³¹czona do z³¹cza JP3-3,4 nadajnika nie powinna migotaÊ, natomiast zmiana po³oøenia potencjometrÛw powinna wywo³ywaÊ analogiczny obrÛt odpowiedniego serwomechanizmu. Jeøeli tak jest, potencjometry reguluj¹ce po³oøenie powinny zostaÊ ustawione w†po³oøeniu neutralnym. Zmiana wartoúci PR2 i†PR3 powinna doprowadziÊ do tego, øe†serwomechanizmy takøe przyjm¹ úrodkowe, neutralne po³oøenie. Ostatni¹ czynnoúci¹ jest regulacja uk³adu detekcji poziomu zasilania. Dla odbiornika regulacja przeprowadzana jest przy w³¹czonym kanale zwrotnym. Do kalibracji uk³adu detekcji trzeba uøyÊ zasilacza o†regulowanym napiÍciu wyjúciowym. Na wyjúciu zasilacza do³¹czonego do odbiornika naleøy ustawiÊ napiÍcie, przy ktÛrym powinna w³¹czaÊ siÍ sygnalizacja, np. 4†V. NastÍpnie uøywaj¹c potencjometru PR1 odbiornika, naleøy doprowadziÊ do sytuacji, aby dioda sygnalizacyjna w†nadajniku zaúwieci³a siÍ. Po zwiÍkszeniu poziomu zasilania odbiornika do nominalnego (np. +5V) dioda powinna zgasn¹Ê. Po wy³¹czeniu kana³u zwrotnego moøna podobn¹ regulacjÍ przeprowadziÊ dla nadajnika.
Uruchomienie uk³adu
Problemy z†uruchomieniem i†dzia³aniem urz¹dzenia
Po zmontowaniu uk³adÛw nadajnika i†odbiornika, przed w³oøeniem do podstawki procesora a†modu³u do z³¹cza, warto sprawdziÊ poprawnoúÊ montaøu, porÛwnuj¹c obie p³ytki ze schematem. NastÍpnie naleøy do³¹czyÊ zasilanie i†sprawdziÊ, czy stabilizatory dostarczaj¹ napiÍcie +3†V ±0,25†V. Jeøeli wszystko siÍ zgadza, moøna przeprowadziÊ prÛbÍ funkcjonaln¹ uk³adu. Do gniazd nadajnika i†odbiornika naleøy w³oøyÊ procesory i†modu³y nadawczo-odbiorcze oraz do³¹czyÊ serwomechanizmy, potencjometry steruj¹ce, prze³¹czniki, diody sygnalizacyjne. NastÍp-
Podczas pracy uk³ad prototypowy zachowywa³ siÍ stabilnie, jednak w†przypadku odbiornika niekorzystne s¹ zbyt d³ugie przewody zasilaj¹ce. Jeøeli uk³ad bÍdzie naraøony na duøy poziom zewnÍtrznych zak³ÛceÒ, moøna zablokowaÊ zasilanie dodatkowymi kondensatorami 100 nF i†elektrolitycznym 22 µF, lutowanymi na wtyku przy gnieüdzie zasilania JP2. Jeøeli pojawi¹ siÍ k³opoty z†uruchomieniem uk³adu, naleøy sprawdziÊ, czy procesory i†modu³y s¹ prawid³owo osadzone w†gniazdach. Na p³ytce modu³u
58
Rys. 6. Sposób wykonania i wymiary dwóch typów anten
styki oznaczone jako P1 wyprowadzaj¹ sygna³y steruj¹ce†PALE, PDATA itd. i†powinny ³¹czyÊ siÍ z†odpowiednimi portami procesora. Wizualnie kwarc modu³u powinien znaleüÊ siÍ w†pobliøu gniazda antenowego na p³ytce odbiornika, natomiast na p³ytce nadajnika powinien byÊ zwrÛcony w†stronÍ stabilizatora +3 V. Moøe siÍ zdarzyÊ, øe na skutek nieprawid³owego zerowania po w³¹czeniu zasilania, procesor odbiornika nie bÍdzie w³aúciwie funkcjonowa³. W†takim przypadku naleøy wy³¹czyÊ zasilanie, odczekaÊ kilka sekund, a†po jego ponownym za³¹czeniu sprawdziÊ, czy serwomechanizmy automatycznie ustawi¹ siÍ w†pozycji neutralnej. Brak impulsÛw steruj¹cych serwomechanizmami na wyprowadzeniach U2-17, 18 úwiadczy o†nieprawid³owej pracy procesora (patrz opis czÍúci odbiorczej). W†przypadku nadajnika naleøy sprawdziÊ, czy na wejúcia TRIG uk³adÛw U2 i†U3 podawany jest impuls wyzwalaj¹cy trwaj¹cy ok. 500 µs, a†na wyjúciach Q†uk³adÛw pojawiaj¹ siÍ dodatnie impulsy 0,9...2,1 ms o†czasie trwania regulowanym przez po³oøenie potencjometrÛw steruj¹cych. Podczas normalnej pracy, na wszystkich wyprowadzeniach modu³u: PALE, PDATA, PCLK, DCLK, DIO powinny pojawiaÊ siÍ impulsy transmisji pomiÍdzy modu³em a†mikrokontrolerem U2. Ryszard Szymaniak, AVT
[email protected] Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/sierpien03.htm oraz na p³ycie CD-EP8/2003B w katalogu PCB.
Elektronika Praktyczna 8/2003
N O T A T N I K
P R A K T Y K A
Prototyp w godzinę − precyzja niemal przemysłowa Płytki drukowane w domu, część 3 Trawienie SpoúrÛd ca³ej gamy k¹pieli przeznaczonych do trawienia miedzi na p³ytkach PCB, w†warunkach amatorskich na uwagÍ zas³uguj¹ trzy ich rodzaje: - RoztwÛr chlorku øelazowego (FeCl 3 ) o†stÍøeniu 28...42% (wagowo) z†ewentualnym dodatkiem do 5% kwasu solnego (HCl). Chlorek øelazowy mimo swojej niekwestionowanej popularnoúci ma kilka istotnych wad, m.in. wykonana z†niego k¹piel wymaga intensywnego mieszania usuwaj¹cego powstaj¹cy osad, a†jej nieprzezroczystoúÊ utrudnia wizualn¹ kontrolÍ postÍpu trawienia. Do tego naleøy jeszcze dodaÊ legendarn¹†zdolnoúÊ do tworzenia nieusuwalnych plam.
Elektronika Praktyczna 8/2003
- K¹piele kwaúne z³oøone z†kwasu siarkowego (H2SO4) lub solnego (HCl) z†dodatkiem perhydrolu (30% nadtlenek wodoru, H2O2). Mieszaniny te nadaj¹ siÍ do trawienia p³ytek precyzyjnych, s¹ rÛwnieø stosunkowo ³atwe do zestawienia w†warunkach amatorskich. Niestety ze wzglÍdu na ma³¹ trwa³oúÊ nie nadaj¹ siÍ do przechowywania. - RoztwÛr nadsiarczanu amonu (NH4)2SO4. Ze wzglÍdu na ma³¹ agresywnoúÊ k¹piel nadaje siÍ praktycznie do wszystkich rodzajÛw pokryÊ ochronnych, a†zarazem pozwala na trawienie p³ytek o†wysokiej jakoúci. W†przemyúle jest obecnie stosowana rzadko, ze wzglÍdu na trudnoúci z†regeneracj¹ i†odzyskiem miedzi z†roztworu, co ma jednak niewielkie znaczenie
W†trzeciej, ostatniej czÍúci cyklu przedstawiamy zagadnienia zwi¹zane z†trawieniem p³ytek drukowanych oraz - jest to namacalny dowÛd na duøe moøliwoúci opisywanej metody - wyniki osi¹gniÍte podczas prac prototypowych. Zapraszamy! w†warunkach amatorskich. Wed³ug receptury podanej w†[1] stÍøenie nadsiarczanu amonu powinno wynosiÊ 200...300 g/ dm3. åwieøy roztwÛr jest bezbarwny, a†w†miarÍ zuøywania stopniowo przybiera barwÍ intensywnie niebiesk¹. DziÍki dobrej trwa³oúci moøe byÊ wykorzystany praktycznie do koÒca, a†stosunkowo niska cena
g³Ûwnego sk³adnika rÛwnieø zachÍca do stosowania w†warunkach amatorskich. Ze wzglÍdu na szybkoúÊ trawienia zaleca siÍ podgrzewanie k¹pieli do temperatury ok. 40oC. Naleøy jednak wspomnieÊ o†pewnym istotnym szczegÛle. OtÛø wed³ug receptury, do stabilnej pracy k¹pieli zalecana jest domieszka katalizatora (chlorek
59
N O T A T N I K
P R A K T Y K A
Fot. 14. Trawiarka napełniona roztworem B327. Na dnie wi− doczne są dwie grzałki akwaryjne, a z tyłu − kurtyna pęcherzy− ków powietrza powodująca intensywne a jednocześnie równo− mierne mieszanie roztworu. Pojemność robocza zbiornika wy− nosi ok. 2,5...3 dm3 rtÍci (II) HgCl2 o†stÍøeniu 8†mg/ dm 3). O†ile ca³kowita iloúÊ i†stÍøenie katalizatora zawartego w†k¹pieli s¹ stosunkowo niewielkie (dopuszczalne stÍøenie rtÍci w†úciekach zrzucanych do kanalizacji komunalnej nie moøe przekraczaʆ0,1 mg Hg/dm 3 ), to operowanie stÍøonymi zwi¹zkami rtÍci podczas przygotowania roztworu wymaga zachowania specjalnych úrodkÛw ostroønoúci. DostÍpny w†handlu Wytrawiacz Drobnokrystaliczny B327, mimo braku na opakowaniu jakichkolwiek informacji o†jego sk³adzie, jest najprawdopodobniej mieszanin¹ sporz¹dzon¹ na bazie nadsiarczanu amonu lub nadsiarczanu sodu. W†chwili obecnej moøna go uznaÊ za jeden z†najwygodniejszych i†³atwo dostÍpnych preparatÛw do trawienia miedzi. Za jego stosowaniem przemawia m.in. to, øe nie
narusza resztek pow³oki kredowej, a†takøe komfort wynikaj¹cy z†klarownoúci k¹pieli. Na fot. 14 pokazano wygl¹d amatorskiej trawiarki nape³nionej czÍúciowo zuøytym roztworem B327. Umieszczone na jej dnie grza³ki akwariowe wraz z†regulatorem utrzymuj¹ temperaturÍ k¹pieli na poziomie ok. 40...42 o C, natomiast widoczna z†ty³u rurka napowietrzaj¹ca wytwarza kurtynÍ pÍcherzykÛw powietrza powoduj¹c¹ intensywne i†rÛwnomierne mieszanie roztworu. Czas trawienia miedzi o†gruboúci 35 µm wynosi w†takich warunkach przeciÍtnie 12...15 minut. Na fot. 15 przedstawiono wygl¹d úcieøek o†nominalnej szerokoúci 6†mils, po wytrawieniu i†czÍúciowym mechanicznym usuniÍciu maskuj¹cego je tonera. KrawÍdzie maski tworz¹ prze-
wieszone okapy, natomiast ukryte pod nimi úcieøki uleg³y podtrawieniu na g³ÍbokoúÊ porÛwnywaln¹ z†gruboúci¹ warstwy miedzi. Wszystkie prÛbki prezentowane w†artykule zosta³y†wykonane na standardowych laminatach o†gruboúci miedzi 35 µm - czyli ok. 1,4 mils. Z†drugiej strony, jeøeli porÛwnamy uzyskane szerokoúci úcieøek z†wymiarami nominalnymi (projektowymi), to moøemy stwierdziÊ, øe†poszerzenie na skutek rozp³yniÍcia tonera i†zwÍøenie powsta³e w†efekcie podtrawienia kompensuj¹ siÍ wzajemnie, a†finalna szerokoúÊ niewiele odbiega od za³oøonej. Ciekawego porÛwnania dostarcza fot. 16. Zestawiono na niej fragment mozaiki z³oøonej z†rÛwnoleg³ych úcieøek o†szerokoúci 6†mils wykonanych w†rÛønych technologiach. Pocz¹wszy od gÛry moøemy zobaczyÊ wydruk maski (600 dpi) na papierze kredowym (a) i†úcieøki uzyskane za jej pomoc¹ (b) oraz rezultaty technologii przemys³owej z†mask¹ fotopolimerow¹ (c) oraz z†mask¹ metaliczn¹ Sn-Pb (d). Technologie przemys³owe gwarantuj¹ niemal idealn¹ powtarzalnoúÊ i†jakoúÊ krawÍdzi niedostÍpn¹ dla mozaiki transferowanej z†wydruku 600 dpi. Jednak z†drugiej strony zwrÛÊmy uwagÍ na zaskakuj¹c¹ prÛbkÍ (d), gdzie z†nominalnej szerokoúci úcieøek pozosta³o jedynie ok. 2†mils.
Mycie i†zabezpieczenie p³ytki Po wyjÍciu p³ytki z†trawiarki pozostaje juø tylko zmycie maski ochronnej. Polimerowy toner daje siÍ ³atwo usun¹Ê za pomoc¹ popularnych rozpuszczalnikÛw†organicznych np. acetonu lub (lepiej) rozpuszczalnika Nitro. Jak siÍ jednak zd¹øy³em przekonaÊ, po zmyciu tonera na powierzchni miedzi pozostaje cienka, woskowata warstewka mog¹ca skutecznie uprzykrzyÊ pÛüniejsze lutowanie. Dlatego przed pokryciem p³ytki warstw¹ topnika warto ostatni raz przeszlifowaÊ j¹ pod bieø¹c¹ wod¹ za pomoc¹ bardzo drobnego papieru úciernego (>1000).
Rezultaty
Fot. 15. Podtrawienie krawędzi ścieżek. Na zdjęciu − ścieżki 6 mils po wytrawieniu i mechanicznym usunięciu części pokry− cia maskującego. Widoczne “okapy” powstały na skutek roz− puszczenia miedzi pod krawędzią tonera. Zwróćmy uwagę, że rozlanie tonera i podtrawienie kompensują się wzajemnie, dzięki czemu finalna szerokość scieżek niewiele różni się od zamierzonej
60
Po szczegÛ³owym przedstawieniu metody nadesz³a pora na prezentacjÍ i†omÛwienie uzyskanych wynikÛw. Licytuj¹c swoje osi¹gniÍcia w†wytwarzaniu domowych PCB, najchÍtniej podajemy minimalne uzyskane szerokoúci úcieøek. Na fot. 17 przedstawiono prÛbÍ oceny metody wed³ug tego w³aúnie kryterium. Jak widaÊ, úcieøka o†nominalnej szerokoúci 4†mils zachowa³a†elektryczn¹ ci¹g³oúÊ. Oczywiúcie nie namawiam nikogo do realizacji takich projektÛw, a†sam test naleøy potraktowaÊ z†przymruøeniem
oka. Jednak daje on pewn¹ orientacjÍ co do potencjalnych moøliwoúci technologii ìkredowejî. OprÛcz minimalnej szerokoúci úcieøek, drugim waønym parametrem s¹ minimalne separacje gwarantuj¹ce unikniÍcie zwarÊ. Wykonane specjalnie w†tym celu prÛbki testowe sk³ada³y siÍ z†rzÍdu rÛwnoleg³ych úcieøek o†stopniowo rosn¹cych odstÍpach. Na fot. 18 pokazano fragment prÛbki z³oøonej ze úcieøek o†nominalnej szerokoúci 6†mils. Liczby na rysunku oznaczaj¹ odstÍpy pomiÍdzy osi¹ úcieøki centralnej a†osiami jej najbliøszych s¹siadÛw. Jak moøna zauwaøyÊ, w†miarÍ oddalania stopniowo zanikaj¹ oddzia³ywania miÍdzy s¹siaduj¹cymi elementami mozaiki. Zapewnienie odstÍpu 6†mils w†zasadzie gwarantuje, øe pomiÍdzy s¹siaduj¹cymi elementami
a)
b)
c)
d)
Fot. 16. Ścieżki 6 mils w róż− nych wykonaniach: wydruk 600 dpi na papierze kredo− wym (a); termotransfer z pa− pieru kredowego (b); techno− logia profesjonalna z maską fotopolimerową (c); technolo− gia profesjonalna z maską metaliczną Sn−Pb (d). Wyko− nania profesjonalne zapew− niają znacznie lepszą równo− mierność ścieżek niż metoda termotransferowa, ale nie bez niespodzianek − w ostatniej próbce (maska SnPb) ze ścieżek o projektowanej szero− kości 6 mils zostało zaledwie ok. 2 mils
Elektronika Praktyczna 8/2003
N O T A T N I K
P R A K T Y K A
N O T A T N I K
P R A K T Y K A
Fot. 17. 6 mils... 5 mils... 4 mils... Gdzie leży granica? Ścieżka 4 mils mimo wyraźnych głębokich przewężeń zachowała ciąg− łość i nienaruszoną górną płaszczyznę mozaiki nie wyst¹pi¹ zwarcia wynikaj¹ce ze zbyt bliskiego s¹siedztwa. Kolejne zdjÍcia prezentuj¹ przyk³ady struktur, z†jakimi moøna siÍ spotkaÊ w†rzeczywistych projektach. S¹ to przejúcia úcieøek pod standardowymi elmentami w†obudowach SMD: 0805 (fot. 19) i†SOT-23 (fot. 20) oraz trzy úcieøki o†szerokoúci 6†mils (fot. 21) przeprowadzone pomiÍdzy polami lutowniczymi uk³adu scalonego w†obudowie DIP (pola o†nominalnej úrednicy 62 mils w†rozstawie 100 mils). Rozpoczynaj¹c artyku³ wspomnia³em o rosn¹cym zapotrzebowaniu na precyzyjne, amatorskie PCB, wynikaj¹cym z†silnego d¹øenia producentÛw do miniaturyzacji obudÛw. Na fot. 22 pokazano
fragment p³ytki drukowanej z†przylutowanym uk³adem w†obudowie QFP208 z†wyprowadzeniami w†rastrze 0,5 mm. Jakkolwiek nie widaÊ tego na zdjÍciu, to mogÍ zapewniÊ, øe wszystkie pozosta³e wyprowadzenia zosta³y przylutowane do poprawnych pÛl†lutowniczych wytrawionych bez zwarÊ i†istotnych ubytkÛw.
Opisy - warstwy Overlay Na zakoÒczenie wspomnÍ o†jeszcze jednym zastosowaniu metody termotransferowej. Kosztem dodatkowych kilku minut pracy moøemy nanieúÊ na p³ytkÍ opis elementÛw (warstwy BottomOverlay i†TopOverlay) znakomicie u³atwiaj¹cy pÛüniejszy montaø (fot. 23). Poniewaø
Fot. 18. Ścieżki 6 mils w zmiennych odstępach. Liczby oznacza− ją odległość w milsach pomiędzy osią ścieżki centralnej a osiami jej najbliższych sąsiadów. Zachowanie ok. 6 mils se− paracji wystarcza do wyeliminowania zwarć
Elektronika Praktyczna 8/2003
61
N O T A T N I K
P R A K T Y K A
Fot. 19. Pojedyncza ścieżka (kolejno o szerokości: 10, 12, 15 mils) przeprowadzona pomiędzy polami elementu SMD0805 toner po zmyciu kredy przyjmuje nieciekaw¹ szarosin¹ barwÍ, a†zarazem od warstwy opisowej nie oczekujemy idealnej szczelnoúci krycia, to tym razem moøemy znacznie uproúciÊ technologiÍ. Zamiast k¹pieli i†ømudnego zmywania kredy, po prostu odrywamy papier na gor¹co, jeszcze przed zdjÍciem p³ytki z†øelazka. Wprawdzie znaczna czÍúÊ wydruku pozostanie na papierze, to jednak reszta przeniesiona na p³ytkÍ i†tak zapewni dobry kontrast oraz czytelnoúÊ znakÛw nawet o†wysokoúci zaledwie 40 mils.
Podsumowanie PorÛwnuj¹c rezultaty metody termotransferowej z†minimalnymi wymaganiami nak³adanymi przez wiele firm zajmuj¹cych siÍ produkcj¹ p³ytek drukowanych, ³atwo ulec z³udnemu wraøeniu, øe†oto w†amatorskim rÍku mamy narzÍdzie doskona³e. Nie traÊmy jednak zdrowego rozs¹dku. Graniczne moøliwoúci profesjonalistÛw siÍgaj¹ znacznie dalej, a†stawiane ograniczenia maj¹ zagwarantowaÊ niemal 100% bezb³ÍdnoúÊ i†powtarzalnoúÊ wykonania
Fot. 20. Pojedyncze (12 mils) i podwójne (8 mils) przejście pod obudową SOT−23
62
w†dowolnym punkcie formatki o†rozmiarach znacznie wiÍkszych niø osi¹galne w†metodzie ìøelazkowejî. Jednak i†ta metoda ma swoje niezaprzeczalne zalety. Jakkolwiek zaprezentowa³em liczne przyk³ady wykonania úcieøek o†szerokoúci 6†mils, to jednak nie wyobraøam sobie np. poprowadzenia w†ten sposÛb magistrali 32 * 6†mils wzd³uø ca³ej eurokarty. Jednak jak najbardziej realne wydaje siÍ siÍgniÍcie po wymiar 6†mils w†krytycznych punktach projektu, czy teø np. wyprowadzenie úcieøek spod obudowy o†rastrze 0,65 mm czy nawet 0,5 mm. Zw³aszcza øe w†realizacjach amatorskich moøna sobie pozwoliÊ na kaødorazowe dok³adne obejrzenie przetransferowanej maski i†ewentualne poúwiÍcenie dodatkowych 20 minut na retusz lub zmycie tonera i†kolejne prasowanie. SzybkoúÊ dzia³ania i†to mimo czasu jaki trzeba poúwiÍciÊ na ewentualne poprawki stanowi drugi niebagatelny atut metody. Bior¹c pod uwagÍ, øe na wykonanie p³ytki jednostronnej potrzeba nie wiÍcej niø 50...60 minut (oczywiúcie nie licz¹c wiercenia), moøna siÍ pokusiÊ o†wykonywanie p³ytek drukowanych ad hoc, do kolejnych wersji uruchamianego prototypu. Przede wszystkim jednak zachÍcam do eksperymentÛw. Prawdopodobnie spore moøliwoúci tkwi¹ jeszcze w†wykorzystaniu coraz powszechniejszych drukarek 1200 dpi a†takøe w†poszukiwaniu innych materia³Ûw do wydruku. Przypomnijmy szukamy noúnika o†g³adkiej powierzchni, odpornego na temperaturÍ druku i†prasowania a†zarazem usuwalnego w†wodzie lub innym rozpuszczalniku obojÍtnym wobec tonera. Wachlarz zagadnieÒ zwi¹zanych z†amatorskimi PCB jest dosyÊ szeroki, a†kilka z†nich zosta³o jedynie zasygnalizowane, jak np. sposoby wykonywania p³ytek dwustronnych czy konstrukcja trawiarki. Jeøeli Czytelnicy wykaø¹ zainteresowanie tym tema-
Fot. 21. Potrójne przejście pomiędzy polami układu w obudowie DIP (ścieżki 6 mils, pola lutownicze 62 mils w rozstawie 100 mils) tem, to moøemy powrÛciÊ do niego w†kolejnych numerach. Marek Dzwonnik, AVT
[email protected] Odnoúniki 1. ìTechnologia i montaø p³ytek drukowanychî, Jerzy Michalski, seria USE, WNT, Warszawa 1992, ISBN 83-204-1413-X 2. http://www.crceurope.com/ -> KontaktChemie -> Positiv20
- specyfikacja zamieszczona na stronie producenta. 3. h t t p : / / w w w . e p . c o m . p l / ? f t p / makepcb/index.html - artyku³ z EP 4. h t t p : / / w w w . m a n t e c h . c o . z a / kontakt/kc20man.HTM - szczegÛ³owa instrukcja stosowania Positivu 5. http://www.easy-soft.tsnet.pl/ akademia/pcb/pcbes.html polskie opisy wykorzystania Positivu i folii TES-200
Fot. 22. Fragment płytki testowej i zamontowanego układu scalo− nego w obudowie TQFP208 z wyprowadzeniami w rastrze 0,5 mm
Fot. 23. Złącze ISP na podstawce uruchomieniowej opisane (warstwa Top Overlay) metodą termotransferową z oderwa− niem papieru na gorąco. Wzdłuż górnej krawędzi widoczny zarys sprężystych szpilek testowych produkowanych przez Q&A rozmieszczonych w rastrze 100 mils. Całkowita wysokość zna− ków wynosi 60 mils
Elektronika Praktyczna 8/2003
P R O G R A M Y
Przełom na rynku narzędzi EDA dla elektroników, część 6 WúrÛd wielu narzÍdzi oferowanych przez pakiet Protel, najwaøniejszy element zawsze stanowi³ edytor PCB. Moøliwoúci tego narzÍdzia w†duøej mierze úwiadcz¹ o†wartoúci ca³ego pakietu i†efektywnoúci pracy projektanta p³yty drukowanej. W†tej czÍúci cyklu omÛwimy kilka nowych i†udoskonalonych cech, ktÛre Protel DXP wprowadza w†samym edytorze PCB. Kszta³t PCB Wraz z†wersj¹ DXP w†edytorze PCB pojawi³a siÍ moøliwoúÊ elastycznego definiowania kszta³tu p³yty (Board Shape). Kszta³t p³yty wyznacza fizyczne granice laminatu i†jest uøywany przez program do okreúlania rozmiarÛw wewnÍtrznych warstw miedzi oraz - podczas generowania plikÛw wyjúciowych np. Gerber do obliczania krawÍdzi p³yty. Trzeba zwrÛciÊ uwagÍ, øe wewnÍtrzne warstwy miedzi wyznaczone przez kszta³t p³yty, s¹ nieco ìodsuniÍteî od krawÍdzi laminatu, co zapobiega ich przypadkowym zwarciom na obrzeøach p³yty. Ta specjalna strefa pozbawiona miedzi (tzw. pullback) jest generowana automatycznie wzd³uø krawÍdzi wyznaczonej przez kszta³t p³yty. Jej szerokoúÊ moøemy okreúliÊ, dla kaødej warstwy niezaleønie, w†okienku Layer Stack Manager widocznym na rys. 1.
Kszta³t p³yty musi byÊ zdefiniowany obowi¹zkowo dla kaødego projektu PCB, jednak jest on tworzony automatycznie podczas tworzenia nowego pliku PCB. Domyúlny kszta³t p³yty moøemy zmieniÊ, uøywaj¹c poleceÒ z†menu Design>Board Shape widocznego na rys. 2. Jeúli w†projekcie mamy juø zdefiniowane granice p³yty np. na jednej z†warstw mechanicznych, moøemy je wykorzystaÊ do automatycznego wygenerowania kszta³tu p³yty korzystaj¹c z†polecenia Define from Selected Objects (rys. 3).
Szablony p³yt PCB Jeúli otworzymy dowolny z†przyk³adowych projektÛw PCB dostarczonych z†programem Protel zauwaøymy, øe w†wiÍkszoúci z†nich
p³yta jest pokazana na bia³ym arkuszu, ktÛry zawiera ramkÍ z†marginesami oraz tabelkÍ, a†czasem rÛwnieø inne elementy graficzne. Protel nie stosuje øadnych specjalnych obiektÛw do tworzenia szablonu. Ramka, oznaczenia stref odniesienia (1, 2, 3... poziomo i†A, B, C... pionowo) na marginesach oraz tabelka s¹ narysowane na jednej z†warstw mechanicznych. W†przyk³adach dostarczonych z†programem jest to warstwa Mechanical 16. Sam arkusz, to bia³y obszar widoczny na rys. 3. Jego parametry okreúlamy w†okienku dialogowym Board Options widocznym na rys. 4. Widok arkusza moøemy ukryÊ, wy³¹czaj¹c opcjÍ Display Sheet dostÍpn¹ w†okienku Board Options. Elementy szablonu (ramkÍ, tabelkÍ i†inne) nanosimy na wybranych warstwach mechanicznych, ktÛre nastÍpnie naleøy ìzwi¹zaÊî z†szablonem zaznaczaj¹c opcjÍ Linked To Sheet w†okienku Board Layers and Colors pokazanym na rys. 5. Elementy na warstwach zwi¹zanych z†szablonem s¹ zablokowane dla operacji edycyjnych, dziÍki temu s¹ zabezpieczone prze przypadkowym usuniÍciem lub zmian¹. Protel DXP jest dostarczany z†zestawem predefiniowanych szablonÛw PCB, ktÛre znajduj¹ siÍ w†katalogu..\Altium\Templates. Moøemy je wykorzystaÊ wprost we w³asnych projektach, lub jako wzorce do tworzenia w³asnych szablonÛw.
Pola wstawiania elementÛw
Rys. 1. Szerokość strefy pullback możemy określić dla każdej warstwy niezależnie w okienku Layer Stack Manager
Rys. 2. Kształt płyty musi być zdefiniowany dla każdego projektu PCB − możemy go zmienić używając poleceń z menu De− sign>Board Shape
64
Rys. 3. Kształt płyty to widoczny na ilustra− cji czarny obszar wyznaczający fizyczne granice płytki drukowanej, natomiast biały obszar z ramką i tabelką to arkusz pocho− dzący z jednego z przykładowych szablo− nów dostarczonych z programem Protel
Rys. 4. Parametry arkusza określamy w okienku dialogowym Board Options
Pola wstawiania elementÛw (Component Placement Rooms) pojawi³y siÍ po raz pierwszy w†edytorze PCB wersji 99. Pole takie, to okreúlony obszar na p³ycie drukowanej, ktÛry obejmuje czÍúÊ elementÛw. Uøywaj¹c pÛl, moøemy wydzieliÊ na p³ycie poszczegÛlne kana³y lub bloki funkcjonalne projektowanego urz¹dzenia. Wewn¹trz kaødego pola moøemy zdefiniowaÊ odmienne regu³y projektowania druku, jak np. szerokoúÊ úcieøek, czy odstÍpy izo-
Rys. 5. Na ilustracji widać, że warstwy Mechanical 4 i Mechanical 16 są związane z szablonem − mają zaznaczoną opcję Linked To Sheet
Elektronika Praktyczna 8/2003
P R O G R A M Y
Rys. 6. Wszystkie funkcje operujące na polach dostępne są w menu Design>Rooms
Rys. 7. Narzędzia do wymiarowania do− stępne są z menu Dimension oraz paska narzędziowego Dimensions lacyjne, dostosowuj¹c je do wymogÛw danej czÍúci obwodu. W†Protelu DXP znacznie rozszerzono funkcjonalnoúÊ pÛl wstawiania o†moøliwoúÊ tworzenia pÛl wielobocznych, moøliwoúÊ kopiowania formatu pola, tworzenia pola dopasowanego do klasy elementÛw oraz funkcje automatycznego prowadzenia i†usuwania úcieøek wewn¹trz wybranego pola. Trzeba dodaÊ, øe program moøe automatycznie tworzyÊ pola zwi¹zane z†pewnymi czÍúciami projektu, jak np. dla arkuszy schematÛw b¹dü kana³Ûw projektu wielokana³owego. DziÍki temu, przechodz¹c do projektowania PCB, mamy juø wyznaczone na p³ycie obszary obejmuj¹ce poszczegÛlne bloki urz¹dzenia. Wszystkie funkcje operuj¹ce na polach dostÍpne s¹ w†menu Design>Rooms widocznym na rys. 6.
NarzÍdzia do wymiarowania Protel DXP zawiera obszerny zestaw narzÍdzi do wymiarowania, obejmuj¹cy wymiarowanie: liniowe, wed³ug punktÛw odniesienia,
Rys. 9. Nowa funkcja dzielenia wewnęt− rznych warstw zasilania w Protelu DXP działa jak cięcie nożem wed³ug linii bazowej, wed³ug linii odniesienia, k¹towe, wed³ug linii úrodkowej, radialne oraz wed³ug úrednicy liniowej lub radialnej. NarzÍdzia do wymiarowania dostÍpne s¹ z†menu Dimension oraz paska narzÍdziowego Dimensions, widocznych na rys. 7. W†przeciwieÒstwie do wczeúniejszych wersji Protela, teraz wymiary s¹ skojarzeniowe kiedy zostan¹ po³¹czone z†wymiarowanym obiektem, s¹ z†nim zwi¹zane na sta³e, takøe wtedy gdy obiekt jest zmieniany lub przesuwany. Kaødy typ wymiaru daje pe³n¹ kontrolÍ nad jednostkami, precyzj¹ wyúwietlania, ustawieniem tekstu i†wygl¹dem strza³ek. Klikaj¹c dwukrotnie wymiar wywo³ujemy okienko dialogowe, podobne do pokazanych na rys. 8, ktÛre najlepiej obrazuj¹ bogactwo dostÍpnych opcji.
Rys. 10. Wszystkie dostępne parametry pól lutowniczych można modyfikować w przed− stawionym oknie
Rys. 11. Wysokość każdego podzespołu możemy określić bezpośrednio na płycie lub też na poziomie biblioteki elementów
Usprawnione dzielenie warstw zasilania Nowa funkcja dzielenia wewnÍtrznych warstw zasilania w†Protelu DXP dzia³a jak ciÍcie noøem. Chc¹c podzieliÊ warstwÍ, wystarczy ustawiÊ j¹ jako bieø¹c¹ i†przejúÊ do trybu pracy z†jedn¹ warstw¹ (np. skrÛtem klawiszowym Shift+S). NastÍpnie wstawiamy linie ciÍcia (pozbawione miedzi) uøywaj¹c zwyk³ego polecenia z†menu Place>Line. Przyk³adowe efekty podzia³u pokazano na rys. 9. Nowe moøliwoúci definiowania kszta³tÛw pÛl lutowniczych Protel DXP daje do dyspozycji trzy rodzaje definicji pola lutowniczego: - Simple - w³aúciwoúci punktu lutowniczego s¹ takie same na wszystkich warstwach, - Top-Mid-Bottom - gÛrna i†dolna warstwa s¹ okreúlone indywidualnie, zaú wszystkie warstwy wewnÍtrzne maj¹ identyczne parametry, - Full Stack - w³aúciwoúci pola lutowniczego mog¹ byÊ definiowane indywidualnie dla kaødej warstwy.
Rys. 12. Definicja przykładowej reguły nakłada restrykcje na maksymalną wyso− kość elementów 4 mm w obszarze określo− nym polem WysDo_4mm Wszystkie dostÍpne parametry pÛl lutowniczych s¹ widoczne na rys. 10. DostÍp do pe³nej definicji pola lutowniczego, po wybraniu opcji Full Stack, uzyskujemy naciskaj¹c przycisk Edit Full Pad Layer Definition.
Zarz¹dzanie wysokoúci¹ elementÛw na PCB W†Protelu DXP z†Service Pack 2†wprowadzono moøliwoúÊ okreúlania wysokoúci elementÛw PCB. WysokoúÊ kaødego podzespo³u moøemy okreúliÊ bezpoúrednio na p³ycie lub teø na poziomie biblioteki elementÛw, jak to widaÊ w†okienku na rys. 11. Wraz z†wprowadzeniem parametru wysokoúci elementu, pojawi³a siÍ nowa regu³a projektowa w†sekcji Placement, ktÛra pozwala na zdefiniowanie restrykcji na wysokoúÊ elementÛw w†pewnych obszarach p³ytki drukowanej (rys. 12). DziÍki temu moøemy w†prosty sposÛb wyznaczyÊ na p³ycie obszary krytyczne, ze wzglÍdu na wysokoúÊ elementÛw, np. w†miejscach gdzie obudowa nie pozwala na przekroczenie pewnych gabarytÛw. Program sam nadzoruje, aby zbyt wysokie podzespo³y nie pojawi³y siÍ w†miejscach, w†ktÛrych zabronimy definiuj¹c stosowne regu³y. Grzegorz Witek, Evatronix
Dodatkowe informacje Rys. 8. Wymiary w Protelu DXP są skojarzone z wymiarowanym obiektem
66
Dodatkowe informacje mo¿na uzyskaæ w firmie Evatronix, www.evatronix.com.pl.
Elektronika Praktyczna 8/2003
S P R Z Ę T
Szybka przystawka oscyloskopowa Ciekawym rozwi¹zaniem dla elektronikÛw moøe byÊ zastosowanie do badaÒ (pomiarÛw) przystawki oscyloskopowej zamiast standardowego oscyloskopu. Przystawka taka w†przypadku produktu firmy Clock Computer Corporation (CCC) wyposaøona jest dodatkowo w†analizator stanÛw logicznych. Po³¹czenie analizatora stanÛw logicznych i†oscyloskopu daje w†rezultacie urz¹dzenie szczegÛlnie przydatne w†pracowni elektronicznej - rzadko spotykane u†innych producentÛw†przystawek oscyloskopowych.
DSO-25216 Przewag¹ przystawek oscyloskopowych nad tradycyjnymi oscyloskopami w†wielu zastosowaniach jest fakt, øe nie posiadaj¹ w³asnego ekranu ani klawiatury (panelu operatorskiego), co wyraünie zmniejsza cen͆urz¹dzenia. Zamiast nich uøytkownik dostaje wirtualny panel operatorski - oprogramowanie dzia³aj¹ce pod kontrol¹ Windows (95/98/Me/NT/2000/XP). Prezentowane urz¹dzenie komunikuje siÍ z†komputerem za pomoc¹ portu drukarkowego lub interfejsu USB. Oprogramowanie steruj¹ce prac¹ przystawki DSO-25216 nie prÛbuje naúladowaÊ p³yty czo³owej oscyloskopu, lecz zoptymalizowano je pod k¹tem maksymalnego wykorzystania moøliwoúci úrodowiska Windows. Projektanci firmy CCC wykorzystali
elementy wizualizacyjne i†steruj¹ce typowe dla Windows np.: - ScrollBar - p³ynna (co do bitu) zmiana parametrÛw takich jak napiÍcie wyzwalania (oscyloskop) i†prÛg prze³¹czania (analizator), przesuniÍcie widoku zawartoúci bufora na ekranie, offset sygna³Ûw analogowych, - ComboBox - ustalanie parametrÛw, ktÛre przyjmuj¹ tylko kilka wartoúci np. sposÛb wyzwalania, rodzaj pod³¹czonej s¹dy pomiarowej itp., - Button - w³¹czanie odpowiedniej funkcji np. start pomiarÛw, autoset itp. Zastosowana zosta³a popularna technika Drag&Drop - chwytanie kursorem i†przeci¹ganie kursorÛw†(V i†t), przesuwanie zawartoúci bufora wzd³uø osi czasu. Program
Tab. 1. Podstawowe parametry przystawki oscyloskopowej DSO25216 Liczba wejæ analogowych (oscyloskop) Liczba wejæ cyfrowych (analizator stanów logicznych) Pasmo przenoszenia Impedancja wejæ cyfrowych Impedancja wejæ analogowych Czu³oæ wejæ analogowych Czêstotliwoæ próbkowania (analogowa i cyfrowa) 20 GHz Regulowany próg prze³¹czania analizatora (0/1) Wyzwalanie analogowe
Od -6,4 V do + 6,4 V W ca³ym zakresie pracy oscyloskopu
Wyzwalanie cyfrowe (analizator stanów logicznych)
Zadan¹ kombinacj¹ wielu wejæ (0,1,x)
Pamiêæ danych pomiarowych Maksymalne napiêcie wejciowe analogowe (sonda 1:1) Maksymalne napiêcie wejciowe cyfrowe Analiza FFT Komunikacja z komputerem PC
128 tysiêcy punktów ±50V (chwilowo 100V) ±50V (chwilowo 100V) Maks. 8 k punktów, dla 97,6 MHz Port drukarki w trybie EPP lub USB2.0
Elektronika Praktyczna 8/2003
2 16 80 MHz 200 kΩ/5 pF 1 MΩ/15pF 5 mV/dz...2 V/dz. 1 Hz... 250 MHz; analogowa (HAFAJEJELA)
steruj¹cy zaopatrzony jest w†menu g³Ûwne, w†ktÛrym ulokowano wiÍkszoúÊ jego funkcji, w†tym operacje zapisu i†odczytu danych z†pliku, wydruki, zapis i†odczyt konfiguracji, kalibracja sprzÍtu itp. DziÍki wykorzystaniu komputera PC jako interfejsu uøytkownika zaistnia³a moøliwoúÊ gromadzenia danych pomiarowych w†celu archiwizacji i†pÛüniejszego ich obrabiania. Moøliwe jest zapisywanie wynikÛw do plikÛw†binarnych, tekstowych, eksportowanie bezpoúrednio do arkusza MS Excel, jak rÛwnieø drukowanie. Oprogramowanie liczy FFT i†wyúwietla widmo mierzonego sygna³u. Wbudowany analizator stanÛw logicznych pracuje synchronicznie z†czÍúci¹ analogow¹ (oscyloskopu). Obie czÍúci (analizator i†oscyloskop) mog¹ oczywiúcie pracowaÊ tak, jakby by³y†samodzielne (sam analizator bez oscyloskopu lub sam oscyloskop bez analizatora). Ze wzglÍdu na wysok¹ odpornoúÊ wejúÊ urz¹dzenia na uszkodzenia - normalnie ±50 V†(w impulsie ±100 V) urz¹dzenie úwietnie nadaje siÍ do pracy w†ciÍøkich warunkach np. pomiary dzia³ania komputera pok³adowego samochodu w†czasie jazdy (warsztaty samochodowe, tuningowe). Przystawka DSO-25216 ma niewielkie wymiary, dziÍki czemu ³atwo jest j¹ wykorzystaÊ podczas pomiarÛw terenowych do wspÛ³pracy z†komputerem przenoúnym. Czytelnicy, ktÛrzy chc¹ zapoznaÊ siÍ z†moøliwoúciami urz¹dzenia, mog¹ pobraÊ demonstracyjne oprogramowanie ze strony producenta http://www.clock-link.com.tw lub ze strony pomocy technicznej dystrybutora - firmy Elmark http://www.elmark.com.pl. Oprogramowanie publikujemy takøe na CD-EP8/2003B. Tomasz Koz³owski Elmark Automatyka
Dodatkowe informacje Prezentowane urz¹dzenie udostêpni³a redakcji firma Elmark Automatyka, tel. 821-30-54, www.elmark.com.pl.
67
K U R S
Opis protoko³u Mbus v2 dla telefonów Nokia 3210, 33xx, 3410, 51xx, 61xx, 62xx, 7110, 82xx, 9110, 9210
Programowanie telefonów komórkowych, część 2 Programowanie telefonÛw komÛrkowych jest z†jednej strony ìsztuk¹ magiczn¹î, natomiast z†drugiej moøna je przeprowadziÊ za pomoc¹ dowolnego komputera i†odpowiedniego oprogramowania. Podstaw¹ jest
Blokady (locks) Telefony komÛrkowe s¹ wyposaøone w†systemy bezpieczeÒstwa, spoúrÛd ktÛrych najczÍúciej uøytkownicy spotykaj¹ siÍ z†tzw. simlockiem. Blokada ta ma za zadanie uniemoøliwiÊ eksploatacjÍ telefonu poza sieci¹ okreúlonego operatora. Telefon z†aktywn¹ blokad¹ nie bÍdzie wiÍc dzia³a³ z†kart¹ SIM pochodz¹c¹ od innego operatora. Stwierdzenie ktÛre z†blokad s¹ aktywne jest moøliwe po wys³aniu ramki: 1F – 00 – 10 – 40 – 00 – 04 – 00 – 01 – 8A – 00 – 13 – D3 W†odpowiedzi telefon przesy³a potwierdzenie przyjÍcia ramki: 1F – 10 – 00 – 7F – 33 – 63 nastÍpnie przesy³a odpowiedü: 1F – 10 – 00 – 40 – 00 – 1A – 01 – 01 – 8A – 00 – 0A – 01 – 10 – 00 – 00 – 00 – 00 – 00 00 – 00 – 00 – 00 – 00 – 00 – 00 – 10 – 00 – 00 – 00 – 00 – 00 – 00 – 0D – D9 Odebrane dane naleøy potwierdziÊ przesy³aj¹c do telefonu ramkÍ: 1F – 00 – 10 – 7F – 0D – 7D Bajt 10h zaznaczony kolorem w†odebranej ramce danych zawiera informacjÍ o†aktywnych blokadach. Najistotniejsz¹ informacjÍ nios¹ cztery mniej znacz¹ce bity bajtu: Bit na pozycji (2 0)= 0/1 - brak/ aktywna blokada LOCK1 (simlock)
znajomoúÊ protoko³u Mbus, ktÛry przedstawiamy w†artykule. Bit na pozycji (21)= 0/1 - brak/ aktywna blokada LOCK2 Bit na pozycji (22)= 0/1 - brak/ aktywna blokada LOCK3 Bit na pozycji (23)= 0/1 - brak/ aktywna blokada LOCK4 Przyk³adowa odpowiedü telefonu, ktÛry ma aktywn¹ blokadÍ simlock: 1F – 10 – 00 – 40 – 00 – 1A – 01 – 01 – 8A – 00 – 0A – 01 – 01 – 00 – 00 – 26 – 00 1F – FF – FF – FF – FF – F0 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 03 – 1F Kod operatora, dla ktÛrego jest za³oøona blokada simlock znajduje siÍ w†16, 17 i†18 bajcie odebranej ramki danych. Kod ma d³ugoúÊ 2,5 bajtu: 26 – 00 – 1F Pokazany ci¹g bajtÛw niesie informacjÍ o†aktywnej blokadzie simlock za³oøon¹ na operatora Plus GSM 260-01 (tab. 4).
Dane te dla specjalistÛw s¹ w†pe³ni zrozumia³e i†dziÍki nim mog¹ oni dowiedzieÊ siÍ prawie wszystkiego o†dzia³aniu sieci i†jej stanie. Aktywacja Net-Monitora wymaga wys³ania ramki: 1F – 00 – 10 – 40 – 00 – 04 – 00 – 01 – 7E – F2 – 14 – D2 Telefon potwierdza jej odbiÛr za pomoc¹ ramki: 1F – 10 – 00 – 7F – 14 – 64 nastÍpnie przesy³a odpowiedü: 1F – 10 – 00 – 40 – 00 – 38 – 01 – 01 – 7E – 00 – 00 – EA – 00 – 10 – CC – D8 – 00 – 00 – 00 00 – 00 – 00 – 00 – 00 – 00 – 10 – CC – D8 – 00 – 09 – 00 – 00 – 00 – 09 – 00 – 00 – 02 – FF 00 – 00 – 01 – 43 – 01 – 11 – 00 – 00 – 00 – 00 – 01 – 00 – 00 – FF – 00 – 00 – 00 – 00 – 00 00 – 00 – 00 – 01 – 42 – 07 – F6 Odebrane dane potwierdzamy wysy³aj¹c ramkÍ: 1F – 00 – 10 – 7F – 0E – 7E Pozosta³e rozkazy zwi¹zane z†obs³ug¹ Net-Monitora zestawiono w†tab. 5.
Monitor sieci Tab. 3. Blokady stosowane w większości współczesnych telefonów komórkowych Blokada
Oznaczenie
D³ugoœæ
LOCK1 (simlock) LOCK2 LOCK3 LOCK4
MCC+MNC
2 bajty + pó³bajt 2 bajty 2 bajty 5 bajtów
GID1 GID2 MSIN
Tab. 4. Kody operatorów sieci komórkowych Operator
KodMCC+MNC
PLUS GSM ERA GSM IDEA CENTERTEL
260 - 01 260 - 02 260 - 03
Elektronika Praktyczna 8/2003
Monitor sieci to specjalny tryb, w†ktÛrym mamy moøliwoúÊ monitorowania wiÍkszoúci parametrÛw sieci oraz telefonu. Funkcja ta jest zazwyczaj ukryta i†chc¹c mieÊ do niej dostÍp naleøy j¹ aktywowaÊ. WiÍkszoúÊ danych obserwowanych w†Net-Monitorze jest dla ìzwyk³ychî ludzi niezrozumia³a - jest to po prostu seria zmieniaj¹cych siÍ cyfr i†liter.
Tab. 5. Kody rozkazów związanych z obsługą Net−Monitora Polecenie
Rozkaz binarny
Aktywacja Net-Monitora Usuniêcie Net-Monitora Rozwiniêcie menu Net-Monitora
0x7E, 0xF2 0x7E, 0xF1 0x7E, 0xF3
Logo operatora Standardowe logo operatora ma wymiary 72 piksele x†14 pikseli i†zajmuje w†pamiÍci 126 bajtÛw. Nasze w³asne logo musimy wys³aÊ do telefonu w†okreúlonym porz¹dku, aby zosta³o prawid³owo odebrane i†wyúwietlone na wyúwietlaczu telefonu. Kaødy wiersz wyúwietlacza zajmuje w†pamiÍci 72 bity, na ktÛre sk³ada siÍ 9†ko-
69
K U R S
K U R S
Rys. 3. Wygląd projektowanego logo
00 – 00 – 00 – 00 – 00 – 01 – 92 – 92 – 92 – 0E – 78 – 1C – 73 – B0 – 79 – 92 – 92 – 92 – 11 – 44 – 22 – 8A – 48 – 45 – AA AA – AA – 1F – 44 – 20 – 8A – 48 – 45 – AA – AA – AA – 10 – 44 – 20 – 8A – 48 – 45 – 44 – 44 – 44 – 11 – 44 – 22 – 8A – 48 45 – 44 – 44 – 44 – 8E – 79 – 1C – 72 – 4A – 79 – 00 – 00 – 00 – 00 – 40 – 00 – 00 – 00 – 40 – 00 – 00 – 00 – 00 – 40 – 00 00 – 00 – 40 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 0F – A6 Po wys³aniu powyøszej ramki do telefonu, na wyúwietlaczu telefonu zostanie wyúwietlone nowe logo (przyk³ad pokazano na rys. 4).
Regulacja kontrastu wyúwietlacza LCD (profil)
Rys. 4. Wygląd wyświetlacza telefonu z wyświetlonym nowym logo lejnych bajtÛw. BÍdziemy wiec wstawiaÊ kolejne bajty grafiki poruszaj¹c siÍ zawsze z†lewej do prawej w†kaødym z†wierszy. ìåwiec¹cyî piksel ma wartoúÊ ì1î, natomiast ìzgaszonyî wartoúÊ ì0î. Dla przyk³adu, zapis bitowy grafiki pokazanej na rys. 3 wygl¹da nastÍpuj¹co: W1 − 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 W2 − 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000001 W3 − 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000001 W4 − 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000001 W5 − 10010010 10010010 10010010 00001110 01111000 00011100 01110011 10110000 01111001 W6 − 10010010 10010010 10010010 00010001 01000100 00100010 10001010 01001000 01000101 W7 − 10101010 10101010 10101010 00011111 01000100 00100000 10001010 01001000 01000101 W8 − 10101010 10101010 10101010 00010000 01000100 00100000 10001010 01001000 01000101 W9 − 01000100 01000100 01000100 00010001 01000100 00100010 10001010 01001000 01000101 W10 − 01000100 01000100 01000100 10001110 01111001 00011100 01110010 01001010 01111001 W11 − 00000000 00000000 00000000 00000000 01000000 00000000 00000000 00000000 01000000 W12 − 00000000 00000000 00000000 00000000 01000000 00000000 00000000 00000000 01000000 W13 − 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 W14 − 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Wx - wartoúci poszczegÛlnych bitÛw w†okreúlonym wierszu (x - numer wiersza).
Wartoúci wszystkich parametrÛw wchodz¹cych w†sk³ad ustawieÒ profili uøytkowych, s¹ okreúlone przez 4†bajty. Kaødy z†bajtÛw okreúla inne parametry. WartoúÊ czwartego bajtu odpowiedzialna jest miÍdzy innymi za wartoúÊ kontrastu wyúwietlacza LCD. Kontrast wyúwietlacza LCD w†telefonie moøe byÊ regulowany w†granicach 0...21h. Typowa wartoúÊ kontrastu dla w†pe³ni sprawnego wyúwietlacza, zapewniaj¹ca najlepsz¹ widocznoúÊ to 0Fh lub 10h. Zmiana kontrastu wymaga wys³ania do telefonu ramki: 1F – 00 – 1D – 40 – 00 – 07 – 00 – 01 – 6B – 00 – 00 – 00 – XX – Seq – CheckSum XX - wartoúÊ kontrastu wyúwietlacza LCD (wartoúÊ szesnastkowa)
Z³¹cza wybranych telefonów firmy Nokia
Format wysy³anej ramki jest nastÍpuj¹cy: 1F – 00 – 1D – 05 – 00 – 8C – 00 – 01 – 00 – 30 – 00 – 62 – F0 – 30 – 00 – 82 – 00 – 48 – 0E – 01 – 00 – 00 – 00 – 00 – 00 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 01 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 00 – 01 – 00 – 00 – 00
70
Elektronika Praktyczna 8/2003
K U R S
Elektronika Praktyczna 8/2003
71
K U R S
K U R S Tab. 6. Kody poleceń związanych z testowaniem telefonu Polecenie
Rozkaz binarny
Test LCD -1 Test LCD -2 Wyczyszczenie wywietlacza LCD Test Buzzera
0xD3, 0x03, 0x02 0xD3, 0x03, 0x01 0xD3, 0x02, 0x03 0x8F
Seq - numer sekwencji ramki CheckSum - Suma kontrolna dla ramki Po wys³aniu takiej ramki telefon naleøy wy³¹czyÊ nastÍpnie ponownie w³¹czyÊ aby przeprowadzona operacja odnios³a skutek.
Zmiana kodu zabezpieczaj¹cego Kod zabezpieczaj¹cy to 5-cyfrowy kod, ktÛry zabezpiecza nasz telefon przed niepowo³anym dostÍpem. Wczeúniej opisana by³a procedura odczytu kodu zabezpieczaj¹cego, poniøej opiszÍ procedurÍ zmiany tzw. Security Code. Aby zmieniÊ kod zabezpieczaj¹cy naleøy wys³aÊ ramkÍ z†rozkazem jego zmiany na inny: 1F – 00 – 10 – 40 – 00 – 09 – 00 – 01 – 6F – 01 – X1 – X2 – X3 – X4 – X5 – 00 – SeqNumber – CheckSum X1, X2, X3, X4, X5 − kolejne cyfry nowego kodu Po bajtach zawieraj¹cych nowe wartoúci dla okreúlonego parametru wystÍpuje zawsze bajt zerowy ì00î. Nie dotyczy to edycji profilu! Przyk³ad: Aby zmieniÊ kod zabezpieczaj¹cy na 22222 naleøy wys³aÊ do telefonu ramkÍ w†poniøszym formacie (znaki kodowane w†ASCII): 32h = 2 Ramka z†rozkazem ustawienia kodu zabezpieczaj¹cego na 2222: 1F – 00 – 10 – 40 – 00 – 0A – 00 – 01 – 6F – 01 – 32 – 32 – 32 – 32 – 32 – 00 – 2F – 37 Telefon potwierdza przyjÍcie ramki: 1F – 10 – 00 – 7F – 2F – 5F nastÍpnie przesy³a odpowiedü: 1F – 10 – 00 – 40 – 00 – 05 – 01 – 01 – 6F – 01 – 01 – 03 – 26 Potwierdzamy odbiÛr danych za pomoc¹†ramki: 1F – 00 – 10 – 7F – 0F – 7F Po wys³aniu powyøszej ramki do telefonu, kod zabezpieczaj¹cy w†telefonie zostanie ustawiony na 22222.
Test wyúwietlacza LCD i†buzzera Istnieje moøliwoúÊ wys³ania ramek z†rozkazem przeprowadzenia testÛw okreúlonych podzespo³Ûw naszego telefonu np. buzzera, wyúwietlacza LCD, silniczka wibratora itp. PrzedstawiÍ jedynie rozkazy odpowiedzialne jedynie za test wyúwietlacza LCD i†buzzera (tab. 6).
72
Tab. 7. Kody poleceń umożliwiających przywrócenie ustawień domyślnych Polecenie
Rozkaz binarny
Przywrócenie ustawieñ fabrycznych Zerowanie telefonu bez ponownego pytania o kod PIN Zerowanie telefonu z pytaniem o kod PIN
0x65, 0x38 0x64, 0x03 0x64, 0x04
Przyk³ady: Test1 LCD: 1F – 00 – 10 – 40 – 00 – 05 – 00 – 01 – D3 – 03 – 02 – SeqNum – CheckSum Czyszczenie wyúwietlacza LCD: 1F – 00 – 10 – 40 – 00 – 05 – 00 – 01 – D3 – 02 – 03 – SeqNum – CheckSum Test Buzzera: 1F – 00 – 10 – 40 – 00 – 03 – 00 – 01 – 8F – SeqNum – CheckSum Po wy³¹czeniu telefonu i†ponownym w³¹czeniu, wszystkie ustawienia przyjm¹ wartoúci takie jak przed wykonaniem testu!
Zerowanie telefonu i†ustawienia fabryczne Po przywrÛceniu ustawieÒ fabrycznych wszystkie ustawienia telefonu przyjm¹ standardowe wartoúci (logo, dzwonki, kod zabezpieczaj¹cy itp.). Kody poleceÒ zestawiono w†tab. 7. Po przywrÛceniu ustawieÒ fabrycznych naleøy wykonaÊ zerowanie telefonu! Przyk³ad: Ramka z†rozkazem przywrÛcenia ustawieÒ fabrycznych w†telefonie 1F – 00 – 10 – 40 – 00 – 04 – 00 – 01 – 65 – 38 – 00 – 17 Nokia potwierdza przyjÍcie ramki: 1F – 10 – 00 – 7F – 00 – 70 Potwierdzamy odbiÛr 1F – 00 – 10 – 7F – 10 – 60 Po przywrÛceniu ustawieÒ fabrycznych w†telefonie, wszystkie parametry telefonu przyjm¹ domyúlne wartoúci (kod zabezpieczaj¹cy - 12345, ustawienia po³¹czeÒ itd.). Informacje zawarte w†artykule z†pewnoúci¹ nie s¹ kompletne, poniewaø standard komunikacji z†telefonami marki Nokia nie zosta³ publicznie przedstawiony przez jego producenta. Marcin Czerniawski
[email protected] PragnÍ gor¹co podziÍkowaÊ mojej dziewczynie Agnieszce za duchowe wsparcie podczas zdobywanie informacji na temat protoko³u oraz podczas pisania artyku³u. Bez jej pomocy artyku³ nigdy by nie powsta³.
Elektronika Praktyczna 8/2003
K U R S
Podstawy projektowania systemów mikroprocesorowych, część 6 W†szÛstej czÍúci naszego cyklu przedstawiamy sposÛb sterowania wyúwietlaczem alfanumerycznym zintegrowanym ze sterownikiem HD44780 oraz podstawy sterowania za pomoc¹ mikrokontrolera urz¹dzeniami duøej mocy.
CzÍsto do³¹czony do systemu mikroprocesorowego wyúwietlacz siedmiosegmentowy jest niewystarczaj¹cy z†punktu widzenia liczby znakÛw moøliwych do wyúwietlenia oraz liczby wyúwietlanych pozycji. O†wiele wiÍksze moøliwoúci daje zastosowanie wyúwietlacza znakowego LCD/OLED lub VFD zintegrowanego ze sterownikiem. Wyúwietlacze takie (wykorzystuj¹ce najczÍúciej sterownik HD44780 lub znim kompatybilny) umoøliwiaj¹ wyúwietlenie - w†zaleønoúci od modelu - od jednej linii szesnastu znakÛw, do czterech linii po czterdzieúci znakÛw. SposÛb do³¹czenia wyúwietlacza przedstawiono na rys. 22. Jak widaÊ, do sterowania wyúwietlacza znakowego stosuje siÍ trzy sygna³y steruj¹ce oraz magistralÍ danych, ktÛra moøe mieÊ - w†zaleønoúci od konfi-
Rys. 22
Elektronika Praktyczna 8/2003
guracji - cztery lub osiem (jak na rysunku) linii danych. Duøe moøliwoúci wyúwietlacza s¹ okupione nieco bardziej skomplikowan¹ obs³ug¹ programow¹. Pe³na dokumentacja techniczna sterownika HD44780 jest dostÍpna na stronie internetowej http:// www.ep.com.pl w†dziale Downl o a d > D o k u m e n t a c j e, w † a r t y k u l e przedstawimy jedynie ogÛln¹ zasadÍ wspÛ³pracy wyúwietlacza z†mikrokontrolerem oraz zaprezentujemy przyk³adowe podprogramy obs³ugi takiego wyúwietlacza. Jak juø wspomniano, oprÛcz oúmio- lub czterobitowej magistrali danych mikrokontroler jest sprzÍgniÍty z†wyúwietlaczem za poúrednictwem trzech linii steruj¹cych: E†- linia sygna³u strobuj¹cego podczas transmisji miÍdzy wyúwietlaczem a†mikrokontrolerem, R/S - linia informuj¹ca sterownik wyúwietlacza o†tym, czy przesy³ana informacja jest znakiem przeznaczonym do wyúwietlenia, czy teø jednym z†rozkazÛw konfiguracyjnych, R/W linia informuj¹ca o†kierunku transmisji (odczyt/zapis). Po w³¹czeniu zasilania konieczne jest przes³anie
do wyúwietlacza odpowiedniej sekwencji rozkazÛw steruj¹cych ustalaj¹cych parametry jego pracy. Przyk³adowy program inicjuj¹cy zamieszczono na list. 6 (wykorzystywano wyúwietlacz 1†linia x†16 znakÛw). Wyúwietlanie danych na wyúwietlaczu polega na przesy³aniu do sterownika kodÛw ASCII znakÛw przeznaczonych do wyúwietlenia. W†najprostszym przypadku konfiguracyjnym, wyúwietlacz moøe dzia³aÊ w†ten sposÛb, øe po przes³aniu kolejnego znaku kursor (widoczny lub niewidoczny) przesuwany jest automatycznie na nastÍpn¹ pozycjÍ. DziÍki temu zmiana wyúwietlanego tekstu wymaga wpisania ich kodÛw do pamiÍci sterownika, reszt¹ zajmuje siÍ sterownik bez øadnej ingerencji wspÛ³pracuj¹cego mikrokontrolera. Na list. 7 przedstawiono podprogram przesy³aj¹cy pojedynczy bajt (kod ASCII znaku) do sterownika wyúwietlacza. Wykorzystano w†nim przedstawiony wczeúniej podprogram sprawdzania zajÍtoúci. Podobnie wygl¹da obs³uga programowa wyúwietlacza znakowego LCD pracuj¹cego z†magistral¹ 4-bitow¹. Jedyn¹ rÛønic¹ jest sposÛb przesy³ania danych: nastÍpuje transmisja dwÛch s³Ûw czterobitowych, kaødorazowo strobowanych sygna³em E. Jako pierwsza przesy³ana jest starsza po³Ûwka bajtu. Magistrala danych ogranicza siÍ do linii D4...D7, natomiast linie D0 do D3 pozostaj¹ nie pod³¹czone. Oczywiúcie konieczne jest przeprowadzenie odpowiedniej inicjalizacji wyúwietlacza przygotowuj¹cej go do pracy z†czterobitow¹ magistral¹ danych. Przedstawiony powyøej opis jest jedynie zarysem problemu obs³ugi wyúwietlacza znakowego
81
K U R S List. 6. Procedura inicjująca sterownik wyświetlacza LCD 1x16 INIC_WYS: CLR P2.0 MOV R7,#0FFH OPLCD: MOV R6,#0FFH DJNZ R6,$ DJNZ R7,OPLCD
;wyzerowanie linii strobującej ;realizacja opóźnienia koniecznego ;do wewnętrznej inicjalizacji wyświetlacza ;po włączeniu zasilania
CLR P2.1 CLR P2.2 MOV P1,#0FH SETB P2.0 CLR P2.0
;przesłanie rozkazu konfiguracyjnego ;(patrz specyfikacja HD44780)
LCALL CLR_LCD
;wywołanie procedury czyszczącej wyświetlacz
LCALL SPR_BUSY CLR P2.1 CLR P2.2 MOV P1,#38H SETB P2.0 CLR P2.0
;sprawdzenie zajętości wyświetlacza
;impuls ;strobujący
;przesłanie kolejnego rozkazu konfiguracyjnego
LCALL SPR_BUSY
;sprawdzenie zajętości
CLR P2.1 CLR P2.2 MOV P1,#0CH SETB P2.0 CLR P2.0
;kolejny rozkaz konfiguracyjny
RET
;powrót do programu głównego
SPR_BUSY: MOV P1,#0FFH CLR P2.1 SETB P2.2 SETB P2.0 MOV A,P1 CLR P2.0 JB ACC.7,SPR_BUSY RET CLR_LCD:
;podprogram sprawdzający zajętość wyświetlacza ;ustawienie linii portu - praca jako wejście ;odczyt bajtu ;statusu wyświetlacza ;odczyt szyny danych ;pozostanie w pętli jeśli zajęty ;powrót do programu głównego ;podprogram czyszczenia zawartości wyświetlacza
LCALL SPR_BUSY
;sprawdzenie czy zajęty
CLR P2.1 CLR P2.2 MOV P1,#01H SETB P2.0 CLR P2.0
;wysłanie rozkazu zerowania
RET
;powrót do programu głównego
LCD. Przedstawienie pe³nej specyfikacji tego typu wyúwietlaczy wykracza poza ramy tego artyku³u. Jest to zwi¹zane m.in. z†tym, øe przedstawiony tutaj sposÛb obs³ugi wyúwietlacza LCD moøe byÊ nieskuteczny w†przypadku zastosowania wyúwietlacza innego rodzaju (inna liczba znakÛw i†linii, niekiedy wystarczy tylko inny producent), co wi¹za³oby siÍ
z†przedstawieniem ogromnej liczby procedur w†celu zapewnienia wspÛ³pracy z†kaød¹ moøliw¹ konfiguracj¹. Wydaje siÍ jednak, øe przedstawione tutaj informacje w†po³¹czeniu z†not¹ katalogow¹ sterownika HD44780 pozwol¹ úrednio doúwiadczonemu programiúcie opracowanie podprogramÛw odpowiednich dla danego, uøywanego przez niego, modelu.
List. 7. ;ZNAK - zmienna bajtowa przechowująca kod znaku do wyświetlenia WYSW_ZNAK: LCALL SPR_BUSY SETB P2.1 CLR P2.2 MOV P1,ZNAK SETB P2.0 CLR P2.0 RET
82
;sprawdzenie zajętości ;tryb zapisu ;danej ;wysłanie kodu znaku na szynę danych ;impuls ;strobujący ;powrót do programu głównego
Sterowanie urz¹dzeniami duøej mocy Buduj¹c sterownik mikroprocesorowy czÍsto powierzamy mu zadanie sterowania urz¹dzeniami duøej mocy i/lub urz¹dzeniami zasilanymi bezpoúrednio z†sieci. Z†oczywistych wzglÍdÛw nie moøemy obci¹øyÊ wyprowadzeÒ mikrokontrolera pr¹dami rzÍdu amperÛw, a†tym bardziej nie moøemy pod³¹czyÊ do niego bezpoúrednio napiÍcia sieciowego 220V. Najprostszym sposobem sterowania urz¹dzeniami duøej mocy i†rÛwnoczeúnie metod¹ na zapewnienie separacji galwanicznej od sieci 220V jest zastosowanie przekaünika. Uk³ad sprzÍgniÍcia przekaünika z†mikrokontrolerem pokazano na rys. 23a). Jako element poúrednicz¹cy zastosowano tranzystor NPN z†linii portu mikrokontrolera. Zastosowanie rezystora R1 jest konieczne w†przypadku sterowania duøych przekaünikÛw o†znacznym pr¹dzie wzbudzenia - zwiÍksza on pr¹d bazy tranzystora, dziÍki czemu nie trzeba stosowaÊ elementu o†bardzo duøym wzmocnieniu. Oczywiúcie przekaünik nie musi byÊ zasilany z†napiÍcia zasilaj¹cego mikrokontroler (+5 V†na rysunku) - moøna stosowaÊ przekaüniki na dowolne napiÍcia jednak tylko z†przedzia³u napiÍÊ tzw. bezpiecznych (poniøej 50V) ze wzglÍdu na brak separacji galwanicznej miÍdzy obwodem cewki przekaünika a†mikrokontrolerem (do ktÛrego moøe byÊ pod³¹czona np. klawiatura). Dioda do³¹czona rÛwnolegle do cewki przekaünika zabezpiecza tranzystor przed przepiÍciami powstaj¹cymi w†chwili wy³¹czania. Zalet¹ tego uk³adu jest moøliwoúÊ sterowania bardzo duøymi mocami - w†praktyce ograniczeniem jest tylko wytrzyma³oúÊ stykÛw zastosowanego przekaünika. Wad¹ jest natomiast stosunkowa powolnoúÊ (nie od unikniÍcia w†uk³adach z†elementami mechanicznymi czas potrzebny na zadzia³anie przekaünika) oraz skoÒczona liczba prze³¹czeÒ (zwi¹zana ze zuøywaniem siÍ zestykÛw). Jeøeli zaleøy nam na sterowaniu ca³kowicie elektronicznym, to w†przypadku sterowania urz¹dzeniami na napiÍcie sieciowe korzystne bÍdzie zastosowanie optotriaka (dok³adniej transoptora z†optotriakiem jako elementem úwiat³oczu³ym)
Elektronika Praktyczna 8/2003
K U R S
Rys. 23 wraz z†trakiem, w†uk³adzie jak na rys. 23b). Od strony mikrokontrolera sterowanie odbywa siÍ w†identyczny sposÛb jak sterowanie diody LED - moøna wykorzystaÊ przeznaczony do takich zastosowaÒ port mikrokontrolera lub w†razie potrzeby bufor z†tranzystorem. Od strony wysokiego napiÍcia wystÍpuje triak mocy sterowany przez optotriak wbudowany do transoptora. Na przedstawionym schemacie umieszczono optotriak MOC3043, ktÛry jest wyposaøony w†uk³ad wykrywania przejúcia przez zero napiÍcia sieci, co umoøliwia eliminacjÍ zak³ÛceÒ wnoszonych do sieci przy w³¹czaniu triaka. Rezystory R2 i†R3 polepszaj¹ warunki pracy uk³adu wykrywania zera. Jeúli zastosujemy optotriak z†serii MOC3023 (bez uk³adu wykrywania zera), to powyøsze rezystory nie s¹ niezbÍdne. Warto jednak zostawiÊ rezystor R2 - zabezpiecza on trans-
Elektronika Praktyczna 8/2003
optor przed przeci¹øeniem w†przypadku uszkodzenia triaka g³Ûwnego - wÛwczas ca³y pr¹d obci¹øenia mÛg³by pop³yn¹Ê przez optotriak i†spowodowaÊ jego zniszczenie. Za-
stosowanie transoptora zapewnia izolacjÍ galwaniczn¹ do napiÍcia rzÍdu 5000 V†(w zaleønoúci od producenta). W†przypadku sterowania elektronicznego urz¹dzeniami pracuj¹cymi przy niskim napiÍciu sta³ym, najlepiej jest zastosowaÊ w³¹czanie obci¹øenia przy pomocy tranzystora MOSFET duøej mocy. SytuacjÍ tak¹ przedstawiono na rys. 23c. Tranzystor mocy MOS z†kana³em N†sterowany jest tutaj przez wzmacniacz operacyjny pracuj¹cy w†uk³adzie komparatora. Jako napiÍcia wejúciowe do wzmacniacza operacyjnego doprowadzono potencja³ rÛwny po³owie napiÍcia zasilania mikrokontrolera, wytworzony za pomoc¹ rezystorÛw R2 i†R3 oraz napiÍcie z†linii portu mikrokontrolera. Zasilanie wzmacniacza napiÍciem 12 V†jest niezbÍdne ze wzglÍdu na napiÍcie progowe tranzystora MOS, ktÛre dla elementÛw duøej mocy moøe siÍgaÊ nawet 8†V. Sterowanie takiego elementu bezpoúrednio z†wyprowadzenia mikrokontrolera (napiÍcie steruj¹ce max. 5V) doprowadzi³oby do znacznych strat mocy na tranzystorze, wskutek niepe³nego otwarcia jego kana³u. Zastosowany rezystor R1 ogranicza pr¹d zwi¹zany z†prze³adowaniem pojemnoúci bramki tranzystora MOS (rzÍdu nawet 10 nF). W†prezentowanym uk³adzie wyst¹pienie jedynki logicznej na wyprowadzeniu portu doprowadzi do za³¹czenia tranzystora (napiÍcie wyjúciowe wzmacniacza rÛwne napiÍciu zasilania). Pawe³ Hadam, AVT
[email protected]
83
K U R S
Celem tego artyku³u jest opis funkcjonowania oraz sposobÛw konfiguracji i†wykorzystania timerÛw w†mikrokontrolerach z†rodziny AVR. Rozpoczynaj¹c od ogÛlnego opisu, poprzez przyk³adowe programy, postaram siÍ wyt³umaczyÊ jak wykorzystaÊ timer wbudowany w†strukturÍ mikrokontrolera AVR dla w³asnych potrzeb. W†przyk³adach programÛw pos³ugiwa³em siÍ mikrokontrolerem AT90S8535.
część Obsługa timerów w mikrokontrolerach AVR Taktowanie przez zegar systemowy Zegar systemowy uøywany jest jako wejúciowy dla preskalera rÛwnieø wÛwczas, gdy czÍstotliwoúÊ taktowania CPU zosta³a wybrana jako jedna z†otrzymywanych z†preskalera. Timer pracuje wiÍc†synchronicznie z†zegarem systemowym. Wszystkie trzy timery AT90S8535 oraz timery wiÍkszoúci innych mikrokontrolerÛw AVR pracuj¹ w†ten sposÛb. Nie s¹ wymagane øadne dodatkowe uk³ady zewnÍtrzne. Zalet¹ takiego rozwi¹zania jest fakt, øe dziÍki bardzo wysokiej czÍstotliwoúci zegara systemowego (o wiele wyøszej niø tej, ktÛra taktuje CPU) operacje przeprowadzane przez mikrokontroler mog¹ byÊ mierzone z†o†wiele wiÍksz¹ dok³adnoúci¹. CzÍstotliwoúÊ przepe³nienia timera jest dobrym wskaünikiem rozmiaru ramki czasowej, ktÛr¹ jest w†stanie pokryÊ timer. Poniøszy wzÛr ukazuje powi¹zanie pomiÍdzy czÍstotliwoúci¹ przepe³nienia timera TOVCK, maksymaln¹†wartoúci¹, ktÛr¹ moøe byÊ wpisana do timera MaxVal,czÍstotliwoúci¹ zegara systemowego f C K i†wspÛ³czynnikiem podzia³u†preskalera PVal. f (P /PVal) PCKx TOVCK= CK = CKx = MaxVal MaxVal (PVal ⋅ MaxVal)
Dla przyk³adu jeúli CPU taktowane jest czÍstotliwoúci¹ 3,69 MHz i†timer ma rozdzielczoúÊ 8†bitÛw (MaxVal = 256) wartoúÊ preskalera 64 spowoduje, øe timer taktowany czÍstotliwoúci¹ TCK rÛwn¹†3,69 MHz/64 wygeneruje ok. 225 sygna³Ûw przepe³nienia w†czasie 1†sekundy. TOVCK=
Rys. 2
84
f CK (3,69 MHz/64) ≈ 225 = MaxVal 256
Wygenerowanie liczby 225 przepe³nieÒ timera w†czasie 1†sekundy oznacza koniecznoúÊ wys³ania sygna³u przepe³nienia co 4,4 ms. Maksymalna wartoúʆpreskalera powoduje przepe³nienie co 71 ms, minimalna co 69 µs. Wymagania aplikacji determinuj¹ czÍstotliwoúÊ przepe³nieÒ timera. Bazuj¹c na nich oraz na znanej czÍstotliwoúci taktowania timera ³¹cznie z†jego rozdzielczoúci¹, nastawa preskalera moøe byÊ wyliczona przy pomocy nastÍpuj¹cego wyraøenia: PVal=
PCKx (TOV ⋅ MaxVal)
Implementacja w†jÍzyku asemblera moøe wygl¹daÊ tak, jak poniøszy przyk³ad programu. Ustawia on wartoúÊ preskalera przy pomocy TCCR0 na podzia³ czÍstotliwoúci zegara przez 1024: ldi r16,(1<
Taktowanie przez asynchroniczny sygna³ zegarowy W†odrÛønieniu od innych timerÛw, ktÛre nie obs³uguj¹ tej opcji Timer 2†AT90S8535 moøe byÊ taktowany przez zewnÍtrzne ürÛd³o sygna³u (rys. 2). W†tym celu kwarc lub rezonator ceramiczny pod³¹cza siÍ do wyprowadzeÒ TOSC1 i†TOSC2. Oscylator jest zoptymalizowany dla kwarcu tzw.zegarkowego o†czÍstotliwoúci 32768Hz. Ta czÍstotliwoúÊ jest bardzo dobra zw³aszcza dla implementacji zegara czasu rzeczywistego. G³Ûwn¹ zalet¹ tego rozwi¹zania jest uniezaleønienie od zegara systemowego. Umoøliwia ono rÛwnieø CPU pracÍ z†duø¹ czÍstotliwoúci¹ przetwarzania, niekoniecznie dobran¹ pod k¹tem pomiaru czasu, podczas gdy timer pracuje z†czÍstotliwoúci¹ dla nich optymaln¹. Dodatkowo tryb oszczÍdzania energii ma opcjÍ umoøliwiaj¹c¹ wprowadzenie czÍúci uk³adÛw mikrokontrolera w†tryb uúpienia podczas gdy asynchroniczny timer ci¹gle pracuje. Tutaj jedna uwaga: czÍstotliwoúÊ zewnÍtrznego oscylatora jest rÛøna dla rÛønych typÛw mikrokontrolerÛw. Jej dolna granica zawiera siÍ w†przedziale od 0Hz do 256kHz a†gÛrn¹ wyznacza czÍstotliwoúÊ zegara systemowego: powinna byÊ ona mniejsza lub rÛwna niø FCK/4.
2
Praca z†timerem taktowanym asynchronicznie wymaga pewnych dodatkowych rozwaøaÒ. Poniewaø Timer 2†taktowany jest asynchronicznie w†stosunku do zegara systemowego, zdarzenia generowane przez Timer musz¹ byÊ synchronizowane przez CPU. Z†tej cechy wynika wymaganie aby czÍstotliwoúÊ taktowania timera by³a co najmniej czterokrotnie mniejsza niø czÍstotliwoúÊ zegara systemowego. Z†drugiej strony moøliwe s¹ konflikty pomiÍdzy synchroniczymi i†asynchronicznymi ø¹daniami obs³ugi (np. przerwania). Jak CPU radzi sobie z†takimi sytuacjami? Obs³uga zdarzeÒ jest przeprowadzana przez rejestry tymczasowe. Bity statusu sygnalizuj¹ kiedy przeprowadzane jest uzupe³nianie zawartoúci rejestrÛw. Dok³adny opis rejestrÛw ASSR (Asynchronous Status Register) moøna znaleüÊ w†karcie katalogowej. CzÍstotliwoúÊ z†jak¹ ustawiany jest bit przepe³nienia moøna obliczyÊ identycznie jak w†poprzednim przypadku z†tym, øe do rÛwnania musi zostaÊ wstawiona czÍstotliwoúÊ zewnÍtrznego ürÛd³a sygna³u. Nastawy preskalera Timera 2†zosta³y podane w tab. 1 (EP7/ 2003), czÍstotliowoúÊ taktowania preskalera Timera 2†jest funkcj¹ bitu AS2 w†rejestrze ASSR. Jeúli ten bit jest wyzerowany, timer pracuje w†trybie synchronicznym z†czÍstotliwoúci¹ zegara systemowego jako wejúciow¹. Jeúli ten†bit jest ustawiony, asynchroniczny sygna³ zegarowy z†wyprowadzeÒ TOSC1 i†TOSC2 jest uøywany jako sygna³ wejúciowy preskalera. Fragment programu w†jÍzyku asemblera ustawia preskaler Timera 2†na maksymaln¹ wartoúÊ podzia³u†(1024): ldi r16, (1<
Taktowanie zewnÍtrznym generatorem Timer 0†i†Timer 1†mog¹ byÊ taktowane z†zewnÍtrznego generatora sygna³u zegarowego. Tryb ten zapewnia obs³ugÍ szeregu rÛønych ürÛde³ jako generatorÛw sygna³u zegarowego. Jest to taktowanie synchroniczne co oznacza, øe CPU wykrywa stan wyprowadzenia i†jeúli wykryta zosta³a zmiana zewnÍtrznego sygna³u,
Elektronika Praktyczna 8/2003
K U R S to przeprowadza odpowiedni¹ akcjÍ synchronicznie z†zegarem systemowym. Kaøde opadaj¹ce zbocze zegara systemowego powoduje pobranie prÛbki zewnÍtrznego sygna³u. CPU potrzebuje co najmniej 2†cykli aby wykryÊ zmianÍ zewnÍtrznego sygna³u. Ogranicza to maksymaln¹ czÍstotliwoúÊ sygna³u zewnÍtrznego do F CK / 2. W†zaleønoúci o†konfiguracji, opadaj¹ce lub narastaj¹ce zbocze sygna³u na wyprowadzeniu T0/T1 moøe oznaczaÊ zmianÍ sygna³u zegarowego. WybÛr zbocza dokonywany jest przy pomocy bitÛw CSO0..1 znajduj¹cych siÍ w†rejestrze TCCRx (patrz opis w†tab. 1). Poniøszy fragment kodu w†jÍzyku asemblera pokazuje w†jaki sposÛb ustawiÊ Timer 0†aby pracowa³ z†zewnÍtrznym ürÛd³em sygna³u reaguj¹c na kaøde jego narastaj¹ce zbocze: ldi r16,(1<
Jak zatrzymaÊ Timer? Zatrzymanie timera jest bardzo proste: zapis wartoúci 0†do preskalera (rejestr TCCRx) zatrzymuje odpowiedni timer. Naleøy jednak pamiÍtaÊ, øe†preskaler w†dalszym ci¹gu pracuje. Kod w†jÍzyku asemblera zatrzymuj¹cy pracÍ Timera 0†moøe wygl¹daÊ jak niøej: clr r16 out TCCR0,r16 ;zapis war;tości 0 do TCCR0 zatrzymuje ;Timer 0 Jeúli zaleøy nam na zachowaniu wartoúci resjestru TCCR0 w†zwi¹zku z†innymi nastawami, zapis nastaw bitÛw CSO0..1 kosztuje dodatkowe linie programu i†moøe wygl¹daÊ jak niøej: in r16,TCCR0 ;odczyt aktual;nej wartości rejestru TCCR0 andi r16,~((1<
Nastawy trybÛw pracy timerÛw Ta czÍúÊ tekstu koncentruje siÍ na sposobach wykonywania nastaw trybÛw pracy timerÛw. Naleøy jednak pamiÍtaÊ, øe podany niøej przyk³ady dotycz¹ mikrokontrolera AT90S8535 i†dla innych mikrokontrolerÛw†mog¹ byÊ konieczne zmiany. Jak wczeúniej wspomnia³em, moim zdaniem uøywanie przerwaÒ to jedna z†najbardziej efektywnych metod obs³ugi zdarzeÒ generowanych przez timery: wiÍkszoúÊ z†przyk³adÛw programowania bÍdzie zawieraÊ obs³ugÍ przerwaÒ.
Elektronika Praktyczna 8/2003
Niezaleønie od rÛønych rozszerzeÒ oferowanych przez trzy timery, maj¹ one pewne cechy wspÛlne. Kaødy z†timerÛw musi byÊ uruchomiony przez wybÛr ürÛd³a sygna³u zegarowego i†jeúli uøywane s¹ przerwania, to rÛwnieø musz¹ zostaÊ dokonane zwi¹zane z†nimi nastawy. Jedn¹ z†zasad obowi¹zuj¹cych przy tworzeniu procedur obs³ugi przerwaÒ jest ta, øe†jeúli te same rejestry uøywane s¹ w†programie g³Ûwnym co i†w†procedurze obs³ugi przerwania, to musz¹ one zostaÊ podczas obs³ugi przerwania zapamiÍtane a†nastÍpnie odtworzone przy powrocie do programu g³Ûwnego. Jeúli nie wszystkie 32 rejestry (AT90S8535) musz¹ byÊ uøywane, dobrze jest uøyÊ odrÍbnych dla programu g³Ûwnego i†dla procedury obs³ugi przerwania. Bardzo waønym jest aby pamiÍtaÊ, øe†rejestr statusy SREG (Status Register) nie jest automatycznie zapamiÍtywany przez procedurÍ obs³ugi przerwania i†naleøy rÛwnieø zatroszczyÊ siÍ o†jego zawartoúÊ. Tak jest w†przypadku programÛw napisanych w†jÍzyku asemblera. W†tych napisanych w†jÍzykach wysokiego poziomu, takich jak Bascom czy C, kompilator automatycznie zapamiÍtuje zawartoúÊ SREG przy wejúciu do procedury obs³ugi przerwania i†odtwarza j¹ przy powrocie. O†resztÍ rejestrÛw naleøy zatroszczyÊ siÍ ìrÍcznieî. W†przypadku programÛw napisanych w†jÍzyku asemblera moøna posi³kowaÊ siÍ instrukcjami PUSH i†POP jednak naleøy pamiÍtaÊ o†tym, øe niektÛre z†modeli mikrokontrolerÛw AVR nie posiadaj¹ tych rozkazÛw na swojej liúcie wykonywanych poleceÒ.
8-bitowy Timer 0 Timer 0†jest timerem synchronicznym, co oznacza øe jest taktowany przez zegar systemowy, zegar systemowy o†czÍstotliwoúci zmniejszonej przez preskaler lub przez sygna³ zewnÍtrzny ale zawsze synchronicznie z†zegarem systemowym uøywanym przez CPU.
Przyk³ad - procedura obs³ugi przerwania na skutek przepe³nienia Timera 0 Przyk³ad pokazyuje w†jaki sposÛb Timer 0†moøe byÊ uøywany do wywo³ywania procedury obs³ugi przerwaÒ. Kaøde wywo³anie zmienia stan portÛw wyjúciowych portu B. Jeúli do wyprowadzeÒ portu B†zostan¹ pod³¹czone diody LED, to bÍd¹ one migotaÊ z†czÍstotliwoúci¹, ktÛr¹ moøna wyznaczyÊ za pomoc¹ wczeúniej poznanej formu³y:
;podprogram inicjujący tryb pracy mikrokontrolera init_Ex1: ldi r16,(1<
16-bitowy Timer 1 Podobnie jak Timer 0, Timer 1†pracuje synchronicznie. Dla upewnienia siÍ, øe†wykonywany jest jednoczesny zapis i†odczyt 16-bitowego rejestru timera, do przeprowadzenia tych operacji uøywany jest rejestr tymczasowy Temp. Czyni to niezbÍdnym dostÍp do tego rejestru w†specyficzny sposÛb. Metoda jest opisana dok³adnie w†nocie aplikacyjnej firmy Atmel ìAVR072: Accessing 16-bit I/O Registersî. Bardzo duøym skrÛtem rozwaøaÒ na ten temat jest w³aúciwy dla AVR sposÛb dostÍpu do rejestrÛw†16-bitowych przedstawiony w†tab. 2. Dociekliwych zachÍcam do lektury, tu zajmiemy siÍ wy³¹cznie przyk³adami programÛw uøytkowych.
Tab. 2. Właściwy sposób dostępu do rejestrów 16−bitowych Rodzajprzeprowadzanej operacji
W pierwszejkolejnoœci
W drugiejkolejnoœci
Odczyt Zapis
Odczyt m³odszego bajtu (LSB) Zapis starszego bajtu (MSB)
Odczyt starszego bajtu (MSB) Zapis m³odszego bajtu (LSB)
Przyk³ady u¿ycia: - odczyt: in r16,TCNT1L in r17,TCNT1H
- zapis: out TCNT1H,r17 out TCNT1L,r16
85
K U R S Obs³uga przerwania Timera 1 pochodz¹cego od wejúcia ICP (Capture Input) Przyk³ad ten pokaøe prost¹ metodÍ uøycia zdarzenia generowanego na skutek zmiany stanu wejúcia ICP oraz obs³ugi jego przerwania. Wyprowadzenie bitu 6†portu D†uøywane jest jako wejúcie dla funkcji pomiaru sygna³u zewnÍtrznego i†nosi nazwÍ ICP. Funkcja pomiaru zwi¹zana z†tym wejúciem funkcjonuje w†taki sposÛb, øe Timer moøe zmierzyÊ czas pomiÍdzy dwoma nastÍpuj¹cymi po sobie opadaj¹cymi lub narastaj¹cymi zboczami sygna³u podanego na wejúcie ICP. W†prezentowanym przyk³adzie 8†bardziej znacz¹cych bitÛw Timera 1†zostanie zapisanych do portu B. Jeúli tak, jak w†przyk³adzie powyøej, do wyprowadzeÒ portu B†pod³¹czymy diody LED, uzyskamy prost¹ funkcjÍ wskazuj¹c¹ czas trwania impulsu. Bit 6†portu D†(wejúcie ICP) moøe byÊ pod³¹czony do generatora fali prostok¹tnej lub po prostu do przycisku. W†prezentowanym przyk³adzie, dla rezonatora kwarcowego oko³o 4MHz, maksymalny mierzony czas zbliøony jest do 1†sekundy: ;podprogram inicjalizacji trybu ;pracy mikrokontrolera init_Ex2: ldi r16,(1<
86
out clr out out
pop out pop reti
;czone nie jest konieczne PORTB,r16 ;zapis ICR1H ;do portu B r16 TCNT1H,r16 ;zapis rejest;ru Temp TCNT1L,r16 ;a teraz jedno;czesny zapis 16-bitów ;rejestru TCNT1 równoważne ;z zerowaniem TCNT1 r16 SREG,r16 ;odtworzenie ;rejestru statusu i r16 r16
Inwersja wprowadzona przy pomocy rozkazu com r16 jest konieczne ze wzglÍdu na sposÛb pod³¹czenia diod LED: anod¹ do pozytywnego napiÍcia zasilania, katod¹ do wyprowadzenia portu. W†efekcie dioda†úwieci siÍ, gdy wyprowadzenie portu znajduje siÍ w†stanie niskim. Jest to stan odwrotny niø spodziewany intuicyjnie - cz³owiek oczekuje, øe ìjedynkaî logiczna oznacza zaúwiecon¹ diodÍ. Powyøsza implementacja ma jedn¹ powaøn¹ wadÍ: nie jest wskazywane przekroczenie zakresu pomiarowego.
Asynchroniczny Timer 2. Wywo³anie przerwania na skutek porÛwnania zawartoúci licznika Timera 2†z†wartoúci¹ zadan¹ Timer 2†moøe pracowaÊ w†trybie synchronicznym tak, jak Timer 0†i†Timer 1. Dodatkowo zosta³ wyposaøony w†tryb asynchroniczny opisywany juø wczeúniej. Przyk³ad ten pozkauje w†jaki sposÛb uøywaÊ funkcji porÛwnywania wartoúci timera z†wartoúci¹ zadan¹. Timer zostanie skonfigurowany w†taki sposÛb, øe warunek porÛwnania bÍdzie spe³niony co sekundÍ. Ta w³aúciwoúÊ moøe byÊ wykorzystana np.do budowy zegara. W†prezentowanym przyk³adzie wykorzystamy jednak, podobnie jak poprzednio, diodÍ LED pod³¹czon¹ do portu B, ktÛra bÍdzie migotaÊ z†czÍstotliwoúci¹ 0,5Hz. Ten przyk³ad programu wymaga pod³¹czenia rezonatora zegarkowego 32,768kHz do wyprowadzeÒ TOSC1 (PC6) i†TOSC2 (PC7). WartoúÊ nastaw wpisywana do rejestrÛw moøe byÊ wyliczona za pomoc¹ podanego wczeúniej rÛwnania. Zamiast wartoúci MaxVal wpisywanej do Timera 2†musi zostaÊ uøyta wartoúÊ OCR2. CzÍstotliwoúÊ zegara preskalera (PCK ) w†tym przypadku ma wartoúÊ pod³¹czonego z†zewn¹trz rezonatora kwarcowego, bit TOV musi byÊ ustawiany z†czÍstotliwoúci¹†1Hz. Korzystaj¹c z†powyøszych danych wyznaczymy wartoúÊ wpisywan¹ do rejestru ìcapture/ compareî. 1=TOVCK=
32,768 kHz f OSCCK = PVal ⋅ OCR2 PVal ⋅ OCR2
Wybrana wartoúÊ preskalera 1024 oraz wartoúÊ 32 wpisywana do rejestru OCR2 umoøliwia uzyskanie czÍstotliwoúci 1Hz. Teraz program, tradycyjnie zaczniemy od podprogramu nastaw timerÛw: init_Ex3:
ldi out
r16,1<
Podstawy PWM PWM jest skrÛtem od pochodz¹cej z†jÍzyka angielskiego nazwy Pulse Width Modulation (modulacja szerokoúci impulsu - rys. 3). Jest to specjalny tryb pracy, w†ktÛrym mog¹ pracowaÊ Timer 1†i†Timer 2. W†tym trybie timer pracuje jako licznik w†gÛrÍ lub w†dÛ³. Oznacza to, øe timer liczy w†gÛrÍ od 0†do wartoúci maksymalnej a†nastÍpnie w†dÛ³, z†powrotem do wartoúci 0. Cech¹ generatora PWM jest to, øe wype³nienie impulsÛw moøe byÊ zmieniane. Jeúli PWM jest skonfigurowane w†taki sposÛb, øe zmienia siÍ stan wyprowadzenia OCx (Output Compare), wÛwczas sygna³†ogl¹dany przy pomocy oscyloskopu na tym wyprowadzeniu, moøe wygl¹daÊ jak na rys. 2.
Elektronika Praktyczna 8/2003
K U R S Jeúli w†miejsce x i†y podstawimy odpowiednie wartoúci wyznaczaj¹ce czas trwania impulsÛw otrzymywanych przy pomocy naszego generatora PWM: x=OCRx ⋅ 2 y=(MaxVal–OCRx) ⋅ 2
otrzymamy nastÍpuj¹c¹ zaleønoúÊ umoøliwiaj¹c¹ wyznaczenie wartoúci napiÍcia wyjúciowego: V AV=
Rys. 3. Sygnał wyjściowy generatora PWM Filtr dolnoprzepustowy do³¹czony do wyjúcia generatora PWM o†parametrach dobranych do w³aúciwoúci generatora umoøliwi otrzymanie napiÍcia sta³ego na wyjúciu, zmieniaj¹cego siÍ w†zaleønoúci od wype³nienia doprowadzonego przebiegu, zamiast fali prostok¹tnej. RÛwnanie pokazuje w†jaki sposÛb moøna wyliczyÊ jego wartoúÊ: V AV=
(V H ⋅ x+VL ⋅ y) (x+y)
Elektronika Praktyczna 8/2003
(V H ⋅ OCRx + VL ⋅ (MaxVal – OCRx) MaxVal
Jak wynika z†powyøszej lektury, moøliwa jest budowa prostych przetwornikÛw cyfrowo - analogowych tylko z†wykorzystaniem generatora PWM i†prostego uk³adu filtru. Do takich aplikacji wrÛcimy jeszcze w†nastÍpnych odcinkach kursu.
Timer 2†jako 8-bitowy generator PWM Ten przyk³ad pokazuje w†jaki sposÛb naleøy skonfigurowaÊ Timer 2†aby mÛg³ on pracowaÊ jako generator PWM o†rozdzielczoúci 8†bitÛw. Nasz generator wytwarza³ bÍdzie falÍ prostok¹tn¹ o†napiÍciu niskim zbliøonym do GND i†wysokim zbliøonym do VCC. Do obserwacji wytworzonej fali ponownie uøyjemy
diody LED pod³¹czonej do wyprowadzenia OC2 (PD7). W†tym przyk³adzie rolÍ filtra ìuúredniaj¹cegoî wskazania diody bÍdzie spe³nia³o nasze oko, toteø efekt pracy generatora bÍdzie moøna zaobserwowaÊ jako zmianÍ jasnoúci úwiecenia diody. Wype³nienie sygna³u wyjúciowego PWM moøna zmieniaÊ siÍ od 1/8 do 7/8 (wartoúÊ OCR2 = 0xE0). W†tym przyk³adzie wyprowadzany sygna³ bÍdzie zanegowany ze wzglÍdu na sposÛb pod³¹czenia diody LED: init_Ex4: ; 8 bit PWM (Fck/510) ldi r16,(1<
87
PROJEKTY CZYTELNIKÓW Dział „Projekty Czytelników” zawiera opisy projektów nadesłanych do redakcji EP przez Czytelników. Redakcja nie bierze odpowiedzialności za prawidłowe działanie opisywanych układów, gdyż nie testujemy ich laboratoryjnie, chociaż sprawdzamy poprawność konstrukcji. Prosimy o nadsyłanie własnych projektów z modelami (do zwrotu). Do artykułu należy dołączyć podpisane oświadczenie, że artykuł jest własnym opracowaniem autora i nie był dotychczas nigdzie publikowany. Honorarium za publikację w tym dziale wynosi 250,− zł (brutto) za 1 stronę w EP. Przysyłanych tekstów nie zwracamy. Redakcja zastrzega sobie prawo do dokonywania skrótów.
Karta MultiIO − dodatkowe porty PAR i SER do Amigi AmigÍ standardowo wyposaøono w†jeden port rÛwnoleg³y i†jeden port szeregowy. Tak wiÍc przy pod³¹czaniu drukarki i†programatora (np. AVT996) czy modemu i†emulatora AVT-870 napotykamy na problemy. Jedynym wyjúciem jest prze³¹czanie wtyczek. Dodatkowy port PAR i†SER, zwany dalej kart¹ MultiIO rozwi¹øe ten problem.
Autor artykułu udostępnił bezpłatnie w Internecie (pod adresem: www.home.mck.pl/~r− mik/pio.htm) szereg dodatkowych informacji oraz oprogramowanie niezbędne do uruchomienia karty prezentowanej w artykule. Oprogramowanie publikujemy także na CD−EP8/2003B.
88
Schemat elektryczny interfejsu pokazano na rys. 1. NapiÍcie zasilania z†portu Clock po przejúciu przez bezpiecznik polimerowy i†odfiltrowaniu za pomoc¹ kondensatorÛw C1...C5 i†C13 zasila uk³ady na karcie portÛw. Magistrala danych i†adresowa z†magistrali procesora dostÍpnej na porcie Clock steruje bezpoúrednio uk³adami UART typu 16C550, CIA typu 8520, oraz GAL-em. Na magistrali danych z³¹cza Clock dostÍpne s¹ tylko cztery linie adresowe A2...A5. Problem dekodowania adresÛw rozwi¹zuje wspomniany uk³ad GAL koordynuj¹cy pracÍ kart do³¹czonych do Amigi. Przed dostÍpem do uk³adu na jakiejkolwiek karcie trzeba go zaadresowaÊ. GAL po wykryciu adresu przeznaczonego dla niego ($d8002d) i†niskim stanie na WR wpisuje dan¹ z†linii D16...D18 do wewnÍtrznego rejestru. Odczyt z†pod tego adresu spowoduje pojawienie siÍ ostatnio zapisanej tam informacji na wyjúciach trÛjstanowych Q16...Q18. Podczas tych operacji stroby CS_PAR i†CS_SER s¹ nieaktywne. Jeúli do portu Clock jest pod³¹czonych wiÍcej kart, kaødy z†uk³adÛw GAL zapamiÍta wys³an¹ dan¹ w†swoim rejestrze. Od tego momentu strob na linii CS_SER lub CS_PAR pojawi siÍ tylko wtedy, gdy wartoúÊ wpisana do GAL-a bÍdzie siÍ zgadza³a z†adresem przypisanym na sta³e do GAL-a. W†dalszym tekúcie wartoúÊ wpisana do rejestrÛw uk³adu GAL bÍdzie nazywana subadresem. Jak z†tego wynika, kaøda karta ma inaczej zaprogramowanego GAL-a. Rejestr GAL znajduje siÍ pod adresem $D8002D. Podczas zapisu pod ten adres pojawia siÍ wysoki poziom logiczny na wyprowadzeniu 22 uk³adu GAL, a†co za tym idzie na wejúciu Clock GAL-a. Powoduje to przepisanie danych z†szyny adresowej do wewnÍtrznego rejestru typu D†umiesz-
czonego w†strukturze GAL-a. WartoúÊ rejestru moøna takøe odczytaÊ. Podczas odczytu adresu $D8002D pojawia siÍ niski poziom na wyjúciu 15 uk³adu GAL, a†co za tym idzie na wejúciu OE steruj¹cym buforami trÛjstanowymi uk³adu GAL. Za spraw¹ sygna³u OE bufory zostan¹ otwarte i†zawartoúÊ rejestru GAL-a pojawi siÍ na magistrali adresowej. W†danej tej istotne s¹ tylko bity 0...3 pozosta³e naleøy zignorowaÊ. Uk³ad GAL generuje jeszcze sygna³ zegarowy E†oznaczany czÍsto jako O2 dla uk³adu 8520. Jak wiadomo, sygna³ ten jest charakterystyczny dla uk³adÛw Motoroli, ale niestety nie dostÍpny na z³¹czu Clock. Da siÍ go jednak odtworzyÊ na podstawie sygna³Ûw WR i†RD. Sygna³ E†przyjmuje poziom wysoki, gdy ktÛryú ze sygna³Ûw (RD lub WR) przyjmie poziom niski (rys. 2). Taki sposÛb odtworzenia sygna³u E†ma t¹ wadÍ, øe nie jest on generowany, gdy nie komunikujemy siÍ z†uk³adem, a†przez to nie dzia³aj¹ poprawnie wewnÍtrzne timery i†nie da siÍ ich wykorzystaÊ. Warto wspomnieÊ, øe pod adresem $D8002D znajduje siÍ jeden z†rejestrÛw uk³adu CIA, a†konkretnie rejestr TODHR. Ze wzglÍdu na to, øe na wejúcie TICK nie jest podany øaden sygna³ rejestr ten jest nieaktywny. Po wybraniu tego adresu nie jest generowany strob do uk³adu CIA dziÍki czemu odczyt rejestru uk³adu GAL nie jest zak³Ûcony. Bramy uk³adu CIA s¹ po³¹czone do z³¹cza portu rÛwnoleg³ego. Spostrzegawczy czytelnicy zauwaø¹, øe linie portu PB i†trzy linie portu PA s¹ po³¹czone z†portem rÛwnoleg³ym dok³adnie tak jak w†Amidze. DziÍki temu ³atwo zaadaptowaÊ istniej¹ce oprogramowanie tak, aby obs³ugiwa³o nowe porty. W†tym celu wystarczy zmieniÊ adresy portÛw. Pozosta³e linie po³¹czono z†stykami 14...17 portu, dziÍki
Projekt
112 czemu moøemy pracowaÊ w†trybach ECP/EPP. Linia PA7 steruje za³¹czaniem napiÍcia +5V na styku 14 portu, dziÍki czemu bÍd¹ dzia³a³y samplery i†inne urz¹dzenia wykorzystuj¹ce zasilanie z†tegoø styku. Ze wzglÍdu na sw¹ specyfikÍ sygna³ zeruj¹cy dla uk³adu UART naleøa³o zanegowaÊ. Niestety nie starczy³o wyprowadzeÒ uk³adu GAL i†naleøa³o zastosowaÊ dodatkowy tranzystor. Z†podobnych powodÛw uøyto tranzystora to sterowania lini¹ zg³oszenia przerwania. Dane w†standardzie TTL s¹ konwertowane do ±10 V w†uk³adzie MAX241E. Uk³ad ten ma budowÍ podobn¹ do MAX232 tyle, øe zawiera wiÍcej konwerterÛw i†wbudowane zabezpieczenie przed ESD.
Montaø i†uruchomienie Schemat montaøowy p³ytki pokazano na rys. 3. Montaø przeprowadzamy w†nietypowy sposÛb. Najpierw wlutowujemy uk³ad US4 ktÛry jest wykonany w†technologii SMD. ProponujÍ najpierw przylutowaÊ jedn¹ skrajn¹ nÛøkÍ. Po poprawnym u³oøeniu uk³adu na polach lutowniczych lutujemy pozosta³e wyprowadzenia. NastÍpnie wlutowujemy rezystory, podstawki pod uk³ady, z³¹cze CON1, tranzystory, kondensatory na koÒcu kwarc i†z³¹cza DB. Montaøu z³¹cz IDC trzeba poúwiÍciÊ nieco wiÍcej uwagi. Jest to spowodowane tym, øe zdobycie z³¹cz IDC22-2.0 jest beznadziejnie trudne. Pos³uøymy siÍ wiÍc z³¹czem typu IDC34-2.0, z†ktÛrego usuwamy po szeúÊ skrajnych wyprowadzeÒ. Naleøy zwrÛciÊ uwagÍ na odpowiednie umieszczenie wyciÍcia unie-
Elektronika Elektronika Praktyczna Praktyczna 8/2003 2/98
PROJEKTY CZYTELNIKÓW
Rys. 1
Elektronika Praktyczna 8/2003
89
PROJEKTY CZYTELNIKÓW
Rys. 2
moøliwiaj¹cego odwrotne umieszczenie wtyku w†gnieüdzie. Od taúmy FLAT34 oddzielamy 12 przewodÛw, dziÍki czemu pozostanie ich 22. Zaciskaj¹c wtyk od strony karty naleøy zwrÛciÊ uwagÍ na to, øe pierwsze i†ostatnie szeúÊ stykÛw jest pominiÍte. Pierwszy przewÛd taúmy jest zaciúniÍty na styku 7†wtyku IDC. Z³¹cze od strony komputera trzeba zacisn¹Ê inaczej. Zaciskamy je tak, aby styk pierwszy by³ po³¹czony z†pierwsz¹ øy³¹ taúmy, pozosta³e 13 stykÛw z³¹cza odcinamy (rys. 4). W†miejscu odciÍcia wskazane jest wpuszczenie kropli kleju, aby skleiÊ doln¹ i†gÛrn¹ czÍúÊ wtyku. W†przeciwnym razie moøe siÍ zdarzyÊ, øe wyrwiemy taúmÍ z†wtyku. Jest to spowodowane tym, øe w†odciÍtej czÍúci znajduje siÍ zatrzask spinaj¹cy obie czÍúci wtyku IDC342.0. TaúmÍ warto wykonaÊ d³uøsz¹. DziÍki temu jeúli bÍdziemy chcieli pod³¹czyÊ kolejn¹ kartÍ wystarczy na taúmie zaciskaÊ kolejne wtyki. Pod uk³ady scalone DIL montujemy podstawki. Uk³ad 8520 wystÍpuje w†obudowie DIL40 i†PLCC44.
P³ytka przystosowana jest do uk³adÛw DIL. Jeúli posiadamy uk³ad PLCC naleøy zastosowaÊ dodatkow¹ przejúciÛwkÍ. Po zmontowaniu karty, sprawdzeniu czy nie ma ewentualnych zwarÊ. Bez uk³adÛw umieszczonych w†podstawkach ³¹czymy kartÍ z†komputerem. Wszelkie operacje typu pod³¹czanie od³¹czanie karty czy wk³adanie wyjmowanie uk³adÛw z†podstawek wykonujemy przy wy³¹czonym zasilaniu komputera! Po w³¹czeniu zasilania komputer powinien wystartowaÊ, a†my moøemy sprawdziÊ obecnoúÊ napiÍÊ zasilaj¹cych na podstawkach pod uk³ady. Jeúli komputer nie startuje, oznacza to, øe mamy zwarcie na p³ytce. W†nastÍpnej kolejnoúci umieszczamy w†podstawce uk³ad GAL i†ponownie w³¹czamy zasilanie komputera. Uruchamiamy program TestGala Najpierw jest przeprowadzany test automatyczny, jeúli jego wynik bÍdzie pomyúlny program moøna zakoÒczyÊ. Gdy test wypadnie niepomyúlnie program przejdzie do interaktywnego testu rÍcznego. Podczas tego testu naleøy postÍpowaÊ zgodnie z†instrukcjami na ekranie. Gdy GAL funkcjonuje poprawnie moøna umieúciÊ wszystkie uk³ady w†podstawkach. Po urucho-
Rys. 4
mieniu programu Szukanie powinniúmy ujrzeÊ na ekranie adresy pod jakimi s¹ widziane uk³ady PAR i†SER. Jeúli posiadamy cztery z³¹cza Clock na karcie z†Zorro2 i†w†innym gnieüdzie znajduje siÍ jakaú karta, to program moøe odnaleüÊ takøe uk³ady na dodatkowych kartach. Do portu PAR pod³¹czmy drukarkÍ. Po za³¹czeniu zasilania komputera i†uruchomieniu programu Drukuj na drukarce powinien pojawiÊ siÍ tekst prÛbny. Do gniazda portu SER wk³adamy wtyczkÍ ze zwartymi wyprowadzeniami 2†i†3†po czym uruchamiamy program Terminal. Na ekranie powinny pojawiaÊ siÍ znaki naciskane na klawiaturze. Po tych zabiegach moøemy uznaÊ, øe karta jest sprawna. Jeøeli posiadamy wiÍcej kart MultiIO, to kaød¹ z†nich musimy testowaÊ osobno, tak aby podczas testu na wybranym porcie Clock by³a tylko jedna karta. Jest to spowodowane tym, øe z†powodu b³Ídu montaøowego rejestry uk³adÛw GAL na rÛønych kartach mog³yby mieÊ rÛøn¹ zawartoúÊ. Spowodowa³oby to pojawienie siÍ fa³szywych danych na magistrali. Podczas normalnej pracy sytuacja taka nie moøe mieÊ miejsca, poniewaø rejestry wszystkich uk³adÛw GAL zawieraj¹ ten sam subadres.
Oprogramowanie
Rys. 3
90
Do uruchomienia portu jest niezbÍdne oprogramowanie zawieraj¹ce sterownik do portu PAR, SER i†program przechwytuj¹cy dane wysy³ane na urz¹dzenie PRT (rys. 5). DziÍki temu wydruk moøna skierowaÊ na dodatkowy port PAR. Sterowniki moøna ustawiÊ na dowolny adres i†subadres karty. Konfiguro-
Rys. 5
wanie sterownikÛw jest dok³adnie opisane w†podrÍcznikach programowania Amigi. S³awomir Skrzyñski [email protected] Artur Gadowski, (SPIDI) [email protected] Autorem oprogramowania systemowego do karty jest Artur Gadowski (SPIDI) i†do niego proszÍ kierowaÊ pytania dotycz¹ce sterownikÛw.
WYKAZ ELEMENTÓW Rezystory R1: 1MΩ R2: 470Ω R3: 33Ω R4...R7: 10kΩ Kondensatory C1...C3, C5: 100nF C4, C6...C9, C13: 10uF/16V C10: 27pF C11: 33pF Q1: 11.0592MHz Półprzewodniki T1, T3: BC557 T2: BC547 US1: GAL22V10 US2: 8520 US3: 16C550 US4: MAX241E Różne FUSE: multifuse 500mA Parallel: złącze DB25F Serial: złącze DB9M Clock: złącze IDC MP22− 2.0mm 2szt. wtyków IDC FC22− 2.0mm 50cm taśma FLAT 2.0mm „Śledź" komputerowy z otworami na DB25 i DB9
Elektronika Elektronika Praktyczna Praktyczna 8/2003 2/98
B I B L I O T E K A
E P
W „Bibliotece EP” prezentujemy książki dotyczące zagadnień związanych z różnymi dziedzinami techniki, jednak zawsze przydatne w pracy elektronika lub pomocne w uprawianiu elektronicznego hobby. Nasza opinia jest oczywiście subiektywna, ale wynika z wieloletniego doświadczenia zawodowego i chyba jest zgodna z oczekiwaniami tych, którzy chcą z książek korzystać, a nie przyozdabiać nimi półki. Aby nie marnować miejsca w EP, nie będziemy publikować recenzji książek ocenianych na jedną lub dwie „lutownice”. Przyjęliśmy szeroką skalę ocen, aby ułatwić Czytelnikom orientację w potencjalnej przydatności książki. Uwaga! Większość prezentowanych książek można zamówić w Dziale Handlowym AVT (patrz str. 73). Chcemy w ten sposób udostępnić je Czytelnikom EP.
Anton Herner, Hans−Juergen Riehl „Elektrotechnika i elektronika w pojazdach samochodowych”, WKŁ 2003
Niezwyk³a ksi¹øka, o†treúci znacznie bogatszej niø sugeruje to jej tytu³. Autorzy na ponad 450 stronach zmieúcili przyjazny kurs podstaw elektrotechniki (prawa: Ohma i†Kirchoffa, po³¹czenia szeregowe i†rÛwnoleg³e, zasady dzia³ania elementÛw RLC itp.) i†elektroniki (w tym podstaw techniki cyfrowej), przedstawili podstawowe zasady obowi¹zuj¹ce podczas dokonywania pomiarÛw rezystancji, pr¹dÛw i†napiÍÊ (za pomoc¹ multimetru), a†takøe wykorzystania oscyloskopu podczas wykonywania nieco bardziej z³oøonych pomiarÛw. Wiele miejsca autorzy przeznaczyli takøe na omÛwienie symboliki, zasad tworzenia i†czytania schematÛw elektrycznych. Osobny rozdzia³ poúwiÍcono transmisji danych pomiÍdzy elementami systemu sterowania w†samochodzie, a†takøe nowoczesnym sposobom regulacji rÛønych parametrÛw urz¹dzeÒ stosowanych w†technice samochodowej. W†ksi¹øce nie zabrak³o oczywiúcie informacji o†uk³adach zap³ono-
wych i†wtryskowych, immobilizerach i†systemach alarmowych, rÛønego rodzaju uk³adach zwiÍkszaj¹cych bezpieczeÒstwo jazdy (ABS, ASR, ESP, blokada mechanizmu rÛønicowego, poduszki gazowe, napinacze pasÛw bezpieczeÒstwa itp.). NiezbÍdne informacje znajd¹ w†ksi¹øce takøe Ci Czytelnicy, ktÛrzy chc¹ poznaÊ tajniki dzia³ania urz¹dzeÒ podnosz¹cych komfort jazdy i†wygodÍ korzystania z†samochodu, jak np. klimatyzacja, elektryczne wspomaganie kierownicy, elektryczne sterowanie zmian¹ prze³oøeÒ skrzyni biegÛw, czujniki parkowania, zdalne sterowanie zamykaniem drzwi, szyb i†dachu, elektryczna regulacja lusterek, foteli i†po³oøenia kierownicy. Prezentowana ksi¹øka jest prawdziwym kompendium wiedzy dla wiÍkszoúci uøytkownikÛw wspÛ³czesnych samochodÛw, a†przede wszystkim dla elektronikÛw zajmuj¹cych siÍ elektronik¹ samochodow¹. Øaden z†prezentowanych tematÛw nie zosta³ zg³Íbiony w†stopniu umoøliwiaj¹cym potraktowanie ksi¹øki jak instrukcji serwisowej, ale zawarta w†niej wiedza daje dobry pogl¹d na moøliwoúci wspÛ³czesnej elektroniki i†elektrotechniki samochodowej. Ksi¹økÍ przet³umaczono z†jÍzyka niemieckiego. Trzeba przyznaÊ,
øe t³umacz dobrze wywi¹za³ siÍ z†zadania, jedyne w¹tpliwoúci budz¹ ìoryginalneî nazwy przypisane niektÛrym elementom elektronicznym, szczegÛlnie przerzutnikom (ca³kowicie nieadekwatne do spe³nianych funkcji) - czytelnik ìzmagaî siÍ bowiem z†uk³adami relaksacyjnymi. Mimo tego - piÍÊ lutownic! Andrzej Gawryluk
○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○
Wojciech G³ocki ìUk³ady cyfroweî, WSiP
Jest to zatwierdzony przez MENiS podrÍcznik dla úrednich szkÛ³ zawodowych, w†ca³oúci poúwiÍcony przybliøeniu pocz¹tkuj¹cym podstaw techniki cyfrowej. Uk³ad ksi¹øki jest klasyczny: autor zaczyna od wyjaúnienia co to jest technika cyfrowa i†przedstawienia
Elektronika Praktyczna 8/2003
rÛønych systemÛw liczbowych oraz podstaw arytmetycznych algebry Boole a. NastÍpnie przedstawiono charakterystykÍ i†sposoby tworzenia (w tym metod minimalizacji) uk³adÛw kombinacyjnych, zasadÍ dzia³ania i†rodzaje uk³adÛw synchronicznych. Sporo miejsca autor przeznaczy³ takøe na omÛwienie budowy, technologii produkcji uk³adÛw cyfrowych (rÛøne rodziny uk³adÛw TTL i†CMOS) i†wynikaj¹cych z†niej parametrÛw elektrycznych i†czasowych.
Pewne w¹tpliwoúci budzi ostatnia czÍúÊ ksi¹øki (rozdzia³ 16), w†ktÛrej autor przedstawia budowÍ i†omawia zasadÍ dzia³ania mikroprocesora. Zaskakuj¹cy jest jego wybÛr - opisano bowiem mikroprocesor 8080 (dok³adniej - jego polski odpowiednik MCY7880), ktÛry ze wzglÍdu na specyficzn¹ budowÍ nie ma odpowiednika we wspÛ³czesnej elektronice. Uwaøam, øe jest to niepotrzebny archaizm, utrudniaj¹cy mniej wprawnemu czytelnikowi (g³Ûwnie do takich jest ksi¹øka
119
B I B L I O T E K A
E P Legenda:
ksi¹øka wybitna, polecamy!
ksi¹øka o†duøych walorach praktycznych, polecamy!
moøe siÍ przydaÊ
daleka od doskona³oúci
jest kierowana) wyrobienie sobie zdania co do moøliwoúci wspÛ³czesnej techniki cyfrowej. O†ile pierwsze czÍúci ksi¹øki s¹ warte polecenia, to rozdzia³ 16 wymaga ca³kowitej przebudowy. Interesuj¹cym uzupe³nieniem treúci ksi¹øki s¹ przyk³adowe projekty (dokumentacja na poziomie schematÛw elektrycznych udostÍpnionych w†postaci wk³adki do ksi¹øki): testera pamiÍci i†cyfrowego stopera. Podsumowuj¹c: niez³a ksi¹øka dla pocz¹tkuj¹cych elektronikÛw, ktÛrzy chc¹ poznaÊ technikÍ cyfrow¹ ìod úrodkaî. Miko³aj Andrus
sk³adania lub modyfikowania komputera ksi¹øka moøe siÍ okazaÊ nieoceniona. OprÛcz ìklasycznychî zagadnieÒ takich jak budowa PC-ta, budowa i†typy p³yt g³Ûwnych, rodzaje pamiÍci stosowanych w†komputerach, rodzaje i†moøliwoúci interfejsÛw stosowanych do do³¹czania dyskÛw twardych, czy prezentacji funkcji BIOS-u, autor przystÍpnie opisa³ typowe interfejsy I/O wraz ze stosowanymi typami z³¹cz (w tym IEEE1394) oraz karty graficzne i†düwiÍkowe. Tomasz Jastrun
nie warto kupowaÊ ki zajmuj¹ schematy elektryczne instalacji jednoúladÛw i†to zarÛwno produkowanych niegdyú w†naszym kraju, jak i†wielu ìrasowychî jak np. Honda Goldwing czy Suzuki GSX R1100. Andrzej Gawryluk
Rafa³ Dmowski ìMotocyklowe instalacje elektryczneî, WK£2003
Scott Mueller ìRozbudowa i†naprawa komputerÛw. Kompendiumî, Helion 2003
Kolejna w†ofercie Wydawnictwa Helion ksi¹øka poúwiÍcona komputerom ìod úrodkaî. Jest to kompleksowa i†kompetentna prezentacja tego interesuj¹cego zagadnienia, przy czym ze wzglÍdu na ograniczon¹ objÍtoúÊ ksi¹øki - niestety - doúÊ pobieøna. Z†tego powodu jej przydatnoúÊ dla elektronikÛw jest ograniczona, choÊ podczas
120
Jest to pierwsza znana nam, wydana w†jÍzyku polskim ksi¹øka o†instalacjach elektrycznych w†motocyklach i†motorowerach. Po krÛtkim wstÍpie (elektryczno-elektronicznym) autor przechodzi od razu do rzeczy, zajmuj¹c siÍ kolejno poszczegÛlnymi fragmentami typowych instalacji elektrycznych stosowanych w†jednoúladach, przy czym wiÍkszoúÊ zagadnieÒ pokazano na przyk³adach konkretnych pojazdÛw. Niemal po³owÍ objÍtoúci ksi¹ø-
Elektronika Praktyczna 8/2003
A U T O M A T Y K A
Laserowe czujniki odleg³oœci firmy Baumer Electric Szwajcarska firma Baumer Electric posiada w swojej ofercie szerok¹ gamê czujników przemys³owych do pomiaru odleg³oœci. Na miano najbardziej uniwersalnych zas³uguj¹ czujniki fotoelektryczne z wyjœciem analogowym serii OADM. W niniejszym artykule przybli¿ymy zasadê pomiaru triangulacyjnego oraz wynikaj¹ce z niego zalety i niedogodnoœci. Zasada dzia³ania fotoelektrycznych czujników OADM jest doœæ prosta i przedstawiono j¹ na rys. 1. Œwiat³o lasera odbite od mierzonej powierzchni przechodzi przez soczewkê i trafia na matrycê fotoelektryczn¹. W wycofanych z produkcji przed dwoma laty szybkich (czas reakcji <1 ms) czujnikach z przetwornikiem PSD, du¿e trudnoœci sprawia³ pomiar sygna³u odbitego od powierzchni silnie poch³aniaj¹cych œwiat³o. Zastosowanie w tym miejscu macierzy CCD skutkuje zwiêkszeniem dok³adnoœci pomiaru na strukturach porowatych i bardzo ciemnych. Matryca ta ma jedynie 128 punktów, jednak za pomoc¹ obróbki matematycznej sygna³u z s¹siaduj¹cych punktów matrycy mo¿na uzyskaæ ³¹cznie 8192 punkty. Jak mo¿na zauwa¿yæ w metodzie triangulacyjnej (rys. 2) wraz z oddaleniem obiektu od czujnika, zmniejsza siê iloœæ œwiat³a odbitego od powierzchni, ponadto du¿e zmiany w po³o¿eniu obiektu wywo³uj¹ ma³e zmiany po³o¿enia wi¹zki œwietlnej na matrycy. Skutkiem tego jest pogarszanie siê rozdzielczoœci pomiaru przy wiêkszych odleg³oœciach. Jedynym wyjœciem jest zawê¿enie zakresu pomiarowego do obszaru, w którym rozdzielczoœæ nie spada poni¿ej zadanej wartoœci lub do³¹czenie do czujnika wykresu obrazuj¹cego znamionow¹ rozdzielczoœæ w funkcji odleg³oœci. Pierwsze rozwi¹zanie jest stosowane w standardowej serii OADM 20I4xxx, a drugie np. w szybkiej serii OADM 20I6xxx. Przyk³adowe charakterystyki rozdzielczoœci i b³êdu liniowoœci w funkcji odleg³oœci i zakresu pomiarowego dla czujników serii OADM20I6x60/S14F zamieszczono na rys. 3.
Rys. 1. Zasada działania czujników odległości
122
Rys. 2. Charakterystyka czułości metody triangula− cyjnej Z charakterystyk tych mo¿na równie¿ odczytaæ, jak¹ uzyskamy rozdzielczoœæ przy zawê¿aniu zakresu pomiarowego (ZP), bowiem czujniki serii OADM20I6xxx wyposa¿one zosta³y w funkcjê „uczenia” (teach-in). Baumer aktualnie wprowadza zunifikowan¹ metodê uczenia do wszystkich swoich
Rys. 3. Wykresy zależności rozdzielczości i błędu liniowości w funkcji mierzonej odległości
Elektronika Praktyczna 8/2003
A U T O M A T Y K A Tab. 1. Zestawienie podstawowych parametrów czujników odległości firmy Baumer Electric Zakres pomiarowy
OADM 20I4...... ton < 10 ms Laser-Point Laser-Line RS485 30...50 mm 30...130 mm 50...250 mm 100...500 mm
Rozdzielczoæ NOWOŒÆ
0,01 mm 0,06 mm 0,3 mm 0,5 mm OADM 20I6...... ton < 0,9 ms Teach-InLaser-Point Laser-Line
Zakres pomiarowy Rozdzielczoæ NOWOŒÆ Zakres pomiarowy Rozdzielczoæ
30...70 mm
30...130 mm
50...300 mm
100...600 mm
0,004...0,02 mm 0,005...0,06 mm 0,01...0,33 mm 0,015...0,67 mm OADM 21I6...... ton < 10 ms Teach-In Laser-Point Laser-Line
200...1000 mm 3 mm 200...1000 mm 0,12...3 mm 200...1000 mm
Zakres pomiarowy
0,03...0,7 mm OADM 12I6...... 12I6......ton < 0,9 ms Teach-In Laser-Point 15...26 mm 15...120 mm Czujnik w fazie projektowania
Rozdzielczoæ
0,002..0,005 mm
0,002..0,1 mm
czujników analogowych. Polega ona na mo¿liwoœci zawê¿enia zakresu pomiarowego (dolna i górna wartoœæ) odpowiadaj¹cemu pe³nemu zakresowi wartoœci wyjœciowej oraz umo¿liwia inwersjê tak zaprogramowanej charakterystyki (rys. 4). Wszystkie powy¿sze funkcje mo¿na zaprogramowaæ za pomoc¹ jednego przycisku lub wejœcia napiêciowego. Procedura uczenia jest nastêpuj¹ca: - nacisn¹æ przycisk przez 5 sekund (czerwona LED zacznie migaæ), - zwolniæ przycisk, - umieœciæ obiekt w odleg³oœci odpowiadaj¹cej 0 V (4 mA) na wyjœciu, - krótko nacisn¹æ przycisk (odczyt pozycji 1), LED powinna mign¹æ, - umieœciæ obiekt w odleg³oœci odpowiadaj¹cej 10 V (20 mA) na wyjœciu, - krótko nacisn¹æ przycisk (odczyt pozycji 2).
Rys. 4. Czujniki odległości firmy Baumer można “uczyć” m.in. poprzez zawężenie zakresu pomiaro− wego odpowiadającego pełnemu zakresowi war− tości wyjściowej oraz umożliwia inwersję jego cha− rakterystyki
Elektronika Praktyczna 8/2003
Rys. 6. Jedną z możliwych aplikacji jest pomiar napeł− niania szpuli z drutem Po wykonaniu powy¿szych kroków, czujnik jest gotów do pracy. Przez oko³o 5 minut po ostatniej procedurze uczenia lub do chwili ponownego w³¹czenia zasilania czujnik nie reaguje na polecenia z przycisku „Teach-in” , co ma zapobiec przypadkowemu przeprogramowaniu. Laserowe czujniki odleg³oœci produkowane przez Baumer mo¿na podzieliæ na kilka serii. W tabeli 1 zestawiono charakterystyczne parametry. Wszystkie urz¹dzenia s¹ oparte o tê sam¹ technikê pomiaru (triangulacja) i wyposa¿one w mikroprocesor, który oblicza wartoœæ wyjœciow¹ z uwzglêdnieniem panuj¹cych warunków otoczenia, która jest zamieniana na wartoœæ analogow¹ przez 16-bitowy przetwornik cyfrowo-analogowy. U¿ytkownik ma mo¿liwoœæ wyboru pomiêdzy wyjœciem analogowym napiêciowym i pr¹dowym. Po za³¹czeniu zasilania, obwód wyjœciowy czujnika sprawdza ci¹g³oœæ pêtli pr¹dowej i jeœli nie jest ona zamkniêta, po 100 ms aktywuje wyjœcie napiêciowe 0-10 V. Czujniki Laserpoint maj¹ oœwietlacz laserowy wysy³aj¹cy promieniowanie postaci okr¹g³ej wi¹zki – jest to podstawowa, uniwersalna wersja czujnika. Czujniki z oœwietlaczem Laser-line wysy³aj¹ wi¹zkê o kszta³cie linii (rys. 5). Sensor CCD “widzi” odbite od nierównej powierzchni œwiat³o liniowego oœwietlacza jako przebieg o nieregularnym kszta³cie. Mikroprocesor na podstawie rozk³adu œwiat³a na matrycy wylicza œredni¹ odleg³oœæ od obiektu. Rozwi¹zanie to jest dedykowane do pomiarów odleg³oœci od nierównych, chropowatych powierzchni, a tak¿e do powierzchni, w której wystêpuj¹ otwory. Przyk³adowe aplikacje to pomiar nape³niania szpuli z drutem (rys. 6), pomiar odleg³oœci od siatek metalowych o drobnych oczkach lub p³ytek PCB z nawierconymi otworami.
Rys. 5. Czujniki z oświetlaczem Laser−line wysyłają wiązkę światłą w postaci pojedynczej linii
123
A U T O M A T Y K A Sensory o czasie odpowiedzi <10 ms mog¹ byæ wyposa¿one w interfejs RS485, za pomoc¹ którego mo¿na dokonywaæ odczytu wartoœci, zadawaæ dwa progi prze³¹czenia wyjœcia dwustanowego, zatrzymywaæ w rejestrze aktualn¹ wartoœæ (funkcja hold) odczytywaæ czas migawki itp. Dodatkowo szybkie wersje czujników s¹ wyposa¿one w wejœcie synchronizuj¹ce, za pomoc¹ którego poprzez zewnêtrzny zegar mo¿na sterowaæ prac¹ kilku czujników pracuj¹cych w niewielkiej odleg³oœci od siebie. Podczas produkcji, do wewnêtrznej pamiêci ka¿dego z czujników s¹ wprowadzane wspó³czynniki korekcji formu³ obliczeniowych wartoœci wyjœciowej. Dla ka¿dego czujnika indywidualnie wyznaczane s¹: tabela korekcji liniowoœci oraz wspó³czynniki kompensacji temperaturowej. Zabiegi te skutkuj¹ znakomit¹ liniowoœci¹ czujnika w pe³nym zakresie pomiarowym, która jest w bardzo ma³ym stopniu zale¿na od koloru i rodzaju powierzchni. Z doœwiadczeñ przeprowadzonych przez niezale¿ne laboratorium DASFOS v.o.s. (Republika Czeska) wynika, ¿e dla pomiarów przeprowadzonych w temperaturze +20oC uzyskane odchy³ki s¹ dwukrotnie mniejsze od deklarowanych przez producenta. Na koniec kilka s³ów o projektowanym czujniku OADM serii 12 (rys. 7). Jego produkcja ma siê rozpocz¹æ w 2004 roku i jak widaæ z tab. 1 bêdzie to najdok³adniejszy, a zarazem najmniejszy czujnik Baumera. Wymiary gabarytowe tego modelu to 37x35x12 mm. Elementem czujnikowym bê-
124
Rys. 7. Standardowy czujnik serii OADM 20 oraz najnowsza wersja OADM 12 (po lewej) dzie matryca CCD, a wbudowany szybki procesor umo¿liwi wykonywanie szybkich pomiarów. Na razie planowana jest tylko wersja Laser-point z wyjœciem pr¹dowym 4...20 mA. Tomasz Œliwakowski, Amtek
Dystrybutorem firmy Baumer jest Amtek spol. s r.o., tel. (22) 874-02-34, [email protected], www.amtek.cz.
Elektronika Praktyczna 8/2003
A U T O M A T Y K A
QNX Momentics Praca z pakietami BSP
Artyku³ ma na celu przybliøenie Czytelnikom tematyki tworzenia wbudowanych obrazÛw systemowych w oparciu
Era Momenticsa Wprowadzenie do sprzedaøy w†czerwcu 2002 roku pierwszej komercyjnej wersji pakietu QNX Momentics okaza³o siÍ trafionym posuniÍciem. Oprogramowanie odnios³o duøy sukces i†obecnie ma spore szanse zostania jednym z†najlepszych narzÍdzi programistycznych w†kategorii systemÛw czasu rzeczywistego. Dynamiczny rozwÛj poparty szeregiem ì³atekî, aktualizacji, nowych wersji oprogramowania oraz dodatkowych pakietÛw kreuje obraz godnego zaufania produktu, i†to pomimo tak m³odego wieku (na rynku nieco ponad rok). Obecnie swÛj rozkwit przeøywaj¹ kompletne, zintegrowane úrodowiska programistyczne (QNX Momentics, Tornado II...). Trwa nieustaj¹cy wyúcig w†ulepszaniu oraz rozbudowywaniu narzÍdzi, a†producenci dok³adaj¹ wszelkich staraÒ, aby ich programy narzÍdziowe by³y jak najbardziej uniwersalne oraz ³atwe w†uøyciu i†nauce. I†tak dla przyk³adu zestaw QNX Momentics zawiera: system operacyjny QNX Neutrino (obecnie w†wersji 6.2.1), úrodowisko graficzne Photon wraz z†programem do tworzenia aplikacji okienkowych (phAB), zintegrowane úrodowisko programistyczne IDE, narzÍdzia do pisania w³asnych sterownikÛw DDK, pakiety BSP, biblioteki i†narzÍdzia GNU, instruktaøowe klipy wideo, obszern¹ dokumentacjÍ oraz szereg kodÛw ürÛd³owych. Nasz¹ uwagÍ, w†dalszej czÍúci artyku³u skupimy na dedykowanych zestawach BSP.
wej. Pocz¹wszy od QNX Momentics 6.2.0 (17 pakietÛw dla 25 popularnych platform), liczba zestawÛw stale roúnie i†aktualna ich lista znajduje siÍ pod adresem: http://www.qnx.com/products/ ps_bsps. Zanim przejdziemy do omawiania przyk³adowego pakietu BSP musimy zatrzymaÊ siÍ na chwilÍ przy analizie sekwencji bootowania systemu operacyjnego.
Bootowanie systemu operacyjnego QNX Neutrino Co dzieje siÍ podczas bootowania? Jakie komponenty s¹ wymagane dla poprawnego za³adowania systemu? W†odpowiedzi na te pytania pomoøe nam schemat inicjacji systemu operacyjnego QNX Neutrino przedstawiony na rys. 1. Po w³¹czeniu zasilania, resecie sprzÍtowym b¹dü programowym procesor zaczyna wykonywaÊ instrukcje kodu spod specyficznego dla danej architektury adresu (reset vector ) . K o d e m t y m m o ø e b y Ê BIOS, ROM monitor, ewentualnie inicjuj¹cy program ³aduj¹cy IPL (Initial Program Loader). Pierwszy scenariusz, typowy dla komputerÛw klasy PC jest naj³atwiejszy w†realizacji, poniewaø wszystkie czynnoúci konfiguracyjne wykonywane s¹ z†poziomu BIOS-u. BIOS zwykle przeprowadza wstÍpn¹ diagnostykÍ oraz ustawia poszczegÛlne urz¹dzenia sprzÍtowe. W†nastÍpnym etapie BIOS znajduje swoje rozszerzenia (kontroler dysku twardego, boot
o†narzÍdzia zestawu programistycznego QNX Momentics. G³Ûwny nacisk po³oøono przede wszystkim na wykorzystanie pakietÛw BSP stanowi¹cych niezbÍdne, fundamentalne wsparcie przy opracowywaniu w³asnego projektu dla specyficznej platformy docelowej.
ROM karty sieciowej itp.) oraz skacze do nich w†celu wykonywania dalszego ci¹gu programu. Po wykonaniu skoku nastÍpuje za³adowanie obrazu systemowego do pamiÍci (np. z†dysku twardego) i†przekazanie kontroli programowi startup. ROM monitor jest specjalnym oprogramowaniem sprzÍtowym (firmware), zapisywanym do pamiÍci
Co to jest BSP? Pakiet BSP (Board Support Package ) jest zestawem kodÛw ürÛd³owych, plikÛw binarnych, konfiguracyjnych oraz kreatorÛw maj¹cych za zadanie uruchomienie systemu operacyjnego wraz z†kompletn¹ obs³ug¹ wszystkich urz¹dzeÒ docelowej platformy sprzÍto-
Elektronika Praktyczna 8/2003
Rys. 1. Sekwencja inicjowania systemu QNX Neutrino
125
A U T O M A T Y K A
Rys. 2. Start systemu z wykorzysta− niem programu ładującego IPL Flash w†procesie produkcji urz¹dzenia. Przewaønie oprogramowanie sprzÍtowe obs³uguje: transfer danych przez port szeregowy (protokÛ³ Xmodem/Ymodem), sieÊ Ethernet (klient TFTP), proste operacje na pamiÍci (wyúwietlanie, usuwanie i†zapis) oraz kilka wariantÛw debugowania niskiego-poziomu. ROM monitor wgrywany jest z†regu³y za pomoc¹ programatora pamiÍci b¹dü teø interfejsu JTAG. ZarÛwno w†pierwszym jak i†drugim przypadku wiÍkszoúÊ czynnoúci konfiguracyjnych zostaje wykonana przez BIOS b¹dü ROM-monitor. Taki rodzaj inicjacji nazywamy gor¹cym startem.
Start systemu z†wykorzystaniem inicjuj¹cego programu ³aduj¹cego IPL Podczas zimnego startu systemu nic nie jest zainicjowane oraz ustawione. Procesor i†ca³a reszta sprzÍtu jest po prostu ponownie przywracana do swoich ustawieÒ domyúlnych. W†jaki zatem sposÛb dokonywana jest inicjacja systemu? Procedura konfiguracji oraz ³adowania systemu zosta³a podzielona na dwa etapy: IPL i†startup. Pierwszym krokiem wykonywanym przez oprogramowanie jest wgranie obrazu systemu przez program ³aduj¹cy IPL. Ponadto zadaniem IPLa jest dokonanie minimalnej konfiguracji sprzÍtowej, ktÛra umoøliwi w†konsekwencji przejúcie do drugiego etapu - uruchomienia programu startup. Kod programu IPL zosta³ rozbity na dwa programy, ktÛre podczas kompilacji s¹ ³¹czone w†jeden plik wynikowy. Pierwszy z†nich (napisany ca³kowicie w†asemblerze) jest odpowiedzialny za utworzenie úrodowiska dla programu startup,
126
a†mianowicie konfiguracji: zegarÛw, GPIO, kontrolera pamiÍci i/lub kontrolera PCI. Ostatecznie program ³aduj¹cy skanuje pamiÍÊ FLASH w†poszukiwaniu obrazu, weryfikuje go oraz wgrywa do pamiÍci RAM. W†przypadku nie znalezienia obrazu systemowego IPL umoøliwia jego wgranie poprzez port szeregowy (protokÛ³ sendnto). Po przekazaniu kontroli do programu startup, wykonywane s¹ dalsze czynnoúci konfiguracyjne sprzÍtu: jednostki MMU, czasomierza systemowego, kontrolera przerwaÒ oraz strony systemowej (czas, data, iloúÊ pamiÍci, typ procesora, koprocesora i†szyny sprzÍtowej). Gdy juø wszystkie urz¹dzenia s¹ poprawnie ustawione startup przekazuje kontrolÍ nastÍpnemu programowi obrazu systemowego procnto - czyli po prostu uruchamia system operacyjny. Mikroj¹dro systemu QNX Neutrino wraz z†Zarz¹dc¹ ProcesÛw uruchamiaj¹ pozosta³e pliki wykonawcze (aplikacje, sterowniki, protoko³y itp.) wyszczegÛlnione w†skrypcie startowym. Uproszczony proces ³adowania systemu pokazano na rys. 2.
Praca z†pakietem BSP Przyk³adowy pakiet dla platformy Intel a PXA250TMDP BSP zawiera: - kod ürÛd³owy: IPL, startup, sterownika kontrolera düwiÍku, systemu plikÛw flash oraz wszystkich dodatkowych bibliotek, - sterowniki do pozosta³ych urz¹dzeÒ (w postaci binarnej): portu szeregowego, karty sieciowej, graficznej oraz ekranu dotykowego, - szereg kreatorÛw (pliki makefile) oraz dodatkowe pliki konfiguracyjne - np. plik na podstawie ktÛrego generowany jest obraz systemowy (Buildfile).
W†jaki sposÛb naleøy rozpocz¹Ê pracÍ z†pakietem BSP? Schemat ideowy pracy z†zintegrowanym zestawem programistycznym QNX Momentics przedstawiono rys. 3. Przyk³adowo dla úrodowiska programistycznego QNX Neutrino 6.2.1 zestawy BSP zainstalowane s¹ w†nastÍpuj¹cym katalogu /usr/src/
bsp-6.2.1 oraz podzielone s¹ na dwa obszary: specyficznej platformy /usr/src/bsp-6.2.1/procesor/platforma i†bibliotek (np. biblioteka IPL, biblioteka startup) /usr/src/bsp6.2.1/libs. Ponadto dla kaødej platformy wyrÛøniamy: - /usr/src/bsp-6.2.1/procesor/platforma/src -> katalog z†kodami ürÛd³owymi: IPL, startup, systemu plikÛw Flash, serwera PCI itp., - /usr/src/bsp-6.2.1/procesor/platforma/scratch -> katalog ten zawiera pliki wynikowe utworzone poleceniem make install wywo³anym w†katalogu src, - /usr/src/bsp-6.2.1/procesor/platforma/images -> katalog zawieraj¹cy makefile, pliki ìbuduj¹ceî (build files), opisowe oraz dodatkowe skrypty, - /usr/src/bsp-6.2.1/procesor/platforma/prebuilt -> katalog ten uøywany jest podczas pierwszego wywo³ania komendy make na poziomie katalogu procesor/platforma.
Praca z†pakietem BSP w†zintegrowanym úrodowisku programistycznym IDE Korzystaj¹c z†kreatora naleøy utworzyÊ nowy projekt (Standard Make C†Projekt) oraz zaimportowaÊ do niego ca³¹ zawartoúÊ katalogu / usr/src/bsp-6.2.1/procesor/board/ (w przypadku pracy ze ürÛd³ami danej platformy) b¹dü teø /usr/src/bsp6.2.1/libs (praca z†bibliotekami). Wynikowe pliki binarne (IPL, obraz systemowy) mog¹ byÊ przesy³ane do urz¹dzenia za pomoc¹ portu szeregowego (protokÛ³ sendnto). Ponadto IDE posiada wbudowany serwer TFTP umoøliwiaj¹cy transfer danych poprzez sieÊ Ethernet. Tworzenie w³asnych, bootowalnych obrazÛw systemowych dla pamiÍci Flash wspomaga w†duøym stopniu narzÍdzie System Builder. Wystarczy klikn¹Ê na ø¹danym komponencie, a†System Builder sprawdzi zaleønoúci oraz automatycznie do³¹czy wszystkie wymagane elementy sk³adowe (biblioteki, itp.). Istnieje rÛwnieø moøliwoúÊ redukcji rozmiaru danej biblioteki do pliku zawieraj¹cego minimalny zbiÛr funkcji uøywanych w†naszym systemie docelowym.
Elektronika Praktyczna 8/2003
A U T O M A T Y K A
Rys. 3. Praca z zestawem QNX Momentics
Plany na przysz³oúÊ Na pocz¹tku lipca ukaza³ siÍ nowy, poszerzaj¹cy moøliwoúci systemu pakiet - QNX Momentics 6.2.1B PE. Nowoúci¹ jest zestaw narzÍdzi wspomagaj¹cych zarz¹dzanie energi¹ (Power Management). Zcentralizowane sterowanie zasilaniem umoøliwia projektantom pe³n¹ kontrolÍ stanu zasilania ca³ego systemu, jaki i†poszczegÛlnych jego komponentÛw sk³adowych. Zestaw specjalnych funkcji pozwala przechwytywaÊ interakcje pomiÍdzy jednostk¹ zarz¹dzaj¹c¹ a†wszystkimi urz¹dzeniami systemu. Producent systemu QNX Software Systems Ltd. zapowiada agresywn¹ politykÍ rozwoju pakietÛw BSP. W†III kwartale ukaø¹ siÍ zestawy wspieraj¹ce nowe procesory Intela (IXCDP 1100, IXDP 425 oraz IXDP 2400), Broadcoma (BCM 91125E, BCM 91250E i†BCM 5690) Motoroli itp. stworzone z†myúl¹ o†segmencie sieciowym. Rynek motoryzacyjny rÛwnieø rozwija siÍ w†podobnym tempie i†wkrÛtce moøemy siÍ spodziewaÊ miÍdzy innymi nastÍpuj¹cych zestawÛw BSP: Hitachi Big Sur/Amanta, Hitachi SH 7760, Hitachi SystemH, Motorola ìRedboxî - Power PC 823e, Motorola MGT 5100. Na koniec tego roku zapowiadana jest kolejna wersja systemu QNX Momentics 6.3.0 z†nowymi kompilatorami GCC 3.x, obs³ug¹ USB 2.0, zewnÍtrznych urz¹dzeÒ dyskowych podpinanych przez interfejs USB oraz nowego úrodowiska programistycznego (Red Hat Linux 7.x/8.x).
Elektronika Praktyczna 8/2003
Druga po³owa roku 2003 zapowiada siÍ naprawdÍ interesuj¹co.
ZawartoúÊ CD Na CD-ROM-ie do³¹czonym do czasopisma (wy³¹cznie w†wersji EPo/oL) znajduje siÍ najnowsza, przeznaczona do zastosowaÒ niekomercyjnych wersja zestawu programistycznego QNX Momentics 6.2.1 NC. W†sk³ad pakietu wchodz¹: system operacyjny QNX Neutrino 6.2.1, úrodowisko graficzne Photon wraz z†programem Photon Application Builder, narzÍdzia do tworzenia w³asnych sterownikÛw DDK s (z kodami ürÛd³owymi po jednym na dan¹ klasÍ), biblioteki ANSI C†oraz narzÍdzia wiersza poleceÒ GNU dla platformy docelowej x86 oraz ARM (kompilator GCC v2.95x, GDB 5.x, Binutils 2.10.x). Dla wszystkich zainteresowanych tworzeniem w³asnych aplikacji dla platformy docelowej ARM interesuj¹ce uzupe³nienie stanowi pakiet BSP przeznaczony do instalacji na komputerach podrÍcznych iPAQ (iPAQ Reference Platform) z†procesorem StrongARM SA-1110. SposÛb instalacji systemu oraz konfiguracji skrosowanej platformy programistycznej zosta³ opisany szerzej na stronie: http://www.qnxzone.com/ipaq. Jacek Rudnicki, KTT Quantum [email protected] Dodatkowe informacje Artyku³ powsta³ na podstawie materia³ów udostêpnionych przez firmê Quantum, tel. (71) 362-63-56, www.quantum.com.pl.
127
P R O G R A M Y
Nowości Nowości w w pakiecie pakiecie LabView, LabView, część część 22 Najnowsz¹ wersjÍ LabView moøna bez trudu zakwalifikowaÊ do grona awangardowych narzÍdzi, ktÛre kreuje nowe trendy i†wyznacza szlaki, ktÛrymi z†pewnoúci¹ pod¹ø¹ takøe inni producenci. O†kilku najbardziej spektakularnych nowoúciach wprowadzonych do LabView 7†piszemy w†artykule, ktÛrego pierwsz¹ czÍúÊ opublikowaliúmy w†EP7/2003.
7
LabView Najbardziej spektakularne z†punktu widzenia elektronika - nowoúci opisaliúmy w†poprzednim numerze EP. OprÛcz nich, w†LV7 pojawi³o szereg innych udoskonaleÒ, dziÍki ktÛrym m.in. udoskonalono wspÛ³pracÍ tworzonych aplikacji z†interfejsami sieciowymi (wprowadzono m.in. moøliwoúÊ wysy³ania e-maili z†dynamicznie two-
rzonymi komunikatami), wprowadzono rozbudowane mechanizmy autodiagnostyki i†samoczynnej obs³ugi wykrywanych b³ÍdÛw, do dyspozycji uøytkownika oddano takøe predefiniowane zdarzenia (umoøliwiaj¹ce m.in. szybsz¹ niø dotychczas reakcjÍ na wykryte pobudzenia). PowodÛw do zadowolenia twÛrcy LV7 maj¹ oczywiúcie wiÍcej, ale - ze wzglÍdu na znaczn¹ z³oøonoúÊ zastosowanych rozwi¹zaÒ - nieco dok³adniej pokaøemy tylko dwa kolejne mechanizmy zaimplementowane w†LV7, ktÛrych wagÍ z†pewnoúci¹ doceni¹ twÛrcy aplikacji rozproszonych i†wymagaj¹cych szybkiej reakcji na zdarzenia zewnÍtrzne.
W†czasie rzeczywistym
Rys. 3
128
Z†pewnoúci¹ wiÍkszoúÊ CzytelnikÛw zapytana o†to, czy PC-ty s¹ w†stanie obs³ugiwaÊ zdarzenia w†czasie rzeczywistym odpowie - ca³kiem zreszt¹ s³usznie - øe
Do czego służy i co może LabView? LabView jest to pakiet oprogramowania służący do projektowania graficznych aplikacji do akwizycji, obróbki i prezentacji danych. Jest to narzędzie zapewnia− jące elastyczność porówny− walną z narzędziami programistycznymi, a łatwość projektowania aplikacji porównywalną z budowaniem najbardziej zaawansowanych konstrukcji z klocków Lego. nie. To dlaczego LV7 wyposaøono w†kreator aplikacji RealTime? Zastosowano bowiem koncepcjÍ wydzielenia specjalnych modu³Ûw sprzÍtowych, ktÛre s¹ konfigurowane przez aplikacjÍ ìnapisan¹î w†LV7, ale dzia³aj¹cych samodzielnie (z w³asnym systemem operacyjnym, ktÛry odpowiada za obs³ugÍ zdarzeÒ w†czasie rzeczywistym). W†wersji LV7 dostÍpnej obecnie, rolÍ samodzielnych modu³Ûw RealTime mog¹ spe³niaÊ karty z†interfejsami PXI/ CompactPCI (fot. 3), w†tym opisana przed miesi¹cem karta rekonfigurowalna z†uk³adem FPGA.
Elektronika Praktyczna 8/2003
P R O G R A M Y
Rys. 4 Tak wiÍc, po napisaniu aplikacji i†wyznaczeniu fragmentÛw wymagaj¹cych obs³ugi w†czasie rzeczywistym, s¹ one ìprzekazywaneî do specjalnych kart I/O, ktÛre tak¹ obs³ugÍ zapewniaj¹, podczas gdy rdzeÒ aplikacji pracuje na relatywnie wolnym komputerze PC.
Sterowanie i†pomiary rozproszone Kolejn¹ cech¹ LV7 jest moøliwoúÊ budowania za jego pomoc¹ rozproszonych systemÛw sterowania i†nadzoru. Aby u³atwiÊ realizacjÍ tego zadania, twÛrcy pakietu LV7 wyposaøyli go w†zaawansowane mechanizmy obs³ugi baz danych (SQL92 i†ODBC 2.5) oraz znacznie unowoczeúniony system ich przegl¹dania i†zarz¹dzania zgromadzonymi danymi (rys. 4). SzczegÛlnie istotn¹ nowoúci¹ jest wprowadzenie mechanizmÛw jednoczesnego zarz¹dzania wieloma bazami danych (takøe ulokowanymi na komputerach do³¹czonych zdalnie). Standar-
Elektronika Praktyczna 8/2003
P R O G R A M Y
dowo, system zarz¹dzania bazami danych wyposaøono w†narzÍdzia do definiowania zdarzeÒ i†alarmÛw, a†takøe analizy trendÛw danych w†funkcji czasu. DostÍp do baz danych wykorzystywanych w†aplikacjach zoptymalizowano w†taki sposÛb, aby dane do nich mog³y dostarczaÊ (i oczywiúcie z†nich pobieraÊ) modu³y RealTime. Mechanizm wymiany danych wyposaøono w†system kolejkowania z†buforami zapobiegaj¹cymi moøliwoúci zagubienia danych przesy³anych pomiÍdzy aplikacj¹ i†modu³em RealTime.
LV7 - podsumowanie Historia pakietu LabView siÍga 1983, kiedy to za³oøyciele firmy National Instruments (Jack McCrisken, Jeff Kodosky i†Jim Truchard) zauwaøyli koniecznoúÊ opracowania oprogramowania pozwalaj¹cego w†wygodny sposÛb tworzyÊ zintegrowane aplikacje nadzoru i†sterowania. Pierwsza komercyjna wersja LabView 1†pojawi³a siÍ na rynku w†1986 roku. W†roku 2003 wprowadzono wersjÍ 7.0, w†ktÛrej w†stosunku do poprzedniej - LV6.1 - wprowadzono ponad 20 istotnych zmian. Konsekwentna polityka firmy National Instruments oraz dbanie o†rozwÛj i†dostosowywanie moøliwoúci LabView do wymagaÒ szybko zmieniaj¹cego siÍ úwiata, powoduje, øe pozycja tego narzÍdzia nie jest zagroøona, a†twÛrcy aplikacji korzystaj¹cy z†niego, mog¹ korzystaÊ ze wszystkich mechanizmÛw komunikacyjnych oferowanych przez wspÛ³czesn¹ technikÍ. Andrzej Gawryluk, AVT
129