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
Van esetleg pár darab ATMega8-asod eladó?
DIP és SMD is megfelel...
mega8 nincs, mert soha nem is hasznaltam. csak 1-2 db van azokbol amit hasznalok. esetleg van 5db mega169p amire egyaltalan nincs szuksegem. Illetve kb 2 hete meg kaptam mscbpnel mega168-ast, szerintem az van nekik.
(ja amugy a keszlethianyoknak lehet az az oka is, hogy nagyon sok tipusnak most keszult el az A vegzodesu kivalto tipuse, es lehet hogy az is benne van a dologban,hogy a regi tipus kifuttatjak.)
Hello!
Pénteken azt írta az MSC-BP, hogy csak ezek az AVR kontrollerek vannak(ami nem foglalt), a többi minimum 3 hét, de csak októberre lesz meg minden: - ATMEGA48PA-PU - ATMEGA48-20AU - ATTINY2313-20SU - ATTINY13A-PU - ATTINY45-20PU - ATTINY45-20SU Legutóbb ATMega48-ból vásároltam be, egyrészt rendeltek tőlem, na meg nekem is kellett tartalékba. Azaz csak ATMega48P volt nekik aminél a signature más. Szerencsére láb-és kód kompatíbilis, simán ráment a korábban P nélkülire fordított hex(saját tervezésű VGA meghajtó), nem is értem mi a különbség...
Szállítanak házhoz. Gyakran figyelem a weboldalukat, de még soha se vettem észre, hogy frissítették volna.
Az a baj velük, hogy ha jól emlékszem csak szerdánként adnak fel csomagokat.
E-bay-en még van fent pár darab és nem is tűnik drágának.
a P vegzodes pico-power-t jelent. Itt van leiras, hogy miben mas a normalhoz kepest.
Valakinek nincs véletlenül egy PID szabályzó algoritmusa (amibe csak a P, I, T tagoknak megfelelő értékeket kell beírni)?
Próbáltam írni a Wikipédiás cikk alapján, de nem nagyon sikerült.
Sziasztok !
Van egy Mega128, es hozza egy hex. A fuse bitekkel kapcsolatosan kerdeznek...Eddig az volt, hogy kulon irtam be a fuse biteket avr-dude -al, es a fuse bitek a Makefile-ban voltak bejegyezve. Ebben az esetben meg fogalmam nincs mi az eljaras,...ugyanis van egy hex es kesz. Koszi.
Nézz szét ott, ahol a hex-et találtad, hogy van-e leírás a Fuse bitekről. Ha nincs akkor nem nagyon tudsz mit csinálni, maximum próbálgatni. Esetleg ha van kép a kész eszközről, kapcsolás, akkor az alapján az órajelet be lehet állítani.
Az orajel Ok, azt beallitom. De a tobbi,...
Nincs semmi egyeb anyag rola.
Sziasztok!
Korábban már írtam nektek egy banális probléma kapcsán ami azóta sem oldódott meg, de nem adom fel. Tehát mátrixbillentyűzetet is használó programot tervezek AVR-re. Ami ugye abból áll hogy egymás után kiadunk egy portról 5V-ot a bill. oszlopaira és a sorokat pedig bemenetként működő portokra kötjük így vizsgálva meg, hogy éppen melyik gomb van lenyomva. Tesztként (!) mielőtt hozzáfognék a teljes program megírásának gondoltam megcsinálom az alábbi kódot mert ha ez működik akkor működni fog mátrixbill.-el is. Ezt csak azért írtam most le mert már mondták itt nekem, hogy miért írok ilyen hülye, haszontalan programot.
A lényeg, hogy a PB1 folyamatosan magas szintet ad ki ami egy nyomógombon keresztül csatlakozik a PB3-ra. Amennyiben a gomb nyomva van úgy a PINB3 értékének egynek kéne lennie amit az if fejében vizsgálok meg. Amennyiben így van jön egy 250ms-es delay a pergés miatt és utána kigyullad a PB0-ra kötött led. A gond esetemben az, hogy az if törzse akkor is végrehajtódik ha a gomb nincs lenyomva és elvileg a PINB3 értéke nulla, mert nem érkezik meg az 5V. Mi lehet a gond? Egy biztos, hogy szerintem az if-nél, méghozzá a feltételvizsgálatban van a hiba. Próbáltam többféle feltételt megadni de vagy ugyanez történik vagy az, hogy a led a gomb állapotától függetlenül sötét marad. Attiny45-öst használok egyébként. Aki segít megoldást találni annak előre is köszönöm.
Nezd meg itt. AVR221 amit keresel szerintem.
Az AVR io input labain alapertelmezetten a belso felhuzo ellenallas engedelyezve van. Igy ha nem kotottel a labra lehuzo ellenallast, akkor a tapon lesz. A felhuzo ellenallasokat a PUD bit egybe allitasaval tudod letiltani, de mindenkeppen hasznalj lehuzo ellenallasokat, hogy stabil allapotban legyenek az inputok, ha nincs gomblenyomas.
Ha pedig erdekel a szemelyes meglatasom: a logikat forditsd meg, es a lenyomott nyomogomb a fold fele huzza a bemenetet. Igy hasznalhatod elofeszitesre a belso felhuzo ellenallast(nem kell felhuzo ellenallas), valamint az alacsony aktiv logikanak szamos elonye van mint pl nagyobb elofeszito ellenallas elegendo(azaz a beepitett), igy kisebb a gombnyomas fogyasztasa, kisebb zajt general stb...
Ha az orajel ok, akkor a tobbi kvazi lenyegtelen. Ha a wdt-t nem engedelyezed, akkor minden bizonnyal maradektalanul fog mukodni. CLKDIV8-at kell majd pocoktetned, ha nem jok az idozitesek stb.
Szia!
Köszi a tippet! Azt még le tudnád írni nekem, hogy pontosan milyen utasítás az ami kikapcsolja a pullup-okat? Nem csak annyi, hogy megtoldom a programot egy (1<
Na valamiért nem küldte el a végét. Ez lett volna:
"...megtoldom a programot egy
Hello!
Az AVR kontrollerekbe a felhúzó(pull-up) ellenállások a kontroller indulásakor vannak kapcsolva. Amikor a port DDRx regiszterének megadott sorszámú bitje 0, akkor bemenetként szolgál a portláb. Ilyenkor tudod kapcsolgatni a felhúzó ellenállásokat úgy, hogy a PORTx porton a megadott bitet törlöd. Bekapcsolni meg úgy 1-re állítod. A beolvasás a PINx-el történik.
Köszönöm! Próbálkoztam ez alapján is, de sajnos nem sikerült.
Axel fórumtársunknak hiába magyarázol. Már vagy harmadszorra teszi fel ugyan azt a hasonló programot ugyan azokkal a tipikus problémákkal. Én már írtam is neki egy mintaprogramot, magyarázattal, amiben benne van például az, hogy hogyan írjuk a feltételbe egy port logikai vizsgálatát, vagy a felhúzó ellenállások. A programban volt egy apróbb hiba, amit trudnai le is írt, de még arra se vette a fáradtságot, hogy kijavítsa.
Még egy komplett billentyűzet kezelő programot is küldtem neki, mert ezt akar csinálni, de szerintem meg se nézte.
Szia!
Ez a sor értelmetlen:
Én sem tudok mást mondani, mint variszabi. Ha nem veszed a fáradságot, hogy elolvasd amit írnak neked, akkor ne csodálkozz, ha nem működnek a dolgok.
egy kérdés, semmi több
van egy Arduino Duemilanove panelem, meg egy ilyen usbtinyisp bootloader íróm hozzá: kép1 valahogy így néz ki összedugva: kép2 minden oké, rendben működik, de csak 168-as atmegát tudok írni vele, 88-asat nem... mi lehet a gond? előre is köszi a választ! üdv nektek, jó építgetést!
oh, hát akkor ez a baj...
de akkor hogy tudok feltolni a 88-asra progit, mert nekem bootloader nélkül nem megy fel rá... nem tudom használni?
Arduino nélkül fel tudod programozni.
1. A programozót rákötöd a 88-as megfelelő lábaira 2. adsz neki tápot, ha kell 3. pl. avrstudio-ban felprogramozod vagy: 1. Ha az arduino-ban szeretnéd használni beteszed a 88-ast rákötöd a programozót 2. adsz neki tápot, ha kell 3. pl. avrstudio-ban felprogramozod Így tudod használni a 88-ast, de az arduino fejlesztő környezetet bukod.
köszi a gyors választ! akkor maradok a 168-asnál, bár kicsit most borsos az ára!
jó építgetést nektek!
Sziasztok !
Probalta valaki hogy ATMega128L megy 8 MHz folott is? Csak L-es van itthon es 14.7456 MHz orajel van.
0 - 8 MHz ATmega128L, 1. oldal A válasz nem, az L-es csak 8MHz-ig megy.
Koszi, de ezt en is latom. En tapasztalatokra vagyok kivancsi. Plane hogy ilyen kemeny ara lett az AVRnek (is).
|
Bejelentkezés
Hirdetés |