Fórum témák

» Több friss téma
Fórum » AVR - Miértek hogyanok
 
Témaindító: pakibec, idő: Márc 11, 2006
Témakörök:
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
Lapozás: OK   391 / 840
(#) Reggie válasza davidpeter hozzászólására (») Dec 18, 2011 /
 
Akkor ezek szerint te kiolvasas utan nem is torolted az MCUSR tartalmat.. Oreg hiba.
(#) sikolymester válasza dc001 hozzászólására (») Dec 18, 2011 /
 
Nem lehet, hogy a TWI írás rosszul van kivitelezve. Az írás parancs után pl nem küldesz el STOP állapotot.
Én errefele kutakodnék.
(#) Hp41C válasza dc001 hozzászólására (») Dec 18, 2011 /
 
Beírás előtt leállítod az idő számlálását és a beírás után elindítod? A parancs regiszter (0.) 7. bitjével lehet tiltani/engedélyezni. Az idő regisztereket BCD formában írod?
(#) hunkiraly hozzászólása Dec 18, 2011 /
 
Sziasztok!AVRstudio 4-ben nem találom hol lehet kipipálni a fuse bitet a Topi féle égetőt használok és a cikkben ahol meg van a leírás ott van egy piros betűs figyelmeztetés egy fuse bitre na most ezt nem találom hol lehet be ill. kikapcsolni?mert ahol a videóban van na nekem ott nincs köszönöm a válaszokat
hunkiraly
(#) sikolymester válasza hunkiraly hozzászólására (») Dec 18, 2011 /
 
Nem minden AVR-ben van olyan CLKDIV8 fuse. Ha nem találod, akkor az azt jelenti, hogy abban sincs.
Persze segített volna, ha mondod, hogy mit programozol vele, és akkor 100% meg lehetett volna mondani.
(#) hunkiraly válasza sikolymester hozzászólására (») Dec 18, 2011 /
 
Ha a kontrollere gondolsz akkor ATMEGA8-16PU
Ha programra amit bele akarok írni akkor a a tesztben is leírt LED villogtatós téma lenne.
Köszönöm hogy gyorsan válaszoltál
(#) UbiLinux válasza zombee hozzászólására (») Dec 18, 2011 /
 
Nem használod ki az OE adta lehetőséget. Ezt kellene egy felhúzó ellenállással magasba kötnöd, hogy a táp bekapcsolásakor tiltsa le a kimeneteket, így nem jelenik meg a véletlenszerűen beálló regiszterek tartalma a kimeneteken. Utána beshiftelsz egy nullás byte-ot, majd a proci lehúzhatja az OE lábat alacsonyba.
Én a 4094-et használom ugyanilyen célra és a fenti eljárással soha nincs tranziens.
(#) dc001 válasza sikolymester hozzászólására (») Dec 18, 2011 /
 
Idézet:
„Nem lehet, hogy a TWI írás rosszul van kivitelezve. Az írás parancs után pl nem küldesz el STOP állapotot. Én errefele kutakodnék.”


Köszönöm a segítséget. Majdnem ez volt a probláma: az utolsó olvasott byte előtt is el lett küldve az ACK.

Azt nem igazán értem, hogy miért csak írás után jött elő, hogy nem tökéletes az olvasás.
(#) dc001 válasza Hp41C hozzászólására (») Dec 18, 2011 /
 
Idézet:
„Beírás előtt leállítod az idő számlálását és a beírás után elindítod?”


Köszönöm a segítséget. Eddig nem állítottam le az írás idejére, de bele tettem. (A gond egyébként az olvasással volt.)

Két problémát találtam hibakeresés közben:

A óra/perc/mp 7. bitje 1 indítás után. Ez ugyan ki van maszkolva, de nem kellene induláskor minden regiszternek 0-nak lennie? (Az adatlap szerint a control regiszter is 0x00-val indulna, de nálam a mask flag (0x08) aktív bekapcsolás után)

A másik lényegesebb gond (igaz most épp nem használom) a század mp regisztere (01) nem működik. 40 mp alatt 0x00 40 és 59 mp között pedig 0x40-es értéket vesz fel.

Erre esetleg volna ötleted?
(#) sikolymester válasza hunkiraly hozzászólására (») Dec 18, 2011 /
 
Abban biztosan nincsen ilyen fuse.
Az a fuse egyébként arra való, hogy a csak 8MHz es belső oszcillátorral rendelkező AVR-ek is 1MHz-cel guruljanak le a futószalagról (mivel standard, hogy mindegyik 1MHz-cel gurul le).

Az Atmega8 viszont állítható 1 ,2 ,4 és 8 MHz-re.
(#) hunkiraly válasza sikolymester hozzászólására (») Dec 18, 2011 /
 
Okés. De még nem hagylak békén Gondolom láttad a videót is ami ebben a cikkben van.Na Nekem az ugrik fel ami a videóban másodjára és ott emleget valami hasonlót(nem angolt tanulok szóval félig-meddig értem csak) és utána át állít egy frekvencia értéket.Na nekem az az ablak ugrál fel állandóan.Azt gondoltam emiatt de akkor nem.
(#) zombee válasza UbiLinux hozzászólására (») Dec 19, 2011 /
 
Ezt már az elején megcsináltam, de lehet, nem úgy írtam le hogy mindenki értse.
Az "OE" lehetőséget a "/G" láb adja, amire tettem felhúzó ellenállást(2.2k), és az AVR fogja vezérelni.
A bekapcsolás után kinulláz mindent és lehúzza egy 220 Ohm-os ellenálláson át majd ott is hagyja.

Az a baj hogy sem így, sem az AVR kiszedésével, sem a "/G" direktbe pozitívra kötésével nem szűnik meg:
1-2 órás állás után ha bekapcsolom, az ÖSSZES kimenet egy pillanatra aktív lesz a "/G" felhúzása ellenére is.

A következő lépés az lesz hogy a tápfeszt is az AVR fogja kapcsolni, de először a "/G" kapja meg,
és egy védődiódát is kap hogy a tápfesz és a "/G" közti feszültségkülönbség max. a dióda nyitófesz lehet.
(#) UbiLinux válasza zombee hozzászólására (») Dec 19, 2011 /
 
Próbáld ki a 4094-et, egy tesztet megér. A vezérlése gyakorlatilag ugyanaz és ott hatásos a kimenet vezérlése. Nekem így nincs semmi felvillanás, pedig itt is össze-vissza állnak be az IC regiszterei.

1.png
    
(#) tecsa hozzászólása Dec 19, 2011 /
 
Kezdőknek és angolul tudóknak ajánlom EZT a videó sorozatot megtekintésre. Azért valaki hozzá értő nézze át érdemes-e ezt nézni, esetleg tanulni belőle, valamit.
(#) neocska hozzászólása Dec 19, 2011 /
 
Hello.
A mai nap olyan problémára akadtam, hogy az AVR-Doper és az AVR Studio 5 mind 1 hibát ad ki, "Unable to enter programming mode".
Egy attiny2313 at szeretnék felprogramozni.
(#) Auf hozzászólása Dec 20, 2011 /
 
Sziasztok!

Abban kérném a segítségeteket, hogy egy ISP programozóval, hogyan lehetne kiolvasni, felprogramozni a következő chip-et.
M9S08AC128
Megtaláltam az adatlapjában, a lábkiosztáson a megfelelő lábakat. (MISO, MOSI, SCK, RESET)
Úgy vélem közel áll az avr-ekhez, ha másban nem, talán abban, hogy a programozása isp-n történik. Ne haragudjatok, de sehol nem találtam topikot hozzá, azért itt teszem fel a kérdésemet.
A folyamatban addig jutottam, hogy találtam egy software-t ami lekezeli ezt az algoritmusú chipet.
Sajnos, azonban nem tudom miért, de nem akar sikerülni.
Esetleg, ha valaki akármilyen tippel, vagy konkrét tapasztalattal tudna segíteni, azt szívesen venném.
Előre is köszi mindenkinek!
(#) brugo hozzászólása Dec 20, 2011 /
 
kezdonek mi lenne jobb : mkII vagy a Dragon ?
(#) Topi válasza brugo hozzászólására (») Dec 20, 2011 /
 
mkII. Olcsóbb és sokkal strapabíróbb.

A Dragonnak messze földről híresen rossz a kimeneti szintillesztő fokozata.
(#) sikolymester válasza brugo hozzászólására (») Dec 20, 2011 /
 
Gondolom azon felül, hogy az árát mérlegelted már, lennél kíváncsi infóra.
Eleve javaslom figyelmedbe a Jtagice3-t, ami az mk2-nél jóval olcsóbb, ellenben csak studio5 támogatja (studio4 -gyel nem tudod tehát használni).

A dragonban van egy remek plusz lehetőség: névleg tudsz vele High Voltage Programmingot csinálni, ami megmentheti az AVR-ed, hogyha sikerült a fuse beállításokat elszúrni.

Az mk2 ellenben gyorsabban programoz/debuggol.

Ha a szóban forgó kezdő komolyan gondolja az AVR-ekkel való foglalkozást, én az mk2-t javasolnám. Kompaktabb az egész, a dragon egy jó nagy darab szabadon lévő nyák. Nem lehet csak úgy bedobni a táskába.

A jtagice3 az alacsonyabb ára miatt lenne érdekes. A studio5 pedig nemrég jelentkezett egy kisebb frissítéssel, egy komolyabb frissítés hamarosan várható, abban várhatóan sok még jelenlévő bug orvosolva lesz. A jövő AVR-ei úgysem lesznek támogatva a Studio4-ben, tehát jó okkal lehet feltételezni, hogy nem nagy gond, hogy a Studio4-gyel nem megy az jtagice3.

Ezek az én észrevételeim.
(#) brugo hozzászólása Dec 20, 2011 /
 
koszonom szepen ! mkII lessz
(#) brugo hozzászólása Dec 20, 2011 /
 
azokat a tuskeket amit a nyaklapba kell ultetni, hogy csatlakozzon az mkII -hoz hogy hivjak ? hogyan keressem az uzletbe ?
(#) sgt válasza brugo hozzászólására (») Dec 20, 2011 /
 
Ha ISP mkII-ről van szó, akkor támogatom meg nem is. Ezzel minden 8 bites AVR-t tudsz programozni, de a hátránya az hogy csak programozni. Kisebb programoknál debuggolás nélkül is lehet ügyködni, de amint csinálsz egy komolyabb dolgot rögtön hiányozni fog. Dragon annyival jobb hogy ott debuggolni is tudsz.

Ha már dragon akkor így érdemes meg venni Bővebben: Link, mert így egy Xmega fejlesztő panelt is kapsz majdhogynem ingyen.
(#) sgt válasza brugo hozzászólására (») Dec 20, 2011 /
 
2 soros tüskesor.
(#) brugo válasza sgt hozzászólására (») Dec 20, 2011 /
 
igen csak a Dragonrol eleg sok rosszat olvastam ezert is fordultam hozzatok kerdeseimmel
(#) sgt válasza brugo hozzászólására (») Dec 20, 2011 /
 
Miket? Régóta tervezem azt amit linkeltem megvenni, csak még nem jutottam el odáig, de ha tényleg komoly bajai vannak akkor nem is fogok .
(#) edison14 hozzászólása Dec 20, 2011 /
 
Szerintem annak aki esztétikusan írja meg a programot és tudja használni a szimulátort annak nem kell a debug funkció. Persze néha jól jön.

brugo: épp most beszélgetünk egy programozóról melyet én is tervezek megvenni. Ebben a fórumban az utolsó oldalon találod eddigi bejegyzéseinket.
(#) sikolymester válasza brugo hozzászólására (») Dec 20, 2011 /
 
Hűha!

Lehet félreértettem és félrebeszéltem!
Én a jtagice mk2-ről beszéltem, amikor mk2-t írtam.

Bocsánat, hogyha félreértést okoztam.
(#) sikolymester válasza edison14 hozzászólására (») Dec 20, 2011 /
 
Hehe, hát azért függ attól, hogy milyen nehézségű programot írsz.

Arról nem is beszélve, hogy a szimulátor elég gyatra néha.
Legújabb példa: Atmega48PA-nál az OCR1A -nak hiába adok értéket, a szimulátorban ez nem történik meg. A valóságban természetesen jól működik.
(#) zombee válasza sikolymester hozzászólására (») Dec 20, 2011 /
 
Én évek óta programozok AVR-t, és elég cifra dolgokat is művelek. Fejlesztőpaneleket és fényeffekteket
is építgetek, illetve belefogtam egy aszinkron motorral hajtott villanygokart tervezésébe,
természetesen AVR-el oldom meg a főáramkör háromfázisú vezérlését hajtással és visszatöltő fékezéssel.

Nem vagyok valami hűdenagy májer, de eddig egyetlen alkalommal sem volt szükségem sem debuggerre,
sem szimulátorra. Való igaz hogy volt amikor 1-1 apró hiba miatt elakadtam.
De a "hagyományos" módszerekkel is kb. ugyanolyan gyorsan(vagy picivel gyorsabban) sikerült
a hibákat elhárítani, mint egyetemi sorstársaimnak szimulátorral/debuggerrel.
(#) zombee válasza zombee hozzászólására (») Dec 20, 2011 /
 
Hozzászólva az előzőhöz egy remek példa - VGA vezérlés tisztán AVR-el!
Na ezt debuggolhatnám pár évig, pedig "csak" 900 sornyi assembler kód az egész...
Na jó ennek is a "Ki mit épített" topikban lenne a helye...
Következő: »»   391 / 840
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem