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
Igen, közben rájöttem én is, ma jönnek az alkatrészek, panel már megvan, összerakom, jó ha van.
Sziasztok,
Szeretnék építeni egy olyan debug board-ot, amelyen 16 led lesz, és 5V-os soros portról lehet majd rajta a ledeket ki/be kapcsolni. Kigondoltam a következőt: Egy Attiny85-be menne bele a soros jel, és ezt a jelt feldolgozva továbbitaná a 74HC595-ösök felé. A gond az, hogy az Attiny85-nek 5 használható portja van és nekem 6-ra volna szükségem (2 port az órajelnek, 1 port bemenő adatnak, 3 port a 74HC595-nek). Csak Attiny85-ös uC-m van, vásárolni nem szeretnék bele egyebet. A kérdésem: Melyik variáns lenne a legjobb? 1. Kettő helyett egy lábon adni az órajelet. 2. A RESET lábat használni soros bemenetként. A programot többször ujrakell majd irjam bele, ézért nem szeretném letiltani. A választ előre is köszönöm! A hozzászólás módosítva: Dec 2, 2016
Muszáj külső órajel? RS232 soros kommunikációhoz alacsony sebességnél nem kell atom pontosnak lennie az órajelnek.
Nem muszáj a külső órajel, de szerettem volna, mert a belső orajelt sohase sikerült pontosan beállitani.
Csak annyira kell pontosnak lennie, hogy egy-egy bájtot jól tudjon átvenni. A startbittől kezdődik a mintavételezés megfelelő időközönként, és ha a bájt végéig csak annyira csúszik el, hogy még nem csúszik át másik bitbe, akkor nyert ügyed van. A következő start bit újra indítja az mérést, így a hibák nem adódnak össze. Az adó oldal azzal még segíthet, hogy 2 stopbitet szúr be, vagy többet (vár egy picit két bájt küldése között), hogy biztos elkerülje a ráfutást. Egy kisérletet szerintem megér próbapanelon kipróbálva.
Sajnos SMD Attiny85-öm van. Forrasztok rá szálakat és kiprobálom ha minden húr szakad.
A RESET láb használatáról mi a véleményed?
Ha nincs magasfeszültségű programozód, akkor hagyd meg szerintem resetnek. Ha a kicsivel feljebb említett fusebit doktorod van, azzal elvileg minden programozás előtt alaphelyzetbe hozhatnád a procit még i/o-nak használt reset lábnál is, de szerintem az elég macerás lenne.
Precíziós IC foglalat kiszedet lábaiból és egy kis nyákból csinálhatsz smd-dip adaptert. Ha a nyákon a DIP ic poziíciókba akkora furatokat fúrsz, hogy a lábak felső vastagabb része is belemenjen, akkor alul a vékony rész kilóg annyira, hogy egy rendes dip tokba, esetleg próbapanelba rendesen belemenjen. A hozzászólás módosítva: Dec 2, 2016
Ha épitek egy ilyen magasfeszültségü programozót, akkor használhatnám a RESET-et i/o lábnak?
Elvileg igen. Azzal viszont számolj, hogy a reset láb ilyenkor 12V-ot kap, ezért ha az áramkörön belül programozod, akkor vagy bírja a rákötött rész is a 12V-ot, vagy egy jumperrel tudjad leválasztani.
Köszönöm a segítségedet, tervezek rá egy jumpert is.
További szép estét!
Végeztem a fusebit doctor-ral, attiny2313-nál a jelenség villogó piros led, teszteltem egy atmega644-el azt szépen visszaállította.
Mai szösszenet, új avr, program betölt, bitek belő, program ráküld, halál
![]() Fusebit doki sem tud mit kezdeni vele, a piros villog.... Én feladtam...
Szia!
Nem elképzelhető, hogy kifogtál egy hibás attiny szériát? Én PIC16F628-at vettem pár darabot kínából, az első progamozásnál semmi probléma, másodjára már fel sem ismerte a PK2. Ha nagy keservesen ki is írta a típust, összevissza dolgokat irkált. Volt az 12C84, 16C628, 16F84... A hozzászólás módosítva: Dec 3, 2016
Nem tudom, két különböző helyről vannak... De mindenesetre letört rendesen, fusebit doctort összedobtam pöccre ment, oda is avr kell, c64 floppy emulátorokat csináltam ott is ment mind pöccre, itt ez miért fog ki rajtam nem értem...
Hasonló arduinos fusebit doctort én is használtam már, és jól működött. Csak abban külön vannak definiálva különböző típusok. Mondjuk abban nincs benne a 2313.
Ponyprog-ot valaki használja win10-en? Próbálom úgy programozni ahogy a szerző, lpt kártyám van, be is lőttem a címét de az istenért nem látja.
Probléma megoldva, attiny felprogramozva, éééés működik
![]()
Gratula!
![]()
Sziasztok.
Az AVR Studio 4-et használva szeretném a T-Bird 3-mat C-ben programozni. Eddig minden működött rendesen, le volt szedve a WinAVR és tudtam fordítani a kódomat és küldeni a boardra. Egyik napról a másikra minden fordítás során lefagy a program és kilép. Többször letöröltem minden és telepítettem újra fel, de nem oldódott meg a probléma. Más számítógépeken is próbáltam (win 10 és vista is) de ott is ugyanez volt a hiba. Ti tudtok segíteni? Előre is köszi a választ.
Másik panelt nem tudsz kipróbálni? Esetleg másik kábelt.
Sziasztok, nem AVR, de kellene egy kis lökés.
Cimbora fia 8051-et tanulna, nosza,üssünk össze valamit neki. USBASP programozó van, átégettem a FW-t. Legegyszerűbbnek az avrdude használata látszott az ISP felprogramozáshoz (most mindegy, hogy 89S51/52/8253, mind van a fiókban), config-file az mcs51 sorhoz hozzáfűzve a netről vadászott konfigurációs beállítások. Elméletileg minden jó és szép (más programhoz használok USBASP modult, az működik mind, azzal írtam át a FW-t is). Batch file 1 soros: "avrdude -p 89S52 -c usbasp -e -U -w flash:"1.hex" -vvvv" Sajnos telerotálja a képernyőt (az elejét nem is látom, mert a /p kapcsoló hatástalan), felsorolja a típusokat oldalakon keresztül és kilép. Ha valaki programozott már fel 89sxx-t USBASPvel, kellene egy apró segítség, mit rontok el?!? 4 órát túrtam a netet, elméletileg működnie kellene, max kiállni chip-hibával, ha vacak, ami rá van dugva, de ez még szerintem valami konfig-baj.
Üdv!
Első ránézésre rossz parancsra tippelek. A tiéd:
Ahogy én használom AVR-el(neten is így találom):
Nem tudom, hogy a 8051 felprogramozása miben más. Még nem csináltam.
Ha parancs végére beírod idézőjel nélkül ">hiba.txt", akkor a képernyőre szánt szöveget a hiba.txt-be írja bele, amit aztán már nézegethetsz. Batchban több parancs esetén ha egy fájlba akarod az összes parancs kimenetét, akkor az első ahogy fent írtam, a többinél ">>hiba.txt" ami hozzáfűzés új fájl létrehozása nélkül.
Köszönöm a segítségeteket!
Létrehoz egy txt file-t, de az 0 hosszúságú ![]() Valami nagyon amatőr hibát vétek, az a gyanúm.
Akkor ird ugy, hogy avrdude .... 2> hiba.txt
Ettol nem a standard output, hanem a standard error lesz a hiba.txt file-ba iranyitva.
Na, már van hibajelentésem.:avrdude: error: no usb support. please compile again with libusb installed. Programmer operation not supported. A testlibusb meg azt mondja, hogy minden rendben, látja az USBasp-t is. (másik, eredeti FW-el szépen megy az AVR programozás, mindenki látja).
Hjaaaj, tudtam én, hogy nem szabad elhamarkodott ígéreteket tenni cimborának... |
Bejelentkezés
Hirdetés |