Odkaz na čánek - se svolením redakce
Transkript
Melodický zvonek s mikroprocesorem Ivan Baldík V poslední dobì na stránkách PE nacházím konstrukce zapojení s mikroprocesory, které jsou èím dál sloitìjí, a myslím si, e pro tradièního bastlíøe, který se chce seznámit s mikroprocesory, absolutnì nevhodné. Snad následujícím èlánkem pomohu opravdovým bastlíøùm proniknout do tajù MC. Úvod. V následujícím èlánku bych se chtìl podìlit s ètenáøi o zkuenosti se sestavením jednoduchého zaøízení s MC (mikroprocesor, mikrokontrolér, mikroèip) od zadání a konstrukci, a po programování MC a odzkouení funkce zaøízení, a to ve s minimálními vynaloenými náklady. Vytkl jsem si, aby pokud mono byl èlánek napsán srozumitelnì i pro zaèáteèníky. Jsem si vìdom potøeby velkého mnoství znalostí souvisejících s konstrukcí s MC, od znalosti cizího jazyka, elektroniky, programování, znalosti práce s PC, Internetem atd. Tímto èlánkem snad mnoství potøebných znalostí eliminuji na minimum a zdùrazním snad jen ty nejdùleitìjí. V dalím pøedpokládám bené znalosti s osobním poèítaèem (PC), práci na Internetu. Následující kapitolu mùete pøeskoèit, pokud ji máte za sebou nìjakou konstrukci s MC. Obecnì Programovat MC lze rùznými metodami. Jednou z nich je vlastnit programátor a s ním MC naprogramovat (viz tento èlánek). Dalí je napø. stáhnutí souboru s programem z Internetu a pomoci prográmku (zavadìèe, bootloaderu, který musí být v MC ji naprogramován) si ho nahrát do MC pøipojeného na port PC. Pokud nemáte monost naprogramovat nebo získat naprogramovaný MC, tak se do konstrukce zaøízeni s MC nepoutìjte, protoe urèitì budete potøebovat MC nìkolikrát pøeprogramovávat. Pro zaèátek u jednoduchých aplikací lze vyuít toho, e výrobci MC nabízejí simulaèní programy pro PC (napø. MPLAB pro PIC, AVR studio pro Atmel). Pomocí tìchto programù lze zhotovit program pro rùzné typy MC a ten odladit bez nutnosti pouít jakékoliv jiné pomùcky (kromì rùzných dokumentací). Odladìní programu je opakovaná úprava programu a ovìøování jeho správného chování. Chvíli 20 jsem laboroval s MC typu Atmel rùzná blikátka, minutka atd., pak jsem pouíval ze zvìdavosti obvody PIC. V tìchto zaèátcích mnì lo hlavnì o jejích programování a k ovìøování funkce jsem vyuíval zmínìné simulaèní programy. Simulaèní programy jsou i vhodné pro seznámení s MC. Samotná následující konstrukce by mìla pomoci zaèínajícím zájemcùm pochopit, jak lze sloitá elektronická zapojení nahradit zapojením s MC, do kterého je nahrán vhodný program. Zde je snad na místì definovat pro úplnì neznalé, co to vlastnì MC je. V nejjednoduím pøípadì lze øíci, e MC je obvod se vstupy a výstupy, kde výstupy jsou ovládány vhodnì sestaveným programem. Program musí reagovat obecnì jak na vstupy, tak i na výstupy a musí v neposlední øadì zohledòovat poadavky kladené na navrhované zaøízení. V konstrukci jsem pouil MC typu PIC. Tuto volbu se pokusím zdùvodnit. Kadý MC je ovládán programem a ten se skládá z posloupností instrukcí. Seznam instrukcí je souèástí dokumentace MC. Pokud budete programovat v asembleru, tj. s tìmito instrukcemi, je pravdìpodobnì lepí pouít MC PIC, který má mení poèet instrukcí a tudí si je snadnìji zapamotujete. Pøedelé vìty neplatí, pokud pouijete tzv. vyí programovací jazyk, který je srozumitelnìjí a lze v nìm programovat daleko rychleji ne v asembleru (nejvíce je asi rozíøený C, ale i Pascal, Fortran a i jiné). Obr. 1. Zjednoduené zapojení zvonku Electus 2007 Vdy je vak potøebný pøekladaè, se kterým pøevedete (zkompilujete) program do vhodného formátu (zde IntelHex), který pak pomocí programátoru s øídicím programem nahrajete do MC. Snad nemusím zdùrazòovat, abyste si èlánek nejprve pozornì nìkolikrát pøeèetli a teprve potom se rozhodli, jestli se do konstrukce s MC pustíte. Ale jak jsem se u zmínil, pro zaèátek s výhodou vyuijte simulaèních programù. Zadání O melodických zvoncích toho na stránkách èasopisu PE bylo napsáno v historii AR mnoho, ale nepamatuji se, e by konstrukce vyuívala zapojení s MC. Proto jsem se rozhodl pøedvést zapojení jednoduchého obvodu, který lze pouít i jinak ne melodický zvonek. Ne se pustíme do konstrukce, zadejme si vlastnosti, které bychom mìli od tohoto zaøízení poadovat. Mùe to napø. být - teplotní rozsah od 20 do 50 °C, - co nejmení klidový pøíkon, - reagovat na sepnutí zvonkového tlaèítka a po definované dobì musí být sepnuto alespoò 300 milisekund, - signalizovat stav trvale sepnutého tlaèítka po odehrané melodii (proti vtipálkùm), - ovládání dvìma tlaèítky kadé má pøiøazenu svoji melodii, atd. Popis zapojení Na obr. 1 je zjednoduené zapojení zvonku. Jeho srdcem je MC PIC12F508 (mùe být i 509). Tento IO lze opakovanì programovat a také je mono nastavit pouití vnitøního oscilátoru, take nemusí být pouit externí. Interní oscilátor má kmitoèet 4 MHz. Teplotní rozsah MC je od 45 do +85 °C. Na rozdíl od zapojení s diskrétními souèástkami nelze podle schématu urèit, co vlastnì bude zaøízení dìlat, dokud se neseznámíme s programem. U zaøízení s diskrétními souèástkami jsme museli k pochopení znát minimálnì zákony elektrotechniky. U zaøízeni s MC se musíme navíc umìt orientovat v programu. Samozøejmì v obou pøípadech je nutné popsat alespoò v hrubých rysech chování zaøízení, to vak lze ve vìtinì pøípadù odhadnout ze zadání. U zde popsaného zvonku jsou vývody MC v zaøízení pouity takto: GP0 vstup zvonkového tlaèítka Tl1, GP1 vstup zvonkového tlaèítka Tl2, GP2 výstup informuje o trvalém sepnutí alespoò jednoho tlaèítka signálem s kmitoètem 1 Hz, Obr. 2. Celkové zapojení melodického zvonku GP3 nevyuit, GP4 výstup. Je uzemnìn po èas pøehrávání nebo pøi trvalém sepnutí Tl1 nebo Tl2, GP5 výstup melodie. Podrobný popis mikrokontroléru najdete v [1]. V nejjednoduím pøípadì podle obr. 1 se po pøivedení napájecího napìtí na MC ozve z reproduktoru naprogramovaný zvuk za pøedpokladu, e je sepnuto nìkteré tlaèítko na zem. Volba pøehraného zvuku záleí pøitom na tom, zda je sepnuto Tl1 nebo Tl2. GP4 bude po celou dobu pøehrávání melodie nebo pøi sepnutém tlaèítku uzemnìn (je na logické nule). To je vyuito pro pøídrný kontakt s tranzistory T2 a T4, viz obr. 2, který pøipojuje zaøízení na napájecí napìtí. V klidu toti není na mikrokontrolér pøivedeno napájecí napìtí. Po stisku tlaèítka se pøivede log. nula na vstup GP0 nebo GP1 (podle toho, které je stisknuto) a souèasnì napájecí napìtí 0 V na mikrokontrolér. Pøes pøídrný kontakt se pak napájí MC i po uvolnìní tlaèítka. Pokud bude tlaèítko sepnuto i po odeznìní melodie, objeví se na GP2 signál s kmitoètem asi 1 Hz a LED D1 bude blikat. Odpojením a opìtným pøipojením napájecího napìtí se celý cyklus opakuje. Pokud bude napájecí napìtí trvale pøipojeno, lze tento cyklus ovládat pouze spínáním tlaèítek. V tomto pøípadì musí být alespoò jedno tlaèítko sepnuto více jak 300 ms. Koneèné zapojení, pro které je navren ploný spoj, je na obr. 2. Zde je vyuito i výstupu GP4 pro pøídrení napájecího napìtí. Myslím, e k zapojení není více co dodat. Pro podrobnìjí pochopení si prostudujte bohatì okomentovaný zdrojový program. Konstrukce a oivení Zhotovte si podle obr. 3 desku s plonými spoji a osaïte ji souèástkami. Pro zaèátek staèí jednoduchá varianta podle obr. 1 s MC, T3, R3, R7, R8, reproduktorem a na GP2 pøes R6 pøipojte LED. Deska osazená vemi souèástkami je na obr. 4. Pro napájení pouijte 5voltový stejnosmìr- ný stabilizovaný zdroj (baterie s napìtím 4,5 V bude staèit) pøipojený na K8 kladným pólem a na K6 záporným. Samozøejmì nemusíte zatím osazovat zdrojovou èást (BR2, IC4, C1, C2, C3). Pro MC pouijte objímku. Výstupy MC mohou u tohoto typu být zatíeny proudem 25 mA, vechny dohromady 75 mA, viz dokumentace k MC. Dodrujte radìji pravidla pro práci s CMOS (osobnì jsem je nedodroval a obvod pøeèkal asi 100 pøeprogramování a pracuje dodnes). Nyní zasuòte do objímky naprogramovaný MC (viz dále) a po pøivedení napájecího napìtí a sepnutím libovolného tlaèítka na K6 nebo i obou najednou po dobu delí ne 300 ms se ozve melodie. Pozn. Pøi zasouvání MC do objímky dejte pozor na jeho správnou polohu. Pøi pohledu na MC je na jedné stranì znaèka (prolis, teèka, trojúhelník), její poloha musí souhlasit s výøezem (ve tvaru V) podle obrázku osazení desky souèástkami. Buïte také opatrní pøi vyjímání MC z objímky. Mnì se osvìdèilo opatrné páèení vhodným roubovákem zasunutým mezi MC a objímku. Budete-li chtít konstrukci pouívat jako domovní zvonek a ne jen jako pomùcku pøi práci s MC, osaïte vechny souèástky podle obr. 4, tj. také usmìròovaè, stabilizátor a spínaè s T2 a T4. K napájení je pak pouit transformátor s napìtím sekundárního vinutí 5 a 8 V. Obr. 3 a 4. Deska s plonými spoji a osazení souèástek na desce zvonku Pøeklad a zápis programu PIC12F508 nebo PIC12F509, viz obr. 5, podle zápisu ve zdrojovém programu na øádku s textem INCLUDE p12f509.inc a procesor 12f509. Zapite nebo nahrajte zdrojový program z adresáøe, kde je umístìn, a pøelote ho. Výsledný IntelHex formát je umístìn ve stejném adresáøi jako zdrojový program. Jméno souboru s IntelHex formátem je zv_509.hex. Ve by mìlo být patrné z obr. 6. Pro pøeklad lze také pouít program MPASMWIN, který je dostupný po instalaci MPLAB, podle obr. 7. Pro naprogramování MC pouijte napø. programátor JDM [2] pøipojený na sériový port PC (COM1 nebo COM2) a ovládaný pøísluným programem IC-prog [4], ve kterém nastavíte nìkteré parametry (v menu), jako druh programátoru, a na jaký port je pøipojen (sériový vstup PC COM1), úroveò signálù a vyberte typ MC podle pouitého v zapojení. Zde PIC12C508 (místo písmenka F je C, C znaèí, e Program je umístìn v souboru se jménem zv_509.asm a kratí verze (vynechány definice tónu a zvukù musíte je doplnit) v souboru zv_509.zkr.asm. Text zdrojového programu je pomìrnì dlouhý, a tak doufám, e máte monost si program opatøit stáhnutím z Internetu napø. ze stránek autora [5] v sekci [ATMEL PIC], kde jsou mimo jiné také uvedeny odkazy, nebo ze stránek èasopisu. Pro zápis a pøeloení programu mikrokontroléru pouijeme na PC nainstalovaný program Mplab [1]. V menu pro konfiguraci CONFIGURE, pak SELECT DEVICE, vyberte typ Obr. 5. Výbìr mikrokontroléru Electus 2007 21 Obr. 6. Pøeklad zdrojového programu lze naprogramovat jen jednou, obdoba CD-R). Nejdøíve nahrajte tímto programem soubor zv_509.hex (viz pozn.), zasuòte do programátoru a spuste programování. Programová- ní mùe trvat i nìkolik minut. Pokud programování probìhlo úspìnì, mùete MC pøemístit do objímky melodického zvonku a poadované chování zaøízení odzkouet. Postup pro- Obr. 7. Pøeklad zdrojového kódu v programu MPASM Obr. 9. Volba souboru s kódem MC 22 gramování by mìl být patrný z obr. 8, 9 a 10. Kód programu ve formátu IntelHex je v tomto pøípadì nezávislý na typu 508 nebo 509, protoe je kratí ne 512 slov pamìti MC. Pozn.: Nìkolikrát jsem musel MC programovat opakovanì a pøenastavovat parametry (to samé napø. u programu PonyProg). Je to pravdìpodobnì cena za pouívání neprofesionálních programátorù. Nìkdy je potøeba velké trpìlivosti a nenechat se odradit prvním neúspìchem. Musíte zkouet a zkouet. I kdy vám zaøízení funguje, budete ho urèitì po nìjaké dobì chtít upravit podle svých pøedstav, napø. zmìnit melodie. K tomu vám staèí pouhá zmìna programu. V tomto pøípadì mùete opatrnì zdrojový program upravovat (nebo dokonce sestavit úplnì jiný), opìtnì nahrát do MC a ovlivnit tak chování nezmìnìného elektrického zapojení. Urèitì si najednou uvìdomíte, jaká je to výhoda pouívat v zapojení MC. Ostatnì asi neøíkám nic nového pøi dneních monostech PC. Pro odzkouení chování programu mùete vhodným nastavením vyuít simulace v prostøedí MPLAB. Obr. 8. Nastavení programu IC-Prog Obr. 10. Nahrání kódu do MC v programu IC-Prog Electus 2007 〉 〉 Závìr A to je vechno. Snad se mi povedlo pomoci zaèínajícím amatérùm k sobìstaènosti pøi pouívání MC. Pokud ostatní èlánek inspiroval a chytil pro práci s MC, tak jsem velmi rád. Vem, kdo byli schopni oivit obvod podle tohoto èlánku, pøeju hodnì zdaru ve vývoji dalích konstrukcí s MC. Seznam souèástek R3 R6 R7 R8 R11 R12 R13 C1 C2, C3 C4 BR2 1 kΩ 560 Ω 10 Ω 3,3 kΩ, trimr 1,5 kΩ 100 Ω 330 Ω 20 µ/25 V 100 µ/16 V 47 nF, keramický diodový mùstek 1 A, napø. W06M D1 D2 a D5 F1 IC1 IC4 T2, T3 T4 Tl1, Tl2 objímka reproduktor LED 1N4001 0,5 A pojistka 12F508-04/P, DIL8 (12F508-04/P) 7805, TO-220 BD137 dle odbìru BC212A (BC558B) tlaèítka DIL8 pro IC1 Pouité souèástky nejsou kritické a lze je volit podle moností. Rezistory jsou miniaturní, kondenzátory s radiálními vývody. Reproduktor mùe být z vyøazeného televizoru, rádia, poèítaèe apod. Pamatujme na to, e jednotlivé výstupy (piny) MC mohou být zatíeny proudem maximálnì 25 mA. A co jetì budete potøebovat? Osobní poèítaè, monost stáhnout z Internetu rùzné soubory [1], [2], [5], zhotovený programátor [2] a hlavnì trpìlivost. PC staèí s procesorem Pentium 200 MHz, RAM 64 MB a operaèním systémem Windows 98 SE. Odkazy [1] http://www.microchip.com/ Dokumentace, popis (Datasheets), Mplab simulace MC na PC, sekce Downloads. [2] h t t p : / / w w w. b e l z a . c z / d i g i t a l / jdm.htm. Programátor pro PIC JDM. [3] http://www.lancos.com/prog.html. Programátor pro PIC PonyProg. [4] http://www.ic-prog.com/. Ovládací program pro programátory, programování v C. [5] www.mujweb.cz/www/ivanb. Jednoduché stránky autora. Podrobný seznam odkazù k èlánku je umístìný na www stránkách autora [5]. Dotazy odpovím podle èasových moností. Do pøedmìtu uvádìjte amaro_zv. E-mail autora: [email protected]. 9,5 cm zbytek 15 cm Electus 2007 23
Podobné dokumenty
Endovaskulární graft Zenith™ AAA
v endovaskulární graftingové technice AAA a operacích pod dohledem zkuených lékaøù-specialistù
v endovaskulární graftové implantaci AAA.
Buïte opatrní bìhem manipulace s katetry, vodièi a zavadìèi...
ČIP CZ - Varovanie a Druhý príchod Ježiša Krista
mikroèipem, systémem „microchip pozitiv identification".
Uvnitø mikroèipu je 250000 èásteèek a mezi nimi i zmínìný lithiový èlánek.
Z mé strany pøi øešení úkolu byla jedna záležitost, která mì veli...
Implementace USB rozhraní AVR mikrořadičem Jan Smrž
pojetí jejich funkce rozdělit do dvou skupin.
• zařízení bloková - realizují funkci paměti. Pro daný index (adresu) z omezeného definičního oboru dokáží uchovat určité množství dat. Požaduje se, a...
stáhnout - PC NEXT sro
Aplikace WinFast PVR2 umožòuje zároveò zábavu i dohled.
Se dvìma TV tunery a aplikací WinFast PVR2, mùžete sledovat dva programy najednou, nebo
sledovat oblíbený program v obývacím pokoji/spící dít...
thesis (290 463 B) - Latex - Vysoké učení technické v Brně
Vlastní tabulky a obrázky se větinou umís˛ují na stránku a« za místem
v textu, kde se na ně odkazuje. U rovnic a oddílů to neplatí, odkazy mohou
být umístěny před i za místo výskytu.
V práci je nut...
Příručka 2004/6 - Minimalizační a půdoochranné technologie
s vývojem a dostupností kvalitní techniky. Rozsah pouívání tìchto technologií v ÈR je odhadován (na základì
mnoství prodaných strojù, jejich ploné výkonnosti a pøedpokládaného vyuití) na témìø ...
Ke stažení zde
napìtí na kondenzátoru C1 rychle klesat. V urèitém okamiku pøestane Zenerova dioda D2 vést (dáno napìtím
diody), optoèlen U3 se zavøe a na portu B0 se objeví vysoká úroveò. To vyvolá pøeruení a o...
SBD Chomutov
bydlení. Od tìch dob se však leccos zmìnilo. Když teï nebudeme brát do úvahy
byty státní, mùžeme mít stále byt v družstevním vlastnictví, ale dnes také ve vlastnictví osobním.
MICHAL HAMŠÍK