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
Nekem nem segít valaki ha nagyon szépen megkérem?
Bővebben: Link
Szia!
A 89C51 saját flas-el rendelkezik. A 80C50-ben ROM van. A RAM azonos és az I/O is. Szóval, ha a reg címek is stimmelnek, akkor elvileg (hangsúlyozom elvileg!) megy. A felprogramozás az tuti más. Viszont évekkel ezelőtt (7 éve) én már csináltam 89C51-el órát és nagyon pontatlan volt a quartz miatt. Napi 1...2 perc. Azt egy külső kondival kellene pontosra állítanod. Ilyen esetben 32768Hz-s óra quartz-ot használnak. És pár száz HUF-os óra IC-t, amit ha kikapcsolsz (tápot), akkor is ketyeg az óra. Ráadásul a kijelzőt és inkább multiplexelném, mert úgy kevesebb vezeték kell. Na mindegy. Nem az én dolgom. Csak a véleményem.
Rámértem szkóppal, amilyen pontosan tudott mérni frekvenciát az 32.77kHz-et írt ki. Igazából elég érdekes mert mértem 32.8-at meg 33 kHz-et, szóval a valódi frekvencia eléggé kérdéses, frekvenciamérő sajnos nem volt a közelben. Majd megpróbálok trimmer kondenzátorral is, illetve egy 3.2768MHz-es kvarcról járatni az AVR-t és majd kiderül hogy mivel lehet pontosabb órát létrehozni.
Nagyon szépen köszönöm a választ, szóval ha jól értettem, akkor nem érdemes vele foglalkozni, vissza is teszem a fiókba
Helo! Most már pár fokkal előbb járok, de újabb problémába ütköztem. Amikor ráklikkeltem a Connect dialog gombra, és kiválasztottam a megfelelő (gondolom) dolgokat és leokéztam, akkor kiírta hogy Connect failed. Ez lehet azért mert a gépre nincs rákötve programozó?
Basszus...
Szerinted? Ha ilyen kérdés felmerül benned, akkor inkább keress más hobbit.
Helló!
AVR MEGA16-al akarok kis servo-motort PWM-el vezérelni. A hardveres PWM-et javasolta ismerősöm, de sajna nem nagyon tudom irányítani és lenne pár kérdésem. A pontos számítási képletet nem igazán értem. Fast PWM módban szeretném használi, de a Codevision "clock value"-t kér (nem az ósztót) amit nem találok az ATMEL leírásában. A generált kód: // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: 125 kHz // Mode: Fast PWM top=FFh // OC0 output: Non-Inverted PWM TCCR0=0x6D; TCNT0=0x00; OCR0=100; Gondolom nekem az utolsó hármat lehet jogom később felülírni, de pontosan hogyan kellene beállítani a számláló határait? Remélem valaki tud küldeni egy linket, vagy egy rövid kódot a main résszel együtt, ahonnan rá tudnék jönni, pontosan hogyan is történik a vezérlés. Előre is köszönöm!
A legjobb, ha raklikkelsz a 'Kapcsolasokra', ott 'AVR', es lon, az elso cikk a lap tetejen a robotikaval foglalkozik. Raklikkelsz, es az oldalak legordulo menubol kivalasztod az 'RC szervo motorok vezerlese' oldalt...
Ez eleg bonyolult, igaz? Utana olvasol es lapozol elore, es lathatod hogyan valositotta meg a szerzo konkretan.
Sziasztok!
Mindössze önképzéses alapon készítek most egy áramkört ami egy ventillátor fordulatszámát vezérli, de nem PWM-el hanem egy digitális potival. A dolognak ezzel a részével nincs gond szépen vezérli a ventirrátort az ATMega88-as kontrollerem. De, most szeretném ezt hozzácsatlakoztatni a kontrollerhez, hogy ezzel vezérelhessem a fordulatot. Ám nem tudom mit csinálhatok rosszul, de az interruptom sose akar bekövetkezni.
Az encoder középső lábát +5V-ra a bal oldalit INT1-ra (PD3) a jobb oldalit PD4-re raktam. Nem tudom, hogy a bekötésem, a beállításom, vagy esetleg mindkettő rossz-e. Előre köszönök minden segítséget, remélem sikerült jól megfogalmazni a problémám, Attila Idézet: „nem tudom mit csinálhatok rosszul, de az interruptom sose akar bekövetkezni.”
Azert a max sebesseget nezd meg a potinak. main loopban eleg gyakran kiirja
Mit jelent a volatile a deklarálásnál?
Ennel jobban en sem tudom megfogalmazni:
Bővebben: Link
Értem! Köszönöm. Így már teljesen világos.
Köszi, tényleg ez volt a hiba, mostmár fut rendesen minden!! Ezer hála!!
Sziasztok!
Az megoldható ATmega 8-cal, hogy a program a belső, a timer a külső oszcillátorról működjön?
Sziasztok!
Vettem egy Topi féle égető KIT-et Hestore-ban. Összeraktam, átnéztem ezerszer, ügyeltem mindenhol a helyes behelyezésre, forrasztásra. A problémám az, hogy amikor rádugom az USB portra nem történik semmi. Win 7 fut a gépen. Se új hardver, semmi. Persze egyből kihúztam, nehogy gáz legyen. Átnéztem még 15x, rádugtam egy XP-s gépre, de ott sincs semmi. Előfordulhat, hogy nincs felprogramozva a processzor? Mi lehet a gond? Köszi előre is.
A Timer_1 mehet kulso orajelrol, a T1 labrol.
A Timer_2 kulso orakvarccal (32768_Hz). Mindez fuggetlenul a belso orajelforrastol.
Megoldódott. A Hestoreból rendelt USB kábel nem volt jó. Szereztem egy másikat, ezzel ok.
Sziasztok!
Egy kezdőkérdése: Hol kell azt beállítani, hogy külső kvarcról működjön az AVR? Összeraktam egy led villogót Attiny2313 -al és bekötöttem egy 8Más kvarcot is a két kondival. Azt tapasztalom, hogy kvarc nélkül is működik, tehát a belső osszcillátorról mehet. A PonyProg a következőt olvasta ki, amihhez nem nyúltam.
Ez sokat segithet, es kizarhatja a tevedeseket.
>>Fuse calc (ujra)<< Viszont ha nem tudod pontosan mit miert, akkor inkabb hagyd, mert pl. letilthatod az ISP-t es nem fogod tudni programozni. A PonyProg-gal kulonosen vigyazz, azt hiszem forditva jeloli (??) a fuse bit beallitasokat.(programmed, unprogrammed).
Köszi gtk!
STK-200-al programozok, mit ajánlasz a PonyProg helyett?
Nem merem allitani hogy "helyett", csak szoltam, hogy erdemes odafigyelni hogyan kezeli a fuse-okat.
Egy hasznalhato program a WinAVR. Ez avr-gcc-t es avrdude-t hasznal. Ezek kulon-kulon a keret nelkul is hasznalhatoak.
Programot irni az AVR studiót használgatom amibe be van integrálódva a WINAVR de az stk-200-at nem látja.
A WinAVR -el elmeletileg felment az avrdude is. Nezd meg parancssorba, vagy az exe fileok kozott. Konnyu parameterezni, es pl. consolbol hasznalni.
|
Bejelentkezés
Hirdetés |