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
A kód:
Fordulat = Fordulatjelek * 250 Fordulat = Fordulat - 500 Fordulatjelek és fordulat WORDként definiált. Szerintem túlcsordulás. Definiáld Word helyett Integerként!
Szia!
Milyen programozód van? Sok programhoz (icprog, ponyprog, stb) ajánlanak avr és pic illesztést is. A pickit2 -vel is lehet avr -eket programozni ... Bővebben: Link
Sziasztok!
Vasaroltam egy atmega16A microcontrolelrt, elkeszitettem a panelt, hala Istennek minden mukodik csak nincs meg a szugseges MHz... Hozzacsatoltam az oszcillatort(16Mhz) de semmi kulombseg. Kell meg valamit allitani?
Igen. A Fusebiteknél kell még molyolni:
- External Clock/Quartz
Nem foglalkoztam sajnos meg ezzel, azt hogy tudom megcsinalni?
Atprogot hasznalok
PonyProg-nál a SUT_CKSEL nevű checkboxokból vedd ki a pipát(az összesből), majd írd át az AVR-be.
Ezzel átkapcsolod kvarckristályra. AVR Studio és Bascom alatt ugyanúgy beállíthatod, de ott látod is hogy éppen mit állítasz. A Bascom ismeri a nyomtatóportos programozót.
Sziasztok
Hogyan tudnék egy bitet 0-ra állítani? Hőmérséklet mérés, ha a Tvalos változóm 273, vagy kisebb értéket vesz fel, akkor a led kigyullad. Eddig semmi problémám nincs, viszont ha a Tvalos 273, vagy nagyobb, akkor nem kéne világítania a lednek. Ezt nem bírom elérni
Hello!
Ha 273 akkor gondolom már nem 8 bites változóval dolgozol. C nyelven(WinAVR) így tudod beállítani:
A "valtozo" X. bitje le fog nullázódni. A WinAVR ezt optimalizálni fogja a megfelelő 8 bites műveletsorra, hiszen a változónak csak egyetlen bájtját kell megpiszkálni.
Nem nagyon értem mire gondolsz, belinkelem a programomban a megfelelő sort:
A Tvalos uint32_t Át tudnád írni nekem ha szépen megkérlek?
Elrontottad a relációt az elsőnél: "ha a Tvalos változóm 273, vagy kisebb" - azaz "kisebbegyenlő" jel kell.
Mivel a másik feltétel ennek pont az ellenkezője, nem kell újabb "if", elég egy "else", de ez inkább praktikusság kérdése. A másik dolog amit elrontottál, a "^=" jel, ez csak "átváltja", negálja az adott bitet. Azaz villogni fog a LED, ha elég sűrűn fut le ez a kód akkor folyamatos világítást fogsz látni. Kioltani másképp kell, ezt láthatod az else-t követő kódban.
Üdv!
Ismerkednék az AVR-ekkel, de van egy kis problémám. Hestore-ból megrendeltem a Topi-féle programozót, összeraktam, de nem bírom működésre bírni... Szerintem jól raktam össze, mert a gép érzékeli, de Win7 alatt a nem aláírt driver miatt folyamatosan problémázott, úgyhogy feldobtam virtualbox-ra egy WinXP-t, ott fel megy a driver, de utána a "Az eszköz nem indítható el. (Kód: 10)" hibaüzenet fogad... Mit ronthattam el?
Itt az oldalon van a programozóról egy cikk. Ott ha jól tudom van hozzá win7-het driver. Azt nézd meg. Ha azzal sem megy, akkor tovább lehet keresni a hibát.
Megértő segítségeteket kérem!
Feltelepítettem az AVRStudio4-et, a WinAVR-t, és a libusb-Win32-őt is. A programozómat a Hestoreban vettem, ez az. A PC felismeri, és most Target_VCC tüskén van a jumper.
És ez a kód amit bele szeretnék égetni egy Attiny45-20PU-ba. Néztem hozzá ezt a videót is. És egészen addig működik is minden, amikor is a 13. másodpercnél... Ahol ki kell választani a programozót, a felsorolásban nekem nem szerepel benne az "STK500 or AVRISP" csak külön az STK500 meg külön az AVRISP. A gondom az, hogy bármelyiket is választom, nem tudom tovább folytatni úgy ahogy a videó is mutatja. Pedig nagyon szeretném. Szóval mit rontok el, mi az amit nem veszek észre? Előre köszönöm ha valaki segít nekem.
Meg kellene nézni eszközkezelőben, hogy melyik portot használja a programozó. AvrStudio-ban az STK500-at kell kiválasztani. Mint látod a program csak 1-4-ig számozott com portokat ismer fel, így ha a programozó ennél magasabb portszámot használ, akkor azt át kell állítani, hogy az első 4-ben legyen.
Eszközkezelőben nézem: libusb-win32 devices >> Communications Port (COM4)
Van itt egy Jungo nevű driver is ez nem az én gépemhez tartozik... az jó hogy ott van? STK500 kiválasztva, COM4 kiválasztva, Connect... és ugyanúgy nem történik semmi
64 bites a W7? Mert ha az, akkor valószínűleg az a gond. Nekem ugyanez volt, végül lett megoldás, de azóta 32 bitest használok. 64 bitesen talán ez segít, nekem működött: Bővebben: Link
A drivert Topi cikkjében lévő linkről szedtem...
@vagnerjazon: De aztán kipróbáltam virtualboxos Winxp (32 bit) környezetben is, és ott se müködött... virtual com portként futtatáshoz is fel kell tenni a libUSB-t? (bár sztem úgy is próbáltam már)
Csak hogy a második kérdésre is legyen válasz:
A Jungo driver többek közt az AVRISP-mkII, illetve JTAGICE-mkII drivere.
Hát nem tudom, hogy kell-e. Nem értek az ilyen virtuális op. rendszer dolgokhoz, de nem lehet, hogy az nem ugyanúgy éri el a portokat, mintha rendesen lenne fönt? Ez csak tipp, nem tudom. Szerintem próbáld ki amit írtam, hátha jó lesz.
Ez nagyon hasonlít erre. Csak azon amit Te linkeltél, nincsenek összekötve a GND-ok, és a 14-es lábról veszi a VCC-t, meg nincs összekötve az a két-két láb. (Nem tudom, hogy ez lényeges-e, én azt csináltam meg régebben ami az én linkemen van.) És igen, működik, egy ilyennel kezdtem az AVR-ezést. (Azt azért hozzáteszem, hogy nem megy AVRStudio-val, csak közvetlenül WinAVR-ből, de ott külön kell beállítani a makefile-t, a fuse biteket meg mondjuk ponyprog-ban lehet állítani, de elég kockázatos -> egyszóval egy kicsit bonyolult a használata) Most egy HEStore-os Topi félét használok, ezzel megy az AVRStudio, és nem utolsó sorban USB-s, így bármelyik mai gépen használható.
Remélem tudtam segíteni.
Letiltottam a Jungot, kipróbáltam úgy is. Az összes lehetőséggel, egyikkel sem történt semmi még mindig.
Ha az áramkört rosszul raktam össze (két ellenállás meg két LED) akkor csinálhat ilyet?
A 64 bites win7-nek szüksége van a driverek digitális aláírására. Mivel nem volt erre egy zsák pénze annak, aki ezt az eszközt ingyenesen hozzáférhetővé tette, ezért nincsen a driver aláírva microsoft által.
Amit tudsz tenni: a PC indításánál nyomkodod az F8 billentyűt, mielőtt a windows elkezdene tölteni. Ott pedig kiválasztod azt, ahol valami olyasmi áll, hogy: a driverek digitális aláírásának megkövetelésének letiltása (vagy valami hasonló). Ezután működni fog a driver. Természetesen minden windows indításnál ezt el kell játszani.
Ugy, hogy mind a kettoben volt azonos nevu fuggveny. De amugy a libek nem utkoznek, csak nem tudja a linker, hogy melyikbol valassza ki es linkelje.
Szevasztok!
Kb. egy éve kezdtem el az AVR-ekkel való ismerkedést, tudatos választás alapján (többek között AVR vs. PIC cikk), AVR Dragonnal. Még nem nyafogtam a fórumban egyszer sem, hanem vért izzadva utánajártam a dolgoknak, de most más módon akadtam el. Marhára megtetszett az "Első AVR programozóm" c. cikk, gondoltam megépítem a programozót második darabnak (kontroll). A kapcsolási rajzot böngészve arra a következtetésre jutottam, hogy az Atmel féle ISP 6 pines csatlakozó 1-es pontja (ami a MISO) a tiny2313-as kontroller 17-es lábára van kötve, ami a MOSI illetve fordítva is igaz (18-as láb MISO-ra). Nem vettem volna észre, ha nem elleznkezne ez a dolog egy görög csákó programozó leírásával, (Bővebben: Link), valamint az Atmel AVR910: In System Programming Application Note-jával. Kinek mi a véleménye? Működik ez így? Vagy pedig a firmware lett úgy módosítva, hogy működik ugyan, de ugyanakkor a csatlakozó kiosztása nem felel meg a szabványos ISP6 kiosztásának?
Hello!
Őszintén szólva én annak idején az FTDI miatt végig sem olvastam, ma pedig azért nem állnék neki mert már a cikk megjelenésekor is elavult programozótípusról volt szó, az AVR910-ről. Kicsit anyáztam is hogy sűrű lábú FTDI miatt nem biztos hogy sokak "első AVR programozója" lesz, hacsak nem tart otthon profi maratólabort. A sebességét illetően nincsenek információim, csak a gyári STK500 frissítési idejére tudok hivatkozni, mert azon is AVR910-es rendszer végzi a frissítését: r*hadt lassú! Pár nappal előtte vagy utána megjelent egy cikk a Doperről, és bár az sem egy sebességbajnok, de az addig nyomtatóportos(és még lassabb) programozóról végre áttérhettem USB-re! A kérdésedre válaszolva: a kiosztás valóban rossz, a programozó megépítéséhez ITT megtalálsz mindent, tudtommal ez az eredeti cikk. Igaz, nem USB-s, de egy MCP2200 vagy FTDI csodákra képes... Ha mindenképp USB kell, akkor már az AVRISP-mkII megépítését ajánlom, abba is "csak" egy darab SMD csip kell...
Helló. Most dolgozgatok a panelműszeremen de a program valamiért nem úgy működik ahogyan kellene.
Itt a program de már nincs ötletem hogy mi lehet vele a gond pedig már számtalanszor átnéztem. Kérem segítsetek.
Csatolom a proteusban összeállított kapcsolást. Ha esetleg van valami ötletetek hogy mit lehetne még javítani a programon kérem írjátok le. A segítségeteket előre is köszönöm. |
Bejelentkezés
Hirdetés |