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
Én Attiny2313-al akarpm megoldani, és azon tudomásom szerint nincsen...
Ha van az zsír, de sztem nincs Az a kapcsolás meg kissé hosszadalmas 2. én saját adatok szerint akarom megoldani, nagy feszt akarok mérni leosztással...
Nézd meg az adatlapjában, hogy van-e vagy nincs.
Összeraktam a cuccosomat. Rdugtam a gépre és a win meg is találta, mint ismeretlen USB eszközt. PonyProg-al akartam felprogizni. A cucc fel is ment a kontrollerbe, de aztán, mikor vissza akartam olvastatni a PonyProg (magyarított változat) mindenre azt írta, hogy ismeretlen hardware. Írásra, olvasásra, mindenre. Ha a hibaablakban a kihagyásra nyomtan mondjuk írásnál, akkor látszolag csinált valamit, mert ment a folyamatjelző, aztán ellenőrizte az írást és írás hibát ír.
Rádugtam a cuccot egy másik gépre, ami felismerte, mint ismeretlen USB, aztán ki is írta, hogy telepítve és használatra kész, de rögtön ez után feldobott egy buborékablakot, hogy hibás USB eszköz. Van valakinek valami ötlete?
Utánanéztem dolgoknak. Mivel EZT a cuccot építettem meg, ezért az ITT leírtak alapján programoztam fel a mikrokontrollert. Legalábbis elméletben, de ki emlékszik már rá. Azt hiszem, hogy a 7. lépés ("Program the chip configuration bits using Command->Security and Configuration bits...") után nem ismerte fel a PonyProg. Legalábbis azt hiszem.
Eszerint lehet, hogy kilőttem valamit!? Mit tudok tenni, mielőtt vennem kellene egy másik ATMega16-ot?
Légyszi, segítsen valaki! Már kifogytam.
Problémát okozhat esetleg az, hogy a lent említett cuccba nem kétlábú, hanem négylábú (IQXO) oszcillátort raktam? Ennek bekötését elmondták nekem, de lehet, hogy rosszúl. A kapcsolási rajzal ellentétben a C2 és C3 kondik kimaradtak és az IQXO lábkiosztásai a következő képpen lettek bekötve: 1. láb (N/C): nem lett bekötve 7. láb (GND): nem lett bekötve 8. láb (output): ATMega 13-as lábára kötve 14. láb: (+5V DC): közvetlen 5V VCC Programozónak az AVR-Tavir oldalon lévő pufferelt (STK-200) programozót használtam, de a 10 pines csatiból kikötöttem a 3-as lábat, mert ez a mikrokontroller nyákján földre van kötve. Mit tegyek?
Kész vagyok. kezdve azzal a barommal, aki azt mondta, hogy az IQXO 7-es lábát nem kell GND-ra kötni. Próba cseresznye rákötöttem. Működik.
Nem kell az ilyen "barmokra" hallgatni. Az ilyesmit az adatlapból kell nézni.
Ez a pontos megfejtés. Mentségemre váljék, hogy nem nagyon értek hozzá. De ezek szerint az sem, aki mondta.
Egyébként mellékelve a végeredmény, amiért a cucc készült.
Na ez nem semmi!
Az elektronikarol nem raksz fel kepet?
Sajna nem lettek túl jó képek, de azért látni valamit. A korábban belinkelt oldalról letöltött nyákrajz lett kivitelezve, csak később vettem észre, hogy nem olyan oszcillátort adtak, amihez a nyák készült. Ezért van az oszcillátor kirakva a nyák szélére, mert csak ide lehetett forrasztással rögzíteni és ezért fut oda két vezeték is. A nyákra eredetileg USB csatit terveztek de ezt viszont nem is kaptam, ezért egy USB kábelt forrasztottam a nyákra.
A terv az, hogy ezt a vezérlőpanelt és a hozzá készülő "dekóder" kártyát - ami azért felel, hogy arr csatikkal lehet minden gombot és egyebeket bedugni - egyetlen műszerdobozba teszem, és a dobozon megfelelően kivezetékelek 1-2 D-SUB csatit. Erre majd külön magát a joystickot, a tolóerőszabályzót, a pedálokat tudom rádugni, valamint - mivel ez a vezérlő támogatja - csinálok egy pultocskát a maradék gombnak és egyebeknek. Tehát az egész cucc a következő lesz: Saitek X-36 Joystic + X-35F tolóerő szabályzó (eredeti elektronika kuka) Egy régi 1000 Ft kormány pedáljai Egy házi készítésű pult A doboz, amiben a vezérlés van (lesz) Képek csatolva
Szep!
A softot win ala fejlesztetted? Erdekesen nez ki a grafikus felulet,nem standard win,vmi mas
Nem. Tévedés ne essék. Én nem fejlesztettem semmit (ahhoz túl hülye vagyok). Az egész cucc (mármint az elektronika) más érdeme. Ez egy oldalról letöltött cucc, ahol egy srác kitalált egy módot, hogyan lehet saját játékvezéről (át)építeni USB-re. Ő gyakorlatilag hozzáférhetővé tett mindent (nyákrajz, kapcsolási rajz, a mikrokonrollerbe töltendő "szoftver", stb...).
Én csak megépítettem. A lentebb belinkelt kép teljesen standard windows, tehát a cucc élesztése után ez a kép fogadott a játékvezérlő tulajdonságainál. Látszik is, hogy a windows sajátja, mivel magyar nyelven írja ki a dolgokat, tehát ez ott van a windowsban, csak az átlag játékvezérlők esetében sokkal kevesebb beviteli egységgel rendelkeznek. Egy átlagos joy általában négy analóg tengelyt használnak (X irány, Y irány, tolóerő/Z irány és a pedálok), ez a vezérlő viszont még plusz négyet és ehhez még hozzájön 112 gomb, amiből csak 64 a szabványos "tűzgomb", de a windows képernyőjére ebből is csak 32 fért ki ( ). Eredetileg a srác ezt olyan fanatikusokan fejlesztette, akik otthon meg akarnak építeni egy komplett repülőgép cockpitet. Én speciel nem ezt tervezem, de komplexebb repülőszimulátorokkal (pl. MS Flight Simulator) könnyebb lenne úgy játszani, hogy az ember odanyúl a vezérlőpultra a megfelelő kapcsolóhoz ahelyett, hogy fejben megjegyezne rengeteg billentyűkombinációt. Ebben a vezérlőben tényleg az a jó, hogy teret ad a fejlesztéshez. Ad egy megfelelő elektronikai hátteret és mindenki saját maga dönti el, hogy mennyire akarja kihasználni. Nekem minden esetre ez a cucc bebizonyította, hogy házilag is lehet nagyon preciz dolgokat csinálni és - bár szinte kizárt, hogy saját áramköröket fejlesszek - ezután azt hiszem, fogok még mikrokontrolleres dolgokat megépíteni. Persze nem saját, hanem mások által fejlesztett, de nekem is hasznosnak ítélt dolgokat. Sajnos nekem nincs érzékem a dolgok elméleti részéhez, de akkor is nagyon jó érzés látni, amikor valami általam összerakott dolog "életre kel".
Az a lenyeg hogy a celnak megfeleljen,jo legyen a kivitel es mukodjon.
Idézet: „Sajnos nekem nincs érzékem a dolgok elméleti részéhez, de akkor is nagyon jó érzés látni, amikor valami általam összerakott dolog "életre kel".” Szerintem minden az erdeklodestol es a kitartastol fugg,ahogy Weores mondja: "Egyetlen ismeret van,a tobbi csak toldas: alattad a fold,folotted az eg benned a letra"
HI!
Hogyan lehet olyan filet csinálni bascomban, ami az utasításokat tartalmazza? Mert egy digitális órát csinálok, és a programban való várási időt kell meghatároznom. Úgy, hogy beazonosítom, a doksiában lévő utasításkészletben, hogy mennyi jel kell a program elvégzésére. Ant
Szia!
Az $asm utasítással (vagy direktívával?) át tudsz váltani assembly nyelvre, ahol utasításonként tudod megírni az adott programrészt. Végül az $end asm utasítással tudsz visszakapcsolni basic nyelvre. A Bascom help-jében találsz hozzá leírást meg példaprogramot is.
Kössz!
Neee!
Ne így! Ez így nem jó! Gondolom azt akarod elérni hogy olyan órát csinálj amiben benne van egy 1mp-es időzítés és utána számolja át az időt, aztán ezt ismételgesse.... Ez így nem lesz jó.... Iszonyat pontatlan lesz, meg ezt nem így szokták csinálni.... De a bascomban a helpben ha rákeresel a time vagy clock vagy már nem tom pontosan mire akkor ott benne van egy eléggé korrekt kis óra program, csak a TOSC1 és TOSC2 lábra kell egy 32768Hz-es kvarcot raknod. Ez az óra teljesen "szabványosan" működik, megszakításokat használ, ahogy ezt szokás mikrovezérlőkön.... De tőlem kipróbálhatod, ha nem hiszed...
Ok, elhiszem!
Ki is próbálom, mikor már nyitva leszenk a boltok, nincsen kvarcom
Sziasztok
Megépítettem én is azt a feszültség, áram mérőt, amit Árpix is. http://www.electronics-lab.com/projects/test/022/index.html Azt nem értem, hogy az AVR reset lábát miért kell rákötni a kijelző 3-as adat vezetékére. (4 bites módban van vezérelve 4-7) Amikor rá volt kötve a reset a kijelzőre, akkor mindenféle hülye jelek jelentek meg, de amikor lekötöttem a resetet, akkor jó lett. Nem étrem, hogy a szerző miért kötötte be... Szerintetek milyen célt szolgál az a kis induktivitás? Nekem most csak simán át van hidalva, mert nem kaptam a RET-ben.
Szerintem az nem a reset lábra van kötve, csak ugyanúgy fel van húzva magas szintre mint a reset. Kézi reset gomb ugyanis nincs a kapcsolásban. Tehehát az a D3 láb fel van húzva tápra, akárcsak a reset láb, ezért van ott összekötve. azt ugyan nem tudom miért van. Volt még valami hiba a kapcsolásban azt hiszem. Valahol az LCD RW lába körül. Kérdezd meg árpix-tól. Mert én már nem emlékszem. Mindenesetre azt se értem minek az RW lábat portbitre kötni.
Az RW lábat földre kötöttem, azzal nincs gond. Árpix-nak már írtam, de 3 napja nem volt itt, azért kérdeztem meg itt. Kettőt építettem ebből a műszerből ("+-" os tápegység lesz belőle) És mind a kettő ezt csinálja. Akkor hagyom a francba a 3-as adat vezetéket, és nem kötöm be. Azt hittem, van valami funkciója, de akkor ezekszerint nincs.
Szerintem a D3-as lábat nyugodtan hagyd szabadon. Ez valószínűleg csak valami hiba a kapcsolásban.
A kis induktivitás meg a hozzá tartozó kondenzátor viszont egy LC szűrőt alkot, és a tápfeszültséget szűri az ADC-nek. Mivel a referenciát ebből a feszültségből állítja elő, induktivitással pontosabblesz a mérés.
én is erre gondoltam, mert most van olyan, hogy teljesen meg hülyül, és össze-vissza karaktereket ír ki, ekkor reset, és megint jó.
Az attiny-n van ilyen láb, ahová ezt a kristályt be lehet kötni?
Most nézem... Az ATTINY2313-ban pont nincs ilyen kivezetés. Az Atmega8-tól kezdve van(ugyanarra a lábakra kell kötni mint a normál kvarcot). Az ATmega16-ban meg már külön ki vannak vezetve....
A bascom helpben a "Config clock" néven találod meg. De szerintem ATtiny2313-mon ez nem működik
Akkor lehet hogy mégis csak marad az a megoldás, hogy valamilyen megfelelő frekvenciájú kvarcot használva, timer megszakításokkal és pontosan ismert órajel számú utasításokkal oldja meg a dolgot? Ez szerintem semmivel nem pontatlanabb, mint az általad említett megoldás, csak gondolkodni és számolni is kell hozzá... (De hát éppen ezért szeretünk mikrokontrollereket programozni, nem? )
Hello
Megépitettem a következö USB_ISP programozót: http://web.interware.hu/lekovacs/usb500/index.html Hétfön fogom a progit beégetni az AVR-be... Valaki megépítette már ezt? Mennyire biztos az hogy müködni fog a megadott programmal???
Igen, általában így szokás mikrovezérlővel órát építeni (számláló, megszakítások).... De BASCOMBAN? Azt még sose próbáltam, szerintem túlságosan elrejti a hardvert, és nem annyira átlátható...
C-ben talán jobb a helyzet, de assemblyben a legátláthatóbb szerintem Kb 2 hónapja csináltam PIC-cel életem első számlálós-megszakításos óráját. Majd ha lesz idő, AVRrel is megpróbálom C-ben
A számlálónak pont az a lényege, hogy a túlcsordulás megszakítást generál, de a megszakításrutin nem befolyásolja a számlálót, mert az nem áll meg a túlcsordulásnál, hanem megy tovább. De éppen én is ezt írtam, hogy a kritikus helyeken át lehet váltani assembly-be és pontosan ismert utasításokat alkalmazva egzaktul lehet megírni a kritikus részt. (pl.: megszakításnál NOSAVE alkalmazásával a regiszterek tartalmát nekünk kell elmenteni ha szükséges és mi állíthatjuk vissza a flag-et) Egyébként már én is megtanultam az assembly-t, de az esetek többségében megfelel a BASCOM is, és sokkal egyszerűbb benne a programot megírni. (Pár napja készült el a frekvenciamérőm, amivel pl. mérni tudom a hálózati frekvencia század Hz-es ingadozásait is.)
Tiny13 Bascom probléma SOS!
Sziasztok! Sikeresen megépítettem az égetőt, feltelepítettem a Bascom-AVR 1.11.8.3 verziót és a tiny13-ba be is égettem próbának egy ledvillogtató progit. Minden jó addig amíg nem próbálok egy változót létrehozni, ekkor azt az üzenetet dobja a fordító, hogy túlléptem az SRAM méretét. Elvileg 64 bájt méretű SRAM van a tiny13-ban azaz a Bascomra gyanakszom. Ha ki tudnátok próbálni, hogy nálatok is dobja-e a hibát a fenti chip beállítása esetén azt megköszönném! |
Bejelentkezés
Hirdetés |