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
thx! Tanulmányozom remélem rájövök a titok nyitjára!
Szia kiborg!
AVR BASIC (Bascom) utasításokról nincs véletlenül ilyen összefoglalód természetesen Magyar nyelven? Az AVR programozás érdekelne, de csak a Basic nyelven (régről C64, majd QBasic) , mert a "C"-t nem fogja a fejem . A Bascom súgója meg nem Magyar, viszont az Angolt meg nem tanultam, tehát nem megy olyan szinten, hogy komplett szövegeket értelmezzek. Válaszodat előre is köszönöm.
Hibát nem látok a kódodban, ez működni fog. Az viszont könnyen előfodulhat, hogy rosszul állítottad be a Timer1 -et. Mert ahogy nézem nincs prescaler beállítva, így 1:1 -es órjelről megy. Tehát minden 100. órajel ciklusra le fog futni a megszakítás. Szerintem te ezt nem így tervezted, már csak azért is, mert a főprogramban megy egy 30.000 -et pörgő for ciklus van. Ami nagyságrendileg olyan 200.000 - 250.000 órajel ciklus ideig tart. Tehát míg le fut az a for ciklus, addig a te megszakításod durván 2000x fog meghívódni.
Szia!
Sajnos nincs. BASCOM-al egyáltalán nem foglalkozom. Üdv Kiborg
aha! a hiba itt van! Relatív csak annyit akartam csinálni hogy 1mp-enként villogjon a PORTD! Köszönöm!
Kedves Urak!
Mivel én PIC-kel foglalkozom, de későbbi céljaim közt szerepel az AVR-re fejlesztés is, ezért kérdésem a következő: A képen látható ATMEGA128 kontroller újrahasznosítható-e, vagy OTP-s? (Elnézést a képminőségért, de a lényeg talán látszik rendesen.)
Szia!
Tudtommal nincs OTP-s. Mindben FLASH van,ami elég sokszor programozható újra. (De egyébként a válasz benne van ad adatlapban is. ) Kiborg
Köszi! Mindössze azért kérdeztem meg, mert akkor nem dobnám ki, sajnos nincs jelenleg "erőforrásom" ATMEL adatlapok nézegetésére, jelen pillanatban bőven elég nekem a MICROCHIP adatlapok tömkelege is.
Hali!
Ha esetleg ki akarnád dobni, nyugodtan jöhet felém is :nevetes1: Kiborg Használható, feltéve, ha nincs a code protect bekapcsolva. Amire kész gyári cuccoknál igen nagy esély van. Alias Memory Lock Bits
Viszont a code protect-tol ujra programozhato.
Mivel majdan tanulni fogom az AVR-t is, ha már a PIC elég jól megy, vagy valami más miatt "térek át",
akkor úgyis törlök belőle mindent, nem kimondottan izgat, hogy mi volt benne, elvégre tanuláshoz, vagy egy jövőbeli projecthez fog kelleni. kiborg: akkorát nem tudok dobni, főleg ilyen kis méretben
Üdv urak egy gyors kérdésem lenne .c fájlt mivel tudnám .hex be átkonvertálni, nem találok semmilyen ingyenes compliert sajnos, jelenleg meg stk200 assal programozok ispprogrammer nevű programmal mert az avr studo az istennek sem akarja az igazságot, ezért azzal nem is tudom a kész c-t flashelni! Köszönöm előre is!
Üdv!
Megépítettem a MaSTeRFoXX féle AVR-es hanglejátszós ajtócsengőt, hozzá egy stk200-as programozót.Bővebben: STK200 Bővebben: Csengő Az lenne a kérdésem, hogy a programozásnál hová kell tápot adnom? Én csak a csengőre adtam 12V-ot. Az stk lábai VCC-GND-MOSI-MISO-SCK... Ha jól gondolom, akkor az stk a céláramkörből venné tápot, de nem jut oda 5V, csak 3 egész valamennyi. Jól tudom, hogy a csengőn így jönnek az ISP lábai? ----> MISO-SCK-RST-NC-MOSI GND-GND-GND-GND-VCC Hirtelen ennyi lenne. Jah és igen, próbáltam a ponyprog-ot és a winavr-t is de egyik sem látja. A válaszokat előre is nagyon köszönöm
Akkor válaszolnék saját magamnak
Igen, a programozó a céláramkörtől kapja a tápot. Szétkaptam a programozót és un. légszereléssel alkottam egy borzalmat. De ami a lényeg, hogy tökéletesen működik. Most már felismeri a pony. De mi lehetett a gond a nyákra épített cuccal?
Üdv!
Az szeretném megtudni,h a HD44780-hez megírt, javított driverben a portlábak össze vissza lehetnek, úgy,h egy porton vannak? Mit kell átírnom, ha atmega 128-on akarom használni? A nem használt 4 adatlábat 0-ra kell kötni? Üdv: Márió
Sziasztok!
Olyan érdekes problémába ütköztem... Hidegben nem működik egy készülékem. Már hűtőbe betéve ami kb. 5'C megszűnik minden életjelet adni. Táp eljut a procihoz... ATMEGA8L-8AU az alany, külső 8MHz-es kvarc. Mi lehet a gond? Köszi Zoli
Szia!
A kvarcot, és a lábain lévő pikós nagyságrendű kerámia kondikat (mert gondolom hogy az) cseréld első nekifutásból. Ezek a kerámia kondik, amúgy is elég hőfok függőek, és van hogy hő változásra nem úgy muzsikál.
Pontosan melyik driverre gondolsz? Mert a neten kering egy pár.
Ha gtk tollából az oldalon megjelent érdekel, akkor itt írtam róla.HD44780, simple-driver Szerintem Atmega128-hoz átírás nélkül használhatod, de majd a nálam okosabbak megerősítenek/megcáfolnak. A nem használt adatlábakat nem kell feltétlenül sehova sem kötni, de azért általában a nem használt bemeneteket mégis illik a földre tenni.
Köszönöm!
Közbe kitettem a hidegre, és ha megérintettem a kvarcot 1-2mp után el is indult. Így első körben azt cseréltem, most hűl megint.
Igen ez az, amit próbálok használni. Avr studióban a source fájlokhoz berakom a c fájlt a header-ökhöz meg a h-t. Include-álni kell a h-t a fő c-fájlba? Ahhoz,h elinduljon a kijelző elég csak az lcd_init-et megívni?
Így írtam át a h-t. A fuse-okat mire kell beállítani, mert még semmit nem állítottam csak az órajelet. Üdv: Márió
Annyi haladás történt, h a fő c-fájlban meghívtam az lcd_init-et. Alapból nem történt semmi. Utána ki kommenteztem az eredeti lcd_init tartalmát és beleraktam azt amit én kézzel doksiból bájtonként összeálíltottam. Ez a programrészlet amúgy amikor a fő c fájlban volt akkor frankón inicializált, de amikor a kijlező driver c-jébe raktam, akkor meg olyan volt, mintha mindig resetelődött volna, mert megjelentek a teli négyzetek, majd inicializálódott, majd megint négyzetek, megint inicializált...
Sziasztok!
A segítségeteket kérném. ATmega128-at használok és szeretném feléleszteni benne a TWI (I2C) interfészt, de nem jutok egyről a kettőre. Az a problémám, hogy mindent beállítok ami a működéshez kell vagy legalább is én azt gondolom. Beállítom azt a bitet ami a küldést indítaná, de mégsem fut bele a TWI-hoz tartozó megszakításba. Pedig ugye a Start után mindenképp kellene megszakításnak érkeznie, függetlenül mindentől. A megszakítások biztosan mennek, mert a Timer0 az megfelelően működik. (Amúgy ez egy működő "próba panel", szóval hardware hiba kizárva) Mellékelve csatoltam a c forrást, azért nem illesztettem be, mert elég terjedelmes.
Kíváncsi vagyok az eredményre!
A kvarc volt a bűnös, vagy valaki más?
Elég sok gond van Gtk LCD szoftverével mostanában. Ha gondolod, használd az én szoftveremet.
Az összes HD44780-as vagy azzal kompatibilis LCD kijelzővel működik és az összes 8 bites AVR-hez használható.
Üdv!
Előre is kösz! Most azzal szenvedek,h van az inicializálás amit összevadásztam doksiból. Ezt, ha bemásolom a main-be akkor jól inicializál, ha ezt egy fg-be rakom és azt hívom meg akkor meg inicializál-kockák,inicializál-kockák.... már többen is megnézték de a kód mindenki szerint jó. Az inicializálás után mindkét esetben van egy while(1). Arra gondoltam,h lehet,h olyan lábait használom az atmega 128-nak, amit nem lehetne elvileg (d port), valami külső megszakítás.. De azt se értem,h hogy tud a kijelző resetelődni, mert ahhoz meg elvileg el kellene mennie a tápfeszének. Itt egy kép,h hogy vannak beállítva nálam a fuses. Így kell?
A Fuse bitekből ami látszik, az jó.
AVR Studio-ban beállítottad, hogy mekkora frekvencián ketyeg az AVR? A while(1)-et nem értem. Ez a főciklus volna? Az AVR-eknél nincs foglalt láb, a Reset-en kívül, csak akkor lesz foglalt, ha a megszakítást konfigurálod. A forráskódot jó lenne látni, főleg a függvény létrehozást, meghívást.
Igen, a kvarc volt a bűnös.
Sima 8MHz-es, lapos kivitel, semmi különös nem látszott rajta. Jó forrasztások, proci melett. Beleraktam egy másikat, csak nagyobbik fajta volt, de azzal simán ment hűtős teszt után. Most vettem ki a fagyasztóból, és így is jó. |
Bejelentkezés
Hirdetés |