Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem ATmega88 schema

zdravim mam na vas prosbu jestli by jste se mi mohli podivat na tohle schema jestli sem nekde neudelal chybu a jestli to bude funkcni

[http://pc.poradna.net/file/view/13990-bobis-jpg]
to je HW cast

u softwarove casti bych vas chtel poprosit aby ste mne popostrcili jenom kde zacit popripade jak problematiku resit ( V jazyku C )

ukol je nasledujici :

mam 3 hraci kostky po stisku tlacitka (PD7) se zacnou na 3 kostkach menit cisla po opetovnem zmacknuti tlacitka se prestanou menit a pokud bude na 2 nebo 3 kostkach stejne cislo tak zazni melodie z reproduktoru. cisla na kostkach musi byt tak jak to je u normalni kostky napr na clovece nezlob se :-D dekuju za kazdy tip a radu

edit : tak jedna rada byla ohledne toho nahodneho generovani tech cisel ze pry processor ma uz v sobe takovou funkci jenom nevim v jake knihovne je :-/
edit2: napajeno to bude 9V baterii

Předmět Autor Datum
- u té 78L05 bych dal paralelně k těm elytům (či tantalům) ještě keramické kondenzátory a chybí tam…
JoPe 12.05.2013 20:54
JoPe
Teď jsem si uvědomil, že je typ v nadpisu (ATmega88) - Jaká bude frekvence krystalu? Nad 900kHz k n…
JoPe 12.05.2013 21:08
JoPe
frekvence bude 8MHz
Boboo 12.05.2013 21:11
Boboo
ad 1) diky zapomel sem udelat propojeni ad 2) bylo mi receno ze to takhle bude fungovat akorat nekt…
Boboo 12.05.2013 21:09
Boboo
Pokud použiješ červené LED, tak při napětí +5V můžeš dát klidně ty vždy ty 2 LED do série. Navíc uše…
JoPe 12.05.2013 21:21
JoPe
A ještě se v datasheetu ATmega na píše, že AVcc by měl být v případě nepoužívání převodníku připojen…
JoPe 12.05.2013 21:25
JoPe
zitra to sem hodim predelane jinak odpory jsou 1k
Boboo 12.05.2013 21:27
Boboo
Invertoval bych Ledky (tj. zapojil přes odpor anodou na +5V a katodou na fous Atmelu - a samozřejmě…
mia 12.05.2013 22:01
mia
1. Chyba ti odpor na baze tranzistoru. = VELMI HRUBA chyba. 2. LED by som radil seriovo, ak to nie s…
MM.. 13.05.2013 14:11
MM..
BTW: uC nema zadnou funkci na nahodne cisla v sebe, pouzijes nejaky rychlo beziaci timer a pri stlac…
MM.. 13.05.2013 14:17
MM..
A este jedna vec u uC sa zvycajne vykonovejsie veci (ako napr. to budenie LED) robi zvycajne smerom…
MM.. 13.05.2013 14:21
MM..
Este co sa tyka toho repro: ak pouzijes piezzo menic tak ten tranzistor vobec nepotrebujes ani diodu…
MM.. 13.05.2013 14:30
MM..
Este Ad napajanie: 9V baterka ma malu kapacitu a tie led (ratam ze tam chces 5mA na kazdu) ti ju vyb…
MM.. 13.05.2013 14:38
MM..
posledny: A na takuto blbost ti staci ATTiny, nepotrebujes ATmega (naco ti je A/D prevodnik, UART, S…
MM.. 13.05.2013 14:47
MM..
k tomu vsemu co si napsal tak vetsinu veci jako je typ toho ATmega88 a nutnost napajeni 9V takovych…
Boboo 13.05.2013 15:03
Boboo
A nevadi ti ze cez bazu tranzistoru ti tece minimalne 50mA ak tam nastavis log.1? Ten pin to dlho ne…
MM.. 13.05.2013 15:24
MM..
to je jedna z tech uprav dal sem tam odpor on tam zapojeny byl jenom v tom schematu sem ho zapomel
Boboo 13.05.2013 15:27
Boboo
Daj tam preistotu aj odpor seriovo s repro. Je to piezzo menic alebo normalny repro?
MM.. 13.05.2013 15:50
MM..
normalni repro s vinutim civky proto tam nemam ten ochrany kolektorovy R
Boboo 13.05.2013 16:19
Boboo
A jaku ma impedanciu? Ked 4 alebo 8ohm tak odpor tam budes muset dat do serie s nim (inac odpalis te…
MM.. 13.05.2013 17:41
MM..
no to mi bylo receno od ucitele ze ten reproduktor ma dostatecnou impedanci aby to omezilo proud a n…
Boboo 13.05.2013 17:57
Boboo
To je jak komentar od cinana v zdrojakoch ze " //Mr. Chung said here must be 1!" Zazil som :-D Ok se…
MM.. 13.05.2013 18:20
MM..
ona to je "rocnikova prace" ne tak uplne spis 1/4 rocni prace :-D takze to je tak na odzkouseni ze f… poslední
Boboo 13.05.2013 18:49
Boboo
Inac normalny repro s impedanciou >32ohm som este nevidel a aj 32ohm je vela (5/32=0,156A)
MM.. 13.05.2013 18:24
MM..

- u té 78L05 bych dal paralelně k těm elytům (či tantalům) ještě keramické kondenzátory a chybí tam propojení těch kondenzátorů na GND.

- LED, které mají svítit ve dvojici bych zapojil sériově (pokud to úbytek napětí na nich dovolí) a nebo sice paralelně, ale se samostatným odporem pro každou z nich, jinak hrozí že bude svítit hlavně ta s nižším Vf v rámci rozptylu parametrů.

- LED by bylo asi vhodnější zapojit na +5V místo na GND a spínat je úrovní L na portu.

- u prostřední sady LED máš ve schématu zbytečný propojovací bod (že by ten, co chybí u ELYTů?).

- Udej typ mikrokontroléru

Teď jsem si uvědomil, že je typ v nadpisu (ATmega88)

- Jaká bude frekvence krystalu? Nad 900kHz k němu musíš přidat kondenzátory.

- Jinak úroveň "H" na I/O pinu je přes interní (pomoci SW ovládaný) pull-up resistor s hodnotou v rozmezí 20-50kOHM, takže ty LED v tvém zapojení asi moc svítit nebudou.

ad 1) diky zapomel sem udelat propojeni

ad 2) bylo mi receno ze to takhle bude fungovat akorat nektere budou svitit vic a nebo min je to hlavne kvuli uspory mista ( tolik odporu do nepajiveho pole proste nenarvu)

ad 3) predelam

ad 4) opraveno

ad 5) presne to je atmel 1145 ATmega88-20PU

dekuju

Pokud použiješ červené LED, tak při napětí +5V můžeš dát klidně ty vždy ty 2 LED do série. Navíc ušetříš proud (hlavně při stavu 6-6-6). Vzhledem k 100mA stabilizátoru 78L05 použij LED pro proud 2mA, protože při stavu 6-6-6 by i při sériovém zapojení LED a proudu pro LED 10mA teklo jen přes LED celkem 90mA a to už bude ta 78L05 i dost hřát.
Když tak sem dej upravené schema, třeba budou i další připomínky (možná i od někoho jiného) a zkus do toho schematu napsat alespoň orientačně hodnoty/typy součástek.

Invertoval bych Ledky (tj. zapojil přes odpor anodou na +5V a katodou na fous Atmelu - a samozřejmě v programu invertovat i to co jde na porty). Mezi bázi tranzistoru a fous Atmelu bych dal odpor ~10k. Na krystal kondíky potřeba nejsou (mám odzkoušeno, 12MHz chodí spolehlivě i bez kondíků).

1. Chyba ti odpor na baze tranzistoru. = VELMI HRUBA chyba.
2. LED by som radil seriovo, ak to nie su biele LED (biele maju Uf ca. 2.7V to by neslo). Ak to su biele tak paralelne ale odpor na kazdu.
3. chybaju ti kondenzatory u krystalu. Pri layoute davat pozor krystal a tie kondenzatory a uC musia byt blizko seba s kratkymi vedeniami. P.S. u modernych uC nepotrebujes vobec krystal (maju interny oscilator), ak nerobis hodiny alebo neico co potrebuje dlhodobo
velmi stabilny kmitocet tak staci interny oscilator.
4. kondenzatory u 7805 nemas spojene so zemou. To je blbo. BTW. ako uz bolo pisane 100nF KERAMIKY blizko vstupu a vystupu su velmi dolezite inac sa to rozkmita.

Ad jak to naprogramovat. LOL to je dobre ides robit uC a nemas ani sajnu. Si optimista alebo politik? Staihanes si datasheet a citas si. asi tak 200stran.

BTW: uC nema zadnou funkci na nahodne cisla v sebe, pouzijes nejaky rychlo beziaci timer a pri stlaceni tlacitka precitas hodnotu timeru a mas nahodne cislo.
P.S: a dufam ze ti je jasne ze tlacitko musis debouncovat (staci softwarovy filter ca. 10ms, niektore uC maju na to HW podporu treba to pre dany vstup zapnut)

A este jedna vec u uC sa zvycajne vykonovejsie veci (ako napr. to budenie LED) robi zvycajne smerom na zem u uC ptz zvycajne ma vystup v stave ked uzemnuje mensi ubytok napatia ako ked pushuje napatie. A navyse zvykne byt defaultne na tych pinoch pullup tak aj preto. Je to ale temer jedno, ale ak mas volbu tak by som to robil tak.

Este co sa tyka toho repro: ak pouzijes piezzo menic tak ten tranzistor vobec nepotrebujes ani diodu, zapojis to rovno na pin. Dal by som tam preistotu do serie 100ohm odpor alebo 220 ohm apod.
Ak pouzijes normalny 4ohm repro tak musis dat do serie odpor napr. 100ohm inac odpalis tranzistor aj repro ak tam nahodou nadrbes 1 na vystup (co je po resete default lebo pull-up), lebo 5V/4ohm je 1,25A. Navyse ti to odrthne ucho ak by si tam nadrbal napr. 1kHz a mal tam 6W (5V*1,25A)vykon a ucho pri tom :D

Este Ad napajanie: 9V baterka ma malu kapacitu a tie led (ratam ze tam chces 5mA na kazdu) ti ju vybiju za minutu. A este tam polovicu energie plytvas na tom 78L05.
ATMega niektore modely maju povolene Ucc od 2,7V - 6V ci kolko, viz datasheet, takze ti staci pouzit 4nabijacie tuzkove baterky (dokopy 5V-6V) a nepotrebujes vobec stabilizator (=mensie straty). A tuzkove nabijacie dnes maju hodne velku kapacitu (>2000mAh) a po celu dobu vybijania relativne stabilne napatie okolo 1,25-1,3V co je dobre aby tie LED mali relativne stabilny jas pocas celej doby vybijania. Jak si nastavis jas LED je tvoj problem, mozes pouzit jednoduchy prudovy zdroj s tranzistormi pre kazdu tu dvojicu LED, alebo si nastavis odpory tak aby rozdiel jasov 1LED vs. 2LED v serii bol minimalny.
P.S. Ak pouzijes specialnu verziu atmega88V, ta funguje uz od 1,8V az 5,5V, na to ti stacia 2 tuzkove baterky (2,55V pocas vybijania az 2,8V pri uplnom nabiti). Potom aj LED davas len paralelne a pre kazdu osobitne odpor, ca. 220ohm (to bude 2-3mA na LED).

k tomu vsemu co si napsal tak vetsinu veci jako je typ toho ATmega88 a nutnost napajeni 9V takovych pozadavku bylo vice jak nekdo zminoval vys dnes sem udelal jednoduchy program na odzkouseni jestli mam vse dobre zapojene a ono to fungovalo ( s mensima upravama ale piny sem nemenil) pro to tlacitko pouziju delay knihovnu a nastavim 10ms

tedkom se pokusim dat dohromady tu SW cast mam par tipu vyzkousim popripade se sem zase prijdu poradim zatim vam dekuju moc

To je jak komentar od cinana v zdrojakoch ze " //Mr. Chung said here must be 1!" Zazil som :-D
Ok ser na to ked to je pre ucitela. Ked robis nieco seriozne tak si vzdy veci precitas na danej veci, alebo zmeras alebo pozres v datasheete, a preratas (max. prudy a pozadovany vykon apod.) BTW. u veci na baterku sa spravidla na pipanie pouziva piezzo menic a ne reproduktor. Dovod je prave impedancia a nasledne zbytocne straty pri impednacnej neprisposobenosti, pripadnom zosilovaci, apod.

Zpět do poradny Odpovědět na původní otázku Nahoru