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   311 / 840
(#) kovacsj válasza Reggie hozzászólására (») Feb 25, 2011 /
 
Köszönöm, ha arra járok ismét, akkor megpróbálom. Túlnyomórészt Linuxot használok én is. (Már 1999-óta. )
(#) IMi válasza Petroimro hozzászólására (») Feb 25, 2011 /
 
Szia!
Ha jól tudom 8 bites AVR-re nincs, de itt van ez :
Bővebben: Link
(#) Reggie válasza kovacsj hozzászólására (») Feb 26, 2011 /
 
Akkor plane nem art. Volt egy olyan koztes verzio is, aminel csak linux alol valamiert nem ment jol az ISP programozas. Ez kb 1-2 eve volt. De a legutobbiaknal mar nincs ilyen gond.
(#) samu003 hozzászólása Feb 26, 2011 /
 
Sziasztok!

Még mindíg nem tudom hogy lehetséges az AVR studióban a programozott AVR aktuális program memoriáját kiolvasni. Szükség lenne, mivel egy adott memoria cimen tárolok adatot, és meg kellene tudnom mennyi is az a memoria szeglet értéke!
(#) sikolymester válasza samu003 hozzászólására (») Feb 26, 2011 / 1
 
Van debuggered, mert csak akkor lehetséges.
Ha van, akkor értelemszerűen debuggolás közben View/Memory opció. Ott aztán látod az aktuális memória tartalmat.

Illetve Debug/UpDownload Memory opciónál ki is tudod menteni .
(#) samu003 válasza sikolymester hozzászólására (») Feb 26, 2011 /
 
Köszönöm
(#) kovacsj hozzászólása Feb 28, 2011 /
 
Sziasztok!

Linux alatt a Makefile melyik részébe (és mit) kell írni a lebegőpontos ábrázoláshoz? A sprintf() függvényt szeretném használni. AVR Studióval egyszer már megcsináltam, de most Linux alatt érdekelne. Elsősorban parancssorból. Ha úgy nem megy, akkor Eclipse-vel.. Lefordul most is a program, de az LCD-n csak egy kérdőjel jelenik meg.

Köszönöm előre is!
(#) samu003 válasza sikolymester hozzászólására (») Feb 28, 2011 /
 
Amugy milyen debuggerre gondoltál? Studio 4 megfelelő?
(#) Reggie válasza samu003 hozzászólására (») Feb 28, 2011 /
 
Nem szoftver, hardver. Pl. JTAG ICE MKII, vagy valami JTAG ICE klon(pl evertool).
(#) kovacsj válasza kovacsj hozzászólására (») Márc 1, 2011 /
 
Most ott tartok, hogy "skipping incompatible libprintf_flt.a when searching -lprintf_flt"

Reggie, nincs valami ötleted?
Mi a manótól nem kompatibilis, amikor együtt települt a csomaggal?
(#) Reggie válasza kovacsj hozzászólására (») Márc 1, 2011 /
 
Ellenorizd le, hogy a -mmcu= es az -arch= jo parametereket kapnak meg. Ha igen es a hiba fennall akkor:
Lehet, hogy rossz helyen keresi(azaz egy masig maggal rendelkezo AVR vagy nem is AVR architekturara forditottat probal belinkelni). Add meg a helyes libnek az eleresi utjat kozvetlenul a -L kapcsolo utan irva. Altalaban a /usr/lib/avr/lib/avrXX dir-ben talalod meg. Az XX attol fugg, hogy a te avr-ednek milyen magja van.
Modszer 1:
Ha belelepsz valamelyik konyvtarba akkor ott lesznek crtYYYYY.o fajlok, az YYYYY az adott IC tipusra utal igy a mellette levo .a fajlok is jok lesznek ezekhez a tipusokhoz.
Modszer 2:
Toltsd le az avr-gcc forrasat es az avr-devices.c -ben megtalalod hogy melyik IC tipushoz melyik AVR mag tartozik.
(#) kovacsj válasza Reggie hozzászólására (») Márc 1, 2011 /
 
Köszönöm szépen! Megyek is vissza oda. Windows alatt ugyanis jó a lebegőpontos ábrázolás, de én nem itt szeretném csinálni.
(#) kovacsj válasza Reggie hozzászólására (») Márc 1, 2011 /
 
Reggie, szólíthatlak Istennek?
(#) kovacsj válasza kovacsj hozzászólására (») Márc 1, 2011 /
 
A kérdőjel azonban megmaradt.
Pedig már minden jónak tűnik.

Mehetek vissza az Ablaxba.
(#) Reggie válasza kovacsj hozzászólására (») Márc 1, 2011 /
 
Na azt viszont olyas valakitol kell megkerdezni, aki hasznal printf-et. En sajat fuggvenyeket hasznalok.
(#) kovacsj válasza Reggie hozzászólására (») Márc 1, 2011 /
 
Nem baj, innen már majd csak kialakul!
Köszönöm ismét!
(#) Reggie válasza kovacsj hozzászólására (») Márc 1, 2011 /
 
Nincs mit. Viszont ha igy magatol nem talalta meg a lib-et, amit pedig kene, akkor a helyedben atneznem alaposan a makefile-t illetve a parametereket, mert szinte biztos hogy valahol valami el van szurva.
(#) kovacsj válasza Reggie hozzászólására (») Márc 1, 2011 /
 
Az az érdekes, hogy Ablax alatt ugyanaz a kód jó. Biztosan a Makefile-ben lesz a baj, ezt majd később át is nézem. Az az igazság, hogy már írtam bele sok mindent, és lehet, hogy maradtak benne olyan dolgok is amik a mákos bejglivel kapcsolatosak. Na és természetesen ezt még sokat kell tanulnom.
(#) kovacsj válasza Reggie hozzászólására (») Márc 1, 2011 /
 
Windows alatt az ltoa( (dword) ( mert_ertek-Elem_min)*100/volt_tartomany),buff,10); eredménye 2.
Linux alatt 100.

mert_ertek = 5115
Elem_min = 3400
volt_tartomany = mert_ertek - Elem_min = 5115-3400 = 1715

Namármost 1715*100/1715 az 100.
Az Ablaxnak miért nem annyi?
(#) sikolymester válasza kovacsj hozzászólására (») Márc 2, 2011 /
 
Próbáltad már legenerálni a makefilet az mfile programmal?
Itt találsz róla infót: Mfile

Van benne olyan opció miszerint a printf() az legyen lebegőpontos. Érdemes lenne megnézni mit generál erre, és neked mi van a makefileodban most.
(#) kovacsj válasza sikolymester hozzászólására (») Márc 2, 2011 /
 
Nagyon szépen köszönöm neked is!
Mindenképpen meg fogom nézni.
Csak az a baj, hogy ezek az adatok (lebegőpontos számok) egy lcd_puts() függvénybe kellenének. Számomra így a sprintf() tűnik egyszerűbbnek, de biztosan azért, mert még keveset tudok.
(#) Hp41C válasza kovacsj hozzászólására (») Márc 2, 2011 /
 
Szia!

Próbáld meg így: ltoa( (((dword) ( mert_ertek-Elem_min))*100L)/volt_tartomany)
(#) samu003 hozzászólása Márc 2, 2011 /
 
Sziasztok!

Az alábbi készülékkel is tudok debuggolni?Bővebben: Link
(#) edison14 válasza samu003 hozzászólására (») Márc 2, 2011 / 1
 
Ezzel csak programozni lehet.
(#) Reggie válasza kovacsj hozzászólására (») Márc 2, 2011 /
 
Mi az az ablax?
(#) kovacsj válasza Reggie hozzászólására (») Márc 2, 2011 /
 
Valami operációs rendszer utánzat. Unix - Linux - Ablax (Windows)

Az a lényege, hogy megpróbál gondolkodni helyetted, és mindig tudni véli, hogy mi neked a jó.

Tudom, hogy nem kellene minden hibát a Windowsra fogni, de nálam ez sajnos egy megrögzött szokás.
(#) sucuka válasza kovacsj hozzászólására (») Márc 2, 2011 /
 
Végülis emberek csinálják mindegyiket, csak más a motiváció, ha lehet így nevezni
(#) Reggie válasza kovacsj hozzászólására (») Márc 2, 2011 /
 
Ahh, tehetsegpotlas.
En mar attol is kivagyok, hogy a KDE4 (meg a GNOME is) automatikusan bemountolja a gepre dugott pendrajvot.
(#) Reggie válasza kovacsj hozzászólására (») Márc 2, 2011 /
 
En ezekkel a szamokkal meg papiron sem tudtam kihozni a 2-ot, pedig mar mindenfele tipussal probaltam tulcsordulasi problemat okozni. Sot meg az indianok sem okozhatjak.
(#) covek válasza Reggie hozzászólására (») Márc 2, 2011 /
 
Ha már Linux akkor Ti milyen környezetet használtok fejlesztéshez?

Nálam git-ben van tárolva az első két tesztprojekt és annak header fájljai. Bővebben: Link.

A headerek egy kedves ismerősöm munkáját (is) takarják. Ti használtok ilyesmit? Vagy minden projekt esetén új Makefile, stb.? Változáskövetést?
Következő: »»   311 / 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