Fórum témák
» Több friss téma |
WinAVR / GCC alapszabályok: 1. Ha ISR-ben használsz globális változót, az legyen "volatile" 2. Soha ne érjen véget a main() függvény 3. UART/USART hibák 99,9% a rossz órajel miatt van 4. Kerüld el a -O0 optimalizációs beállítást minden áron 5. Ha nem jó a _delay időzítése, akkor túllépted a 65ms-et, vagy rossz az optimalizációs beállítás 6. Ha a PORTC-n nem működik valami, kapcsold ki a JTAG-et Bővebben: AVR-libc FAQ
Sziasztok!
Azt szeretném kérdezni, hogy milyen hátrányokkal jár ha egy AVR-alapú áramkört külső oszcillátor nélkül építek meg? Mely alkalmazásokban van fokozott jelentősége a külső oszcillátorok használatának illetve milyen jellegű kapcsolásokban kerülendő határozottan a belső oszcillátort használni? Köszönöm!
Szia!
A beépített RC oszcillátor nem olyan pontos, nem pont a beállított frekvencián fog rezegni, és ez függ a hőfoktól is, de ne arra gondolj, hogy pl 20 fokon megy, 25-ön már nem, ennél azért egy kicsivel nagyobb hőfokkülönbség kell hozzá. Ahol fontos a stabil frekvencia (pl frekvenciamérés, PID szabályzás és más szabályzások, óra, stb.) oda külső kvarc kell.
Szeva!
Magam is ilyen programozót használok és emlékeim szerint az elején éppen ez a problémám volt vele. A megoldás az volt, hogy a 8. lábbal c. cikk első(?) részében található videó alapján alaposan beállítottam mindent az AVR Studio-ban, ezt követően már működött. Javaslom próbáld ki te is, természetesen az Attiny2313-hoz tartozó beállításokkal. Ha ezt már megtetted akkor nem szóltam.
Hello!
Köszi a választ! A kapcsolás -rendeltetéséből adódóan- tartósan hideg (téli) körülmények közt is fog üzemelni kültéren. Különösebben precíz időzítésekre ugyan nincsen szükség de érdekelne, hogy rábízhatom-e magam a belső oszcillátorra mondjuk -10 Celsius fokban? Vagy biztos ami biztos alapon tegyek be ez esetben inkább valamilyen kristályt?
Hát hogyha elárulod miről van szó, mit kell csinálnia, akkor nagyjából körvonalazódik bennem a program és meg tudom mondani.
Én inkább külső kvarcot használnék az óriási hőingadozás miatt, de csak mert biztosra szoktam ilyenkor menni és egy kvarc meg a két kondi nincs 100Ft, azon meg ne múljon.
Sima kódalapú beléptetőrendszer lesz ami egy mágneszárat nyit. A legprecízebb időzítés benne néhány 50ms-os delay Ha semmi kompromisszummal nem jár a külső kvarc használata akkor inkább beleteszem.
Én belső oszcillátort használnék.
A beléptetőrendszernél ha nyomógombokat kell megadni, akkor a belső maradhat (nem kell precíz időzítés).
Ha van soros kommunikációd (Tx/Rx), akkor _mindenképp_ kell kvarc, ha nem akarsz az osztási hiba és a hőfokváltozás miatti hibával (sebességbeli eltéréssel a névleges 9600 bpstől) megküzdeni.... ugyanez igaz, ha 1Wire eszközt használsz. azaz minden olyan kommunikáció esetén, ahol a jellel nem megy együtt az órajel...
Hello Topi programozóját smd-ben szeretném megépíteni ez az AVR jó bele?
Kedves Mindenki! Kedves Topi, Alex, és Ideiglenes!
Köszönöm szépen a tanácsokat. Ezeket megválaszolnám sorjában: 1,nem volt külső kvarc az AVR-en, 2,igen, már beállítottam mindent egy a HE-n talált videó alapján az AVR Studio-ban, 3,igen, a programozóról kapja a tápot, és rajta van a tüske, a lábak is jól voltak bekötve. Sajnos most kicsit pihire megy a projekt, mert A Tiny2313-as megsült. Megkértem az egyik kollégámat, hogy az ő égetőjével próbáljunk már rá, és gyakorlatilag "Bricked" . Így most előbb majd veszek egy másik Tiny2313-ast, aztán utána újra megpróbálom a programozót. Köszönök minden helpet!!! Üdv Zeemut ui: ha esetleg valakinek lenne AVR C könyve/jegyzete/e-book-ja, akkor megköszönném, ha elküldené/megmondaná, honnan lehet letölteni, mert ugyan programozni tudok, de ez az első próbálkozásom uC-vel, illetve AVR-ekkel. Idézet: „valakinek lenne AVR C könyve/jegyzete/e-book-ja” Ha visszaolvasol pár oldalt, akkor valakinek lesz. A csatolmányok közt keresd.
Sziasztok!
Nekem is ugyan az a problémám mint zeemutnak. Topi AVR-Doperét használom. Tiny45-t próbálok meg programozni. A videó alapján állítottam be én is mindent, Rá kötöttem egy led-t a vcc lábra, s amikor akarom olvasni felvillan, de az AVRStudio azt írja"Entering programming mode: FAILED" Mi lehet még baj?
A programozó vezetéke milyen hosszú kb.? Ha 20 centitől jóval több akkor elvileg az is okoz(hat) hasonló problémát.
Kb 15cm. De sikerült megoldanom! valamelyik vezeték rosszul csatlakozott. Már sikerült működik! Villogtatja a ledeimet
Na megmondom őszintén erre gyanakodtam én is leginkább Előferdül az ilyesmi.
Köszi a választ! Azt még elfelejtettem hozzátenni ,hogy elvétve az eeprom-ot is újra kellhet írni. Ez a művelet ahogy az adatlapból kivettem kényesebb lehet a precíz órajelre. Még ilyenkor is bízhatok is a belső oszcillátorban szélsőségesebb hőmérsékleti körülmények közt?
Idézet: Igen. „Még ilyenkor is bízhatok is a belső oszcillátorban szélsőségesebb hőmérsékleti körülmények közt?”
Na megoldódott!
A Fuse biteknél a JTAG kikapcsolása segített.
A tegnap problémát sikerült végül megoldanom, de íme itt egy újabb és ez komolyan kifogott rajtam.
Itt a HE-n lévő FIZIKUS által írt "WILL-I THE-END" című cikkből néztem egy kódot a megszakítások kezelésére, de nem tudom WIN-AVR -el lefordítani. A kód: (Az eredeti kódhoz képest annyit módosítottam rajta, hogy nem a PORTC hanem a PORTB 0BIT-jére tettem a ledet, és ezt kapcsolgatom ki be.)
A hiba ablak tartalma:
Az én értelmezésem szerint (bár angolul nem tudok) nem találja a "GIFR" és "GICR" regisztereket. Átfutottam az általam használt AVR (ATMEGA20-20PU) adatlapját, de ilyen nevű regisztereket nem találtam. De az adatlapon van INT0 és INT1 -es láb és biztosan kezeli ez az AVR is a megszakításokat. Mi lehet a baj Kérem a tisztelt fórumtársakat segítsenek a probléma megoldásában Köszönettel: novarobot
Szia!
Gondolom Atmega88-at akartál írni. Ennél máshogy hívják a dolgokat. GIFR és GICR helyett EICRA és EIMSK kell. (adatlap 67. oldal-External interrupts) |
Bejelentkezés
Hirdetés |