Odkaz na čánek - se svolením redakce

Transkript

Odkaz na čánek - se svolením redakce
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 složitì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 zkušenosti 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 odzkoušení
funkce zaøízení, a to vše s minimálními vynaloženými náklady. Vytkl jsem
si, aby pokud možno byl èlánek napsán srozumitelnì i pro zaèáteèníky.
Jsem si vìdom potøeby velkého
množství 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 množství potøebných
znalostí eliminuji na minimum a zdùrazním snad jen ty nejdùležitìjší.
V dalším pøedpokládám bežné 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 možnost naprogramovat nebo získat naprogramovaný MC, tak se do
konstrukce zaøízeni s MC nepouštìjte, protože 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 složitá 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 požadavky kladené na navrhované zaøízení.
V konstrukci jsem použil MC typu
PIC. Tuto volbu se pokusím zdùvodnit. Každý 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øedešlé vìty neplatí, pokud použijete 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.
Zjednodušené zapojení zvonku
Electus
2007
Vždy je však 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 využijte 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í požadovat. 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 – každé
má pøiøazenu svoji melodii,
atd.
Popis zapojení
Na obr. 1 je zjednodušené zapojení zvonku. Jeho srdcem je MC
PIC12F508 (mùže být i 509). Tento IO
lze opakovanì programovat a také je
možno nastavit použití vnitøního oscilátoru, takže nemusí být použit 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 však lze ve vìtšinì pøípadù
odhadnout ze zadání.
U zde popsaného zvonku jsou vývody MC v zaøízení použity 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 nevyužit,
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
využito pro „pøídržný 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øídržný 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 navržen plošný spoj, je na obr. 2. Zde je
využito i výstupu GP4 pro pøídržení
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 oživení
Zhotovte si podle obr. 3 desku
s plošný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á všemi souèástkami je na obr. 4. Pro napájení použijte 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 použijte objímku. Výstupy MC mohou u tohoto typu
být zatíženy proudem 25 mA, všechny dohromady 75 mA, viz dokumentace k MC. Dodržujte radìji pravidla
pro práci s CMOS (osobnì jsem je nedodržoval 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 všechny souèástky podle obr. 4, tj. také
usmìròovaè, stabilizátor a spínaè s T2
a T4. K napájení je pak použit transformátor s napìtím sekundárního vinutí 5 až 8 V.
Obr. 3 a 4. Deska s plošný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. Zapište nebo nahrajte zdrojový program
z adresáøe, kde je umístìn, a pøeložte 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.
Vše 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 použijte
napø. programátor JDM [2] pøipojený
na sériový port PC (COM1 nebo
COM2) a ovládaný pøíslušný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 použité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
možnost 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øeložení programu
mikrokontroléru použijeme 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
spuste 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 požadované chování zaøízení odzkoušet. 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, protože 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 zkoušet a zkoušet.
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 dnešních možnostech PC. Pro odzkoušení 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 všechno. 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. Všem, kdo byli schopni oživit
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
Použité souèástky nejsou kritické
a lze je volit podle možností. 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 ještì budete potøebovat?
Osobní poèítaè, možnost 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 možností. 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

Endovaskulární graft Zenith™ AAA v endovaskulární graftingové technice AAA a operacích pod dohledem zkušených lékaøù-specialistù v endovaskulární graftové implantaci AAA. Buïte opatrní bìhem manipulace s katetry, vodièi a zavadìèi...

Více

ČIP CZ - Varovanie a Druhý príchod Ježiša Krista

Č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...

Více

Implementace USB rozhraní AVR mikrořadičem Jan Smrž

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...

Více

stáhnout - PC NEXT sro

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...

Více

thesis (290 463 B) - Latex - Vysoké učení technické v Brně

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...

Více

Příručka 2004/6 - Minimalizační a půdoochranné technologie

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ì množství prodaných strojù, jejich plošné výkonnosti a pøedpokládaného využití) na témìø ...

Více

Ke stažení zde

Ke stažení zde napìtí na kondenzátoru C1 rychle klesat. V urèitém okamžiku 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øerušení a o...

Více

SBD Chomutov

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

Více