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
Amit szeretnél, ahhoz teljesen elég ez az IC.
De ha nem haragszol, akkor lehet javasolnám neked, hogy vegyél egy ilyesmit: Bluetooth modul Rápöccinted a mikrokontroller UART lábaira és amit beadsz az a túloldalon kijön. Ebayen aprópénzért találni ilyeneket. Javaslom ezt mert úgy látom eléggé kezdő lehetsz. Persze nem árt a kihívás, de annak az esélye, hogy megtervezel egy működő 2.4GHz es NYÁKot, majd a 8051 -est beüzemeld szerintem konvergál a nullához. A sikertelenségből meg csak csalódás lesz.
Én a zigbee miatt szeretném ezt kipróbálni. szóval maradok ennél az IC-nél, de köszönöm az ajánlást. Igazából a szenvedés része az tuti, meg a sok kudarc is benne van, de nem szabad feladni.
Ezt nem igazán értem...
Az RTC címe 1101000 + 1 vagy 0 attól függően hogy írjuk vagy olvassuk.
Sziasztok.
A programozót összeépítettem, a szükséges programokat és a drivert feltelepítettem. A programot összedobtam, és próbapanelen keresztül kötöttem rá az áramkört az ATTiny24-re. A programozó leírásában lévő videó szerint jártam el, de egy hibaüzenetet kapok, melyet mellékelek a HSZ-ben. A kérdésem az, hogy mit csinálhatok rosszul? A dolog érdekessége, hogy a program működik (a próba kapcsolást építettem meg, a LED villogtatót), de nem 1mp időközönként villognak a LED-ek. A hozzászólás módosítva: Feb 7, 2013
Kolléga valami ilyesmire gondolt, miszerint:
A cím ugye 7 bites. Legyen példánkban az értéke: cím = 127 = 0xFE Ha írni akarsz, akkor az 1 byte, amit küldesz címzésként így áll elő: cím * 2 + 1, ami: 127*2 = 254 + 1 = 255 = 0xFF Te ugyanezt állítod csak igazából így értetted:
És mivel az eggyel balra shiftelés az szorzás 2-vel a kettő ugyanaz. Tádám
Vedd le a programozó órajelét 200kHz-re. Az AVR gyárilag szállítva 1MHz -es. A propgramozási sebesség viszont kisebb kell legyen az órajelének 1/4 -nél.
Ha a Main fül 'Programming mode and Target settings' részére gondolsz, ott átállítottam 115,2kHz-re, és kipróbáltam kisebb órajellel is.
Igazad volt, köszönöm a segítséget! Az egyik gombot elfelejtettem megnyomni.
Helló.Az lenne a kérdésem hogy az ehhez hasonló programozó adapterrel (kép mellékelve) amit a topic-ban találtam lehet-e ilyen egyszerűbb mintaprogramokat írni (tanulás céljára felhasználni: alapok,portok kezelése,programozása,időzítése...stb).És ha igen akkor van valami ilyen alapproject amin el lehete indulni esetleg ic-típussal eggyüt is?
Igen, lehet vele írni: fogod az adaptert és azzal nyomogatod a billentyűzetet...
A viccet félretéve: amit belinkeltél, az egy égető. Programokat nélküle is lehet írni, türelmes és empatikus embereknek a szimulátor sem idegen. Ezzel az égetővel az IC-re viszed fel a programot amit azelőtt írtál és lefordítottál. DE: az IC-k típusválasztéka korlátozott lesz(PonyProg) és a programozás lassú. De működik.
Üdv !
Tegnap óta alakítgattam az RTC kódon (DS1307) de még most sem csinálja a dolgát. Nincs több ötletem mit ronthattam el. Valaki tudna segíteni ? A kódban nincs benne, de letesztelem hogy jött-e adat ami eddig mindig sikertelen volt, ezért nincs benne a dekódolós rész... Köszi
Bocs, de így I2C-t fejben debuggolni kvázi lehetetlen. Én LED-del szoktam szórakozni, hogy lássam, hogy hol áll meg a kommunikáció.
A TWBR-t nullába rakod, ami F_CPU/16-ot jelent. Biztos, hogy először a leggyorsabb sebességen érdemes próbálkozni? Nem lenne jobb 10kHz körül kezdeni? A _delay_ms(20)-nak az ég világon semmi értelme. Ahogy emlékszem, addig kell várni, amíg a TWINT alacsony. A TWINT simán várhat fél órát is, a kommunikáció megengedi. 1.) ellenőrzöd, hogy az SCL/SDA alapállapotban, ha semmit sem csinálsz, akkor magasban vannak-e 2.) elküldöd a start jelet 3.) megvárod, míg befejeződik a TWINT-et vizsgálva 4.) elküldöd a címet a slave-nek 5.) ellenőrzöd, hogy az ACK megjött-e Ha megjön az ACK, akkor utána van értelme a továbbiakról beszélni. A hozzászólás módosítva: Feb 8, 2013
Bővebben: I2C.c
Bővebben: I2C.h Konkrétan figyelned kellene a TWSR értékét, hogy mi történik. I2C read: - átmegy TW_START-ba elküldöd a címet - átmegy TW_MR_SLA_ACK-ba hiba esetén - TW_MR_SLA_NACK-ba Én úgy szoktam debuggolni, hogy a TWSR állapotváltozásokat beírom az EEPROM-ba. Utána programozóval kiolvasom.
Köszi az infót, megpróbálom összehozni a leírtak alapján.
Esetleg valami más program ami több típust képes programozni,de ezzel az interface-el működik?És esetleg valami könnyen megépíthető demo kártya kapcsolást mellyen van 2X16-os LCD?Bocs a sok kérdésért,még most kezdek neki a programozgatásnak.
Csak szólok hogy 10kHz-en nem minden működik, pl. PCF8574 nem működött 27kHz alatt.
Ez hardverben korlátozott.
Keresd meg az oldalon az AVR 8 lábbal cikksorozatot.
Azonnal neki is állok olvasni.Köszönöm a válaszokat.
A 8 Ft-os BC-338-as projektem lezárult, mert megpróbáltam vele egy 12mA fogyasztású relét kapcsolni (védődiódával). A bekapcsolás még sikerült is, de utána úgy maradt: hiába földeltem a bázisát, azért 2-3V még átfolydogált rajta.
Azt írták az adatlapon, hogy 25V-ot bír, így nem értem, hogy miért tört le 9.6V-on. MPSA42-vel fogok ezután kapcsolni, a BC-338-at meg mellőzöm. A tranzisztor csere segített a problémán. A hozzászólás módosítva: Feb 9, 2013
Azért ki lehet fogni egykét selejtes példányt, a típust ezért még nem kell leszólni. A dióda is
lehet hibás vagy nem oda való, pl. ha lassú akkor ne hidd hogy a 25V-ot nem éri el a csúcsfesz! Ami pedig a mértékegységeket illeti: ami átfolyik az az áram és nem a feszültség... A hozzászólás módosítva: Feb 9, 2013
Reprodukáltam a sztorit breadboard-on.
A lényeg, hogy fordítva kell a BC-338-at bekötni és akkor bekapcsolás után úgymarad. Az adatlap szerint a Vbe max 5V lehet, így a 9.6V-os letörés is érthető.
Hali!
Egy ideje ezt a két üzenetet dobja JTAG-om, miután letöltöttem a programot. Ettől függetlenül megy a debug, jó minden, fut a program, csak nem tudom miért írja. Tudtok rá valami okosat mondani, hogy mi okozza és hogy lehet megszüntetni? JTAG ICE: Warning: Reading the program counter, an invalid value (0x7FFFFFFF) was received from the device. JTAG ICE: Warning: A problem occured while executing this debug command! Please check the connections, the voltage, and the clock system of the target application! AVR Studio 4.18 Kiborg
Hát vagy az AVR-ed nem kap tápfeszt vagy szakadás/zárlat van. Esetleg a JTAGEN ki van kapcsolva.
A hozzászólás módosítva: Feb 9, 2013
Hááát, a program fut, le is tudom tölteni rá, tudom lépésről lépésre debugolni. A proram fut, hiszen kezeli az LCD-t, kiírja a szöveget, méri a hőmérsékletet, stb....
Ja és JTAG-on keresztül töltöm le a programot. Zárlat/szakadás? Hol érdemes keresgélni?
Sziasztok. Szerettem volna felprogramozni az AVR mega8 amat. Egyszerű kis program, gyakorlás céljából. AVR studiot használok, AVR ISP/STK 500 programozóval. Bekötöttem a miso, mosi, sck, reset lábakat, ahogy kell. Az AVR studióból programoznák, de nem enged.Azt a hibaüzenetet dobálja, hogy
"Unable to open file ... .hex: File does not exist." Mivel lehet a hiba, mi a megoldás?
nézd meg, tényleg ott van-e a fájl!
Tényleg ott van, a tallózással választottam ki a hex fájlt.
Nálam ez akkor történt, amikor az elérési útban ékezetes karakter volt. Valamiért az AVR-Studio csak az ASCII karakter készletet szereti az elérési utakban. Ca. úgy mint 20 éve
A fájl nevében nem szerepel diakritika.Kipróbáltam példaprogrammal is, más AVRel, ugyan ez a hiba. Felinstaláltam az Atmel SP2-t, azóta lassú az egész + lefagy a gép.
Van valamilyen progi, amivel AVR ISP/DOPER/STK500 al tudok programozni AVR Studion kívül?
Teljes AVR tools újratelepítés, beleértve a WinAVR vagy AVR Toolchain-t is.
A törlés után az AVR Tools mappát töröld, és csak utána pakolj fel ismét mindent. Ez segít! A teljes művelet max. 15-20 perc. A hozzászólás módosítva: Feb 11, 2013
|
Bejelentkezés
Hirdetés |