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
Amit én észrevettem és belekötnék: az LCD 5-ös kimenete: LCD_RW.
Ezt én SOHA nem kötöm az AVR-re, sem máshová, mindig a földre(GND)! Vágd el ezt a szálat. Az AVR oldalán hagyd csak lógni, a kijelzőnél pedig kösd a földpontra! Ezt leszámítva csatlakozom az előttem szólóhoz: ha csak a felső sorban látni a teli karaktereket, akkor nincs inicializálva az LCD. Ennek oka sok minden lehet, kezdve attól hogy az LCD nem támogatja a 4 bites módot, vagy az AVR sebessége túl gyors az LCD inicializáláshoz, vagy a bekapcsolás után túl hamar kezdi inicializálni amikor az LCD még nem áll készen. Ez utóbbit itt állítod: "SUT" FUSE bitek.
Én is úgy csináltam eddig. De a legutóbbi LCD-nél csak akkor működött 4-bites módban, ha bekötöttem az RW-t is rendesen. Ha a földre kötöttem, nem működött. Nem vizsgáltam miért, egy láb ide vagy oda, ebben az esetben nem számított, csak változókat nézegettem rajta.
Bocsi, de hátha tetszik innen is valakinek...
![]()
Sziasztok!
Kijavítottam a programot ami annyit tesz hogy beolvassa a potméter értékét és PWM-jellel kirakja egy led-re. Az előző pár oldalon már írtam a problémámról és ki is javítottak, de még így sem működik a program. Tehát már halvány lila gőzöm sincs, hogy mi lehet a hiba. A program a következő:
Köszönöm előre is.
Szimulátorban futtattad már?
Így vagy úgy, futtasd szimulátorban és nézz rá a timer2 modulra, hogy van e valami fura vele. Mármint, hogy minden olyan, mint ahogyan szeretnéd. Attól tekints el, hogy a studio4-ben a szimulátor bugos és rosszul mutatja a pwm módot (nem azt kell nézned úgysem).
Sziasztok.
Gyors kérdésem bánt engemet, mivel analóg elektronikához buta vagyok... Szeretnék kivezérlésjelzőt (és aztán mást is) építeni AVR-el, a ledek vezérlése és ADC beolvasása meg is van. Viszont: milyen egyszerű kapcsolással lehetne úgy rákötni az audio forrást az ADC bemenetre, hogy egy viszonylag pontos hangerőreprezentációt kapjak? (pl. hogyha számítógépről játszok le valamit, akkor pontosan ugyanazt lássam a kijelzőn mint a számítógépen) A problémám most ugyanis az hogy fix hangerőn játszott egyszerű szinusznál is összevissza ugrál (8ledből kettő +-1), illetve frekvenciájánál is válogatja hogy mit jelezzen vissza... A program röviden:
Ha valaki esetleg tudna olyan projektet ami ilyennel foglalkozik, az lenne a legjobb (én kerestem, de nem találtam)
Sziasztok!
Már korábban is meg akartam kérdezni:
Miért kell ezt kétszer? Pontosabb? A múltkori programomban csak egyszer hatottam végre és a mérésnek, valamint a számításnak csak néhány század eltérése volt. Amit okozhatott a multiméter pontatlansága is. Vagy nem jól gondolom? Köszönöm előre is!
Eleg azt egyszer. Multkor en mondtam neki. De ugy latszik nem figyelt.
Van itt egy ilyen kapcsolas az oldalon. Amugy neked savszuro kell ehhez, vagy ha szoftverbol akarod, akkor FFT. Bar ahhoz gyenge szerintem egy mega avr.
Nekem biztosan nem, de azért köszönöm az előző hozzászólásodat!
![]() ![]()
kovacsj:
A válaszom pintadnak szólt, csak mobilon sikerült mellé nyúlnom. Mellesleg, ha pontosabb ADC mérést szeretne az ember, akkor érdemes megnézni a különböző alvó állapotokat. Van egy ami kifejezetten az adc mérés pontosságát növeli meg. Gyakorlatilag ehhez a mérés időtartamára leállít minden perifériát, amik ugye digitális zajt (végső soron elektrohullámos zajt) keltenek amúgy.
Rendben, köszönöm szépen! Lehet, hogy lesz lesz olyan alkalom, amikor nekem is szükség lesz ezekre az állapotokra!
Értem, köszönöm a válaszod.
És pontosan milyen sávszűrőre lenne szükségem? vagy azt már ne itt nézzem meg? ![]() Az adc alvó állapotról tudok, azonban most is csak a felsőbb biteket használom, az alsó öt felőlem bármi lehet. És ha 0..5V terjedelemben akarom mérni a hangot akkor szerintem ez már elég pontos.
Ja bocsánat. Hangerő reprezentációt akarsz. Valamiért egyből kombináltam és spektrum analizátorra gondoltam.
Ez esetben szerintem megteszi egy egyszerű átlagoló. Persze minél jobb átlagolót tudsz csinálni, annál jobb. Erről szerintem akad bőven szakirodalom. Most természetes, hogy ugrál, hiszen nem egy konstans egyenfeszültség generál hangot. Ahogyan írod is: azonos hangerejű szinuszt játszol le. Te ennek a szinusz alaknak a pontjait méred be, ami persze, hogy össze-visszaságokat okoz. Mielőtt durr bele neki esel átlagolókat írni, javaslom kicsit játssz el a szinusz függvény adataival számítógépen, vagy tőlem egy papírlapon is matematika barátunk segítségével.
Hali!
A kivezérlés jelzők mindig egy csúcsegyenirányítóval kezdődnek, ennek a jelét küldik a led oszlop meghajtását végző egységre. Nyolc lábbal AVR IV. rész Kivezérlésjelző vagy Plazmacsöves kivezérlés mérő hirtelen ennyi példát találtam..
Én így oldottam meg:
Bővebben: Link
Lenne egy kérdésem. Van nekem egy karakter tömböm, amit megszakításban is használok. Elvileg ilyenkor volatile-nek kellene lennie. Másol pedig strstr egyik paramétereként felhasználom mert ebben keresek. Így viszont rinyál a fordító hogy nem oké. Mert a paraméternek nem jó volatile. Ilyenkor mi van? Castolás segít?
Úgy néz ki így működik hiba nélkül
Nem túl elegáns vonalszintű jelet csak úgy beterhelni egy egyenirányítóval, illő elé valami leválasztó/ erősítő fokozatot tenni
Köszönöm a linket!
Egyébként parasztosan megoldottam, úgy hogy időközönként vett beolvasások maximumát veszem aktuális hangerőnek. Azonban ez sok időt elvisz... tetszik nagyon amit küldtél, Proteusban megnéztem mit generál, a picike áramkör nagyon megkönnyítené a dolgomat, szóval valószínűleg inkább azt építem bele...
Szivesen!
Sziasztok!
Építettem egy Topi féle Doper-t. Ponyproggal szeretném felprogramozni, de nem igazán tudom, hogy miket kell bepipálni a fuse bitkenél. Valaki tudna segíteni? Olvastam a hozzászólások között, hogy másnak is volt ilyen problémája, de a megoldás sajnos nem lett leírva. Még csak ismerkedem az avr-ekkel, így magamtól nem megy. Esetleg ha valaki bepipálgatná.. ![]()
Üdv mindenkinek!
Tudna e valaki segíteni egy kis programozásban? PS/2 vagy USB porton keresztül szertnék egy különálló billentyűzetet megvalósítani PC-hez. A hardver részében viszonylag otthonosan mozgok a dolgoknak, de programozásban már sokkal kevésbé. Egy nem mátrixos megoldást szeretnék amivel minimum 30 külön billentyűt tudok beolvastatni a PC-be. Nyilván ehez egy olyan atmel ic kell aminek sok bemenete van(30+). Mit ajánlanátok erre a célra? Lehetőleg minél olcsóbb legyen. Illetve hogyan lehetne ezt megprogramozni? Fontos lenne hogy egyszerre több gomb is aktív lehessen ghostolás nélkül, ezért van szükség ennyi bemenetre, illetve ezért nem megoldás az ellenállásos mátrix amit mindenütt találtam. (A felírás már nem gond, van egy elég komoly eszközprogramozóm.) Köszi!
Nézd meg a kommersz digitális 4021-es IC-t. 4 db-ot sorba kötve egy Atmeles SPI buszon fél kézzel lekezelhető 32 bites láncot kapsz.
Teljesen félreértitek. Aztán mi a lócitromot csinál a shift regiszterekkel?
USB kapcsolat nélkül lazán kitörölheti... Szerintem valami ILYENRE gondolt a kedves delikvens. Két baj van vele. Az egyik hogy csak 17 billentyűje van, a másik hogy ezek fixen vannak. Ez utóbbin lehet segíteni a SCAN kódok átírásával és újrafordítással, de AVR Studio alatt nem fordul sehogyse. Az AVR Doper-ben is csak úgy tudtam módosítani az SW-verziót hogy félnapos munkával kikerestem a HEX kódban a helyét és kézzel átírtam PonyProg-al. Az eredeti forrás is kellett hogy tudjam, mi van körülötte.
Egyébként egy ATMega16-al biztos jó lenne(futólag valahol láttam is egy ilyet), mert akkor pont
30 billentyű lehetne rajta. Vannak átdolgozások és más "hidkeys" alternatívák, keresni kell!
A méret is számít, ezért inkébb egy db IC-vel szeretném kivitelezni a dolgot.
Igen ilyen megoldás kellene, csak nyilván több billentyűvel.
30 billentyű már elég lenne, de a több jobb itt is igaz ![]() Valaki tudna esetleg segíteni ezt egy nagyobb IC-hez átírni? Az Atmega 16 ahogy elnézem tökéletes lenne. Még kiscsikó koromban tanultam C-t illetve pascalt de már szinte semmire nem emlékszem. |
Bejelentkezés
Hirdetés |