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
Több dolog is okozhatja ezt:
1. A Reset lábat átállítottad I/O lábnak. Ez után sorosan már nem tudod programozni a mikrokontrollert, mert ahhoz resetként kellene funkcionálnia. 2. Lehet hogy csak az oszcillátor beállításod rossz, vagy nem működik a kvarc amit használsz. Esetleg külső oszcillátort állítottál be, de nem használsz kvarcot... Ilyenkor külső órajelet kell adni a mikrokontrollernek és úgy átállítani a lock biteket belső órajelre.
No gondoltam újra nekiesek a témának és ismét bepróbálkozok egy tinivel, de ugye azt a törvény bünteti! Mindenesetre immáron tovább jutottam. Betettem egy újat (még jó hogy anno 10-et vettem egyszerre és elkezdtem nézegetni a Bascomban a beállításokat. Még le is printscreeneltem, hogy vissza tudjam állítani az eredeti értékeket. Ismét felprogramoztam, de csak nem akart villogni az a fránya ledsor, így ismét elkezdtem macerálni a fuse biteket. Így már szűkítettem a kört, mert egyszercsak ismét beadta a kulcsot. A lock bitekhez most direkt hozzá sem nyúltam. Vegyészmérnök, van a körben egy 4 MHz-es tutira működő kvarz, talán ez is szűkítheti a megoldások körét.
Egy új Attiny2313 úgy van beállítva, hogy a 4 MHz-es belső oszcillátorról menjen, de ez az órajel még le van osztva 8-cal. Ha nem macerálod a fuse biteket, akkor így működnie kell! Amikkel el tudod érni hogy ne működjön a mikrokontrollered: watchdog timer bekapcsolása (ha a programodban nem reseteled a watchdog timert, de ettől még természetesen újra tudod programozni), reset láb átállítása, soros programozás letiltása, valamint rossz oszcillátor beállítás... Ezek közül kellene kitalálnod, hogy mit csináltál...
Na eddig OK! Majd kitalálom, hogy mit szúrtam el, de a nagy kérdés, hogy vissza lehet-e állítani őket?
Valakinek sikerült beüzemelni egy mezei processzorral müködő USB-s programozót? mert engem is érdekelne...
Mindegyiket vissza lehet állítani megfelelő módszerrel (pl. párhuzamos programozó...).
Igen. M8 alapú. de bizonytalan, és az AVRDUDEval megy....
Amivel kicsukhatod magadat:
- órajel rossz forrása/típus - DivCLK8 bekapcsolva, és alacsony az órajel - RESET letiltva - ISP letiltva.
Programozónak TavIR mester honlapján található Kanda programozót építettem meg, ez ugye párhuzamos akkor elvileg ezzel is meg lehet gyógyítani őket. Akkor már csak a módszer a kérdéses, esetleg ha ezt közkinccsé tenné valaki?
Mégis mitől lenne párhuzamos?!
Az h párhuzamos nem azt jelenti, hogy a párhozamos portján van a PC-nek. Ez az AVR - programozó közötti adatcserére utal. Az általad épített Kanda az soros.
A chipnél párhuzamos....
http://elm-chan.org/works/avrx/report_e.html Alul a paralell programmer / HVS programmer. Nem építettem még meg, de tervben van.... Illetve az STK500-as Demoboard tud ilyet. Az ATMEL gyári mintája. Erről a hgéten tudok bővebben írni (T2313 és M8 chip van kiütve nálam)
Szoval, ha az ISP programozast letiltottad, akkor csak parhuzamos programozo segithet.
Mas esetben: valoszinuleg az orajel van rosszul konfiguralva. Probalj meg rarakni egy kulso RC oszcillatort(ha tud ilyet). Ha igy nem megy akkor adjal az XTAL1 labra kulso 4 Megas orajel forrast rakotni, valoszinuleg segit.
Itt egy párhuzamos programozó emulátor:
http://www.e-lab.de/downloads/diverse/ParProg2.zip Ez MEGA8-hoz van de elvileg át lehet írni más kontrollertípusra is. Én próbáltam, működik.
Hát... én sokat küszködtem vele, igaz én ATtiny2313-t akartam vele visszaállítani. Ha valakinek sikerülne kérem szóljon. A hardware most is össze van rakva, csak valami működő szoft kellene bele.
Van valakinek USB-s AVR programozo kapcsolasa FT232RL + AVR-el? (esetleg olyan, ami biztos hogy mukodik is..)
Avr910 (szabvány sorosportot használ) . És itt Soros-USB átalakító.
Ugyanez a STK500-ra is igaz....
Igen, RL-t. Igazából most nekem se nagyon van időm, de ezt azért nemsoká befejezem.
Sziasztok!
Én tudatlan, megszeretném kérdezni, hogy a willemmel kiolvastam egy számítógép biosát. A kérdésem az lenne, kicsit hülye a kérdés, pl. hogy lehet vagy milyen progi kell hozzá, hogy én szöveget át tudjak írni?
Nálam a AVR910 alapu készült el. Ez sima ft232RL alapon van a soros-usb átalakító.
A FT232RL+M8 alapú STK500-as protokollú SMD-s készítés alatt....
STK500 megvan.
A sok halott Tiny2313 feléledt. Most a programozó-része készülődik visszakövetődni, hogy legyen egy egyszerű resetdisable visszaállíó áramkörösdim... de lehet hogy a parprog készül belőle. Valami egyszerűt kellene kitalálni. Még a tápellátáson filózom már csak... A programja bascomosítódik...
Hello!
Atmega 32-vel szeretnék egy floppyből kiszedett 4 vezetékes, bipoláris léptető motort vezérelni. Az lenne a kérdésem, hogy mégis hogy kéne neki vágni? A 4 kivezetést vezérelhetem 4 port lábról közvetlenül? Csak a vezérlés sorrendjétől függ a forgás? köszi
Sziasztok ! Abban kérném segítségeteket ,hogy volna egy AVR controllerhez való programom Hexa -file-ben ,de ebből a progiból nem kellene minden ,vissza lehetne valami modon fejteni Basic-be ? Segítségeteket előre is köszönöm.
Asszem assemblybe mintha lehetseges, de basicbe nem hiszem. Inkabb ajanlom ird meg azt a reszletkodot amire szukseged van, mert assemblyt is olyant fog adni, hogy abbol mukodokepes reszletkodot nem nagyon fogsz tudni (szerintem) kiszedni.
Assembly-be viszonylag könnyen visszafejthető a beégetett kód (vagy a HEX fájl), de annak sincs sokszor értelme, mert hosszabb kódoknál teljesen értelmezhetetlen lesz az egész, minden csak zagyvaságnak tűnik. Ugyanis a beégetett kód sem kiegészítéseket, sem magyarázatokat, sem kommenteket nem tartalmaz, sőt, a címkék sem lesznek azok, amiknek valaha el voltak nevezve. Pl. Timer1 címke helyett lesz LABEL0, ADconv helyett lesz LABEL1...szóval ezt általában így képtelenség visszafejteni.
Basic-be visszafejteni pedig szerintem egyenesen lehetetlen dolog... |
Bejelentkezés
Hirdetés |