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
Tapfesz, reset, orajel? Biztos, hogy jo helyen (cimen) indul el a programod RESET utan?
Egyből a main címkére ugratom reset után. Reset felhúzó ellenállással tápra van kötve. Táp meg 5V-os stabról jön, nem hiszem hogy azzal lenne baj. Az órajelnél mire gondoltál? 4MHz-es kristály van benne.
Az előbb elfelejtettem írni, de mikor bekapcsolás után random értéket dob ki, akkor a reset sem segített rajta, se a táp lekapcs, majd újra be, csak egy újboli rátöltés oldotta meg.
Hat, akkor valamiert megserul a flash-ben a program. Vagy felrefut a program es az irja felul valahogy, vagy hibas a uC. Lattam mar mindkettore peldat. Az 5V-os stab (7805) szeret gerjedni, ha nincs rendesen hidegitve. Muszerrel merve 5V, de a valosagban oszcillal, mondjuk 4 es 6 volt kozott, akar 1MHz-cel. Ilyet is lattam mar. Kimenetre, bemenetre 100nF keramia, es megnyugszik. Bar ez stabilizator tipustol fuggo, az adatlap megmondja, hogy kimenetre, bemenetre mekkora kondi kell, hogy stabil legyen.
Na ez lehet a baja. 100nF-ot bele szoktam tenni, de ezt a panelt nem én terveztem. Eddig fel sem tűnt, hogy nincs benne. Nem,mégsem ez okozza. Most gyorsan megnéztem közvetlenül USB-re kötve is ugyan ezt csinálja.
Van itthon új AVR-em megnézem majd azzal is. De aztán az is lehet, hogy programban néztem el valamit, majd holnap átnézem még egyszer hátha meglesz.
Sziasztok!
Nagy fába vágtam a fejszém... Egy olyan problémám lenne, hogy akváriumra kellene nekem egy olyan (nem is olyan) kis elektronika ami 24 órában folyamatosan működik beállított időközönként meg húz egy relét (K1) és úgy tartja egy beállított ideig majd elenged, ez működtetné mondjuk a lámpát. A másik amit még tudnia kellene a kis szerkezetnek hogy szintén beállított időben meghúz egy másik relét (K2) ami mondjuk ki kapcsolná a víz forgatót és egy idő után behúzna egy harmadik relé (K3) ami beszórná a kaját és rövid időn bellül elengedne a relé (K3) majd beállított idő után elengedne a (K2) relé is. Ebben szeretném kérni a segítségeteket hogy ezt milyen AVR-el vagy PIC-el lehetne megoldani sajnos ebben a témában nem nagyon vagyok otthon :S
Szia!
Holnap megnézem a suliban, hátha találok valami combosabb megoldást... Apropó. Itthonra készítettem egy atmega 8-as panelecskét, kivezetve az össze portja csatira. Olyan fejlesztői panel szerűség lenne ő. A reset lábra tettem egy R-t illetve egy C közös pontját.. Szóval, Vcc - R - reset pin - C - GND. 10k-s felhúzó ellenállást és 100 nF-os kondit. Szükséges oda a kondenzátor?
Ezt nagyjabol barmelyik AVR-rel meg lehet oldani. PIC-cel is, csak itt azokat nem ajanljuk
![]() Nem is a mikrokontroller a kerdes, hanem, hogy van-e hozza fejlesztokornyezeted. Leginkabb a programozo a kerdes, mert a tobbi csak PC-s program. Es, hogy akarsz-e ezzel melyebben foglalkozni. Meg akarod ismerni a mikrokontrolleres vilagot? Programozashoz ertesz? Vagy csak a kesz megoldast keresed?
Szerintem nem szukseges, de artani nem arthat. Az AVR-ekben van POR aramkor, azaz Power On Reset. En meg eletemben nem tettem RESET-re kondit. Igaz, en mindig teszek táp monitor reset aramkort, pl. MCP130.
Igen szeretnék jobban foglalkozni vele érdekel nagyon a téma, a baj az, hogy a programozáshoz sem értek
![]()
Akkor hajra! Azt mondjuk nem tudom, hogy merre indulj
![]()
Én windows-os vagyok és az AVR Studio 5-öt szedtem le, aztán majd kiderül, hogy mire tudok vele menni
![]()
Első lépésekhez a 8 lábbal című sorozat vagy a 60 nap alatt Arduino jó induláshoz.
A probléma bonyolultságát nem a relék adják. Nyilván az IC kimenetét egy tranzisztorral + védődiódával kierősíted és kapcsolsz vele. Ha pedig dolgozni sem akarsz sokat, akkor megveszel egy Arduino-t és akár USB kábelen is felprogramozhatod. Eddig a dolog teljesen egyszerű, fél óra.
A probléma lényege az, hogy gondolom azért csinálod, mert el akarsz menni otthonról és tudni akarod kapnak-e enni. Ezután jön egy áramszünet: az IC elfelejti az időt, délben fűt és világít, este kikapcsol, hajnali 3-kor beszórja a halaknak a kaját,... Eddig még nem is baj, max. a halak furcsán fogják érezni magukat. A mechanikai problémák rosszabbak, pl. hogy elakad a szárított bolha szóró és kaja nincs, szegények meg lezabálják a két hét alatt az akváriumi növényeket. Automata etetéshez jó, de ha hosszabb időre elmész és mondjuk tényleg nem akarod, hogy megdögöljenek, az már nem egyszerű. A hozzászólás módosítva: Nov 29, 2013
A V végződésű maximum órajele 10MHz és 1,8-5V között üzemel. A sima az 20MHz-ig megy és 2,7-5V között üzemel.
Ez így van. De az etető már megvan 12V-ról működik egyenlőre adapterrel. de ha esetleg áram szünet lenne akkor teszek be egy 12V/7Ah aksit és így nem megy el az idő sem és etetni is fog. Max nem lesz világítás. (Több munkám lesz az algával
![]()
Sziasztok!
Ebben a cikkben olvastam hogy össze lehet kötni avr-el a telefont. Az eeprom adataiba gondolom azokat kell beírni mint amit a gépembe írok statikus ip beállításnál. Viszont azt nem tudom, hogy a Mac címhez mi kerül, és a telefonos alkalmazásnál az url címhez. Már csak azért is érthetetlen ez nekem mert ugye a legtöbb szolgáltatónál az ip folyamatosan cserélődik és sok helyen (nálam is), még egy router is bekavar. Tehát valaki elmagyarázhatná hogy hova mit kell írni és kicsit részletesebben hogy miért, és miként is működik ez a kapcsolat. Köszi, Csaba
A legtobb routernek van DDNS szolgaltatasa, vagyis egy URL-t rendel az aktualis IP cimhez, amit mindig frissit, mikor a szolgaltato IP-t cserel. Ha van ilyen opcio a routernel akkor ennek a beallitasa utan ezt az URL-t kell beallitani, ha nincs akkor az IP-t. Ahhoz, hogy kivulorol el tudd erni az eszkozt, meg be kell allitsd a routeren Port Forward (port atiranyitas)-t is: 80-as portot atiranyitani az EEPROM-ba beirt IP-re, szinten 80-as portra, minden protokollt (TCP, UPD), igy a router tudni fogja, hogy hova kell atiranyitsa a bejovo csomagokat. A belso halozatodrol az EEPROM-ba beirt IP-t is hasznalhatod.
Udv, Zsolt
Először is köszi a választ. Most már csak az nem tiszta, hogy a router alapból a 80-as portot használja http kapcsolatok létrehozására. Na most a router külön tudja valahogy választani a beérkező csomagokat hogy melyik jön a gépemre és melyik a vezérlőre vagy át kell állítani a http kapcsolatokat másik portra?
Üdv, Csaba
Csak a http keresek mennek a 80-as porton (a gepedtol kifele), a bejovo csomagok mas porton mennek, es ezeket maskepp kezeli a router.NAT (neteork adress translation vagyis halozati cim forditas) cimszo alatt tobbet olvashatsz errol a temarol
Ezert kell beallitani a port atiranyitast, hogy minden keres ami a 80-as portra erkezi iranyitsa at a vezerlore. A hozzászólás módosítva: Nov 30, 2013
Segítségeteket szeretném kérni mert nem jövök rá mi lehet az oka. Segítséget előre is köszönöm.
Szia!
A "Main" fülön állítsd át a "PP/HVSP Mode" részt "ISP Mode"-ra és menni fog.
Sziasztok!
Ha én intrerupt-ot akarok használni ATMEGA8 chipen, és INT1 már felvan használva LCD egyik vezetékének kimenetként akkor ugye használhatom INT0 külön függetlenül attól hogy INT1 kimenet?
Következő a problémám. Egy akkuőr szerű áramkört építettem, a lényeg hogy ATMEGA8 feszültséget és áramerősséget kellene mérjen, találtam is egy külföldi oldalt dokumentációval, kiegészítettem a kódot még 1-2 dologgal, de sajnos első lefutásnál az LCD re kiírja a feszültséget, de gyorsan lenullázódik, nem tudom mi a hiba valaki átnézni?
A hozzászólás módosítva: Dec 2, 2013
Van még az ICP(1) láb is ami az 1-es időzítőhöz tartozik, és az INTx lábakhoz hasonlóan(lefutó és felfutó élre) egyszerűen beállítható. Használható a T0/T1/T2 is (ha van), azok is időzítőkhöz tartoznak és - igaz kicsit trükkösen - szintén beállíthatók fel-és lefutó élre. Azonban míg az ICP1 láb az időzítő működésén nem változtat, a T0/T1/T2 lábak interrupt forrásként való beállításával használhatatlanná válik az érintett időzítő egység. Mókolós kedvű embereknél láttam olyat hogy az analóg komparátort használják ilyen célra. Ha sok interrupt forrásod van akkor javasolt:
- ATMega48/88/168 használata, mert minden portlábra beállítható interrupt(de csak csoportban) - diódás kapcsolással a forrásokat rávezetni egyetlen INT lábra, hogy mindegyiket érzékelje. (ez utóbbi csak nyomógombos vagy hasonló elven működő rendszereknél életképes) A hozzászólás módosítva: Dec 2, 2013
A megszakításkérelem problémát megoldottam, most az említett feszültség méréssel van baj hogy csak az indítástól kezdve kevés ideig marad a kijelzőn.
|
Bejelentkezés
Hirdetés |