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
hozzá teszem nekem csak a mélyre/basszusra kéne hogy reagáljon a ledem/Fénycsövem nem kell ien csilivili 16x16 os led soros kijelzö megelégszek egy olyannal is ami a mélyre reagál.
Rájöttem mi volt itt a baj, ennél a jelenségnél.
A gond ott volt, hogy miután beállítom az SPI Controll Register CPHA bitjét 1-re:
Utána szimplán:
műveletet használtam a
helyett. És kezdőként nem vettem figyelembe, hogy 1 | 0 = 1. Csakis a 1 & ~(1) = 0 azaz 1 & 0 = 0 működhet. Na így szeretek tanulni! A hozzászólás módosítva: Jan 17, 2013
Üdv!
Eddig Picet használtam, most viszont AVR-rel kellene dolgoznom. Elsőként az érdekelne milyen programot használjak a felprogramozáshoz, lenne 2 áramkör amit meg kellene építenem a hardver részt, a szoftver meg van. Keresgéltem a fórumon, de nem tudom mivel kezdjem. Mit javasoltok? Köszi! Idézet: „MSGEQ7 IC mit is tud pontosan?” Az MSGEQ7 egy 7 csatornas equalizer IC. Az audio spektrumot 7 csatornara osztja fel (63Hz, 160Hz, 400Hz, 1kHz, 2.5kHz, 6,25kHz es 16kHz). Az egyes tartomanyok amplitudojanak csucsertekeit meri, es a kimeneten egy ezzel aranyos DC feszultseget jelenit meg. Ezt a mikrovezerlon ADC-vel lehet merni. Egy-ket hasonlo project: Bővebben: Link 1 Bővebben: Link 2 De az IC nelkul FFT-vel (Fast Fourier Transformation) is megoldhato a dolog, de ez lehet hogy egy kicsit szamolasigenyesebb es jobban leterheli a mikrovezerlot: FFT
Úgy néz ki megvan a hiba.
A bekötések jók voltak, csak egy fránya kontakthibás vezeték is volt az áramkörben, pont a CSn.... A vicc benne, hogy mikor megnéztem multiméterrel, vagy 3-szor, mindig jó volt, csak amikor kihúztam, akkor maradt a hegye a panelben.
Ha megnyugtat, én 6 órát toltam el az I2C-vel, meg azzal a rendkívül bonyolult két darab 4k7-es ellenállással, mivel nem ment a kommunikáció.
Az történt, hogy letöltöttem az ATMEL-től az I2C-s példaprogramokat. Természetesen nem fordultak avr-gcc alatt, mert a _delay_cycles()-t nem ismerte az avr-gcc, én meg átírtam nagy buzgón _delay_ms-re. Ugye valamit nagyon elszámoltam, mert 4.7us helyett kb. 3-4 másodperc lett egy bit átvitele. Működött, csak annyira lassú volt, hogy azt hittem, nem megy. A hozzászólás módosítva: Jan 17, 2013
Értem sztem a IC marad egyenlőre az "olcsobb" megolás és járhatobb és elvileg ennyi a kód hogy müködjön és ezt kell nekem átvariálni hogy bassusra menjen.
Uj kérdés kaptam egy LCD/nem tom mien képernyöt 6 DB tüje van de csak 5 kabel kivezetese ismeretlen a kijelzö szamomra semmi info nincs rola. Hogyan tudném életre lehelni? ha ra kötöm + - ra akkor adnia kene valami "kepet"? vagy kell hozza még valami?
Attól függ, mid van.
Ha már megvan a szoftver akkor kell még egy égető és az azt kezelő program. Egy olcsó STK500 klón bőven megteszi, és ha nem akarsz nagyon fejlesztgetni, sorozatgyártani, és WinXP alól használnád akkor egy AVR-Doper is bőven elmegy.
Ha van háttérvilágítás akkor kösd be azt is és a kontrasztot is. Így a semminél többet kell látnod, de amíg nem inicializálod addig semmi sem fog történni.
Próbáld meg a HD44780 alapján inicializálni. Persze ahhoz is tudnod kell hogy melyik tüske melyik. Indulj el a HD alapján. Nekem ez már párszor segített. Vagy nézd meg milyen IC-k vannak az LCD-n.
Nem kellett volna törölni, csak a megfelelő helyen, megfelelő módon feltenni.
de nem ide tartozott ujra felteszem a kerdest a masik megfelelö topicba.De igazabol neki valaszoltam hogy mit látok.Kiserletezem hogyan tudom életre lelni.
Köszönöm zombee!
Vettem mivel eddig nem volt avr programozóm, és a programozóba is kell avr ( tudom vannak egyszerűbbek amibe nem)... vettem egy kitet. Egyenlőre fejleszteni nem szeretnék de van egy áramkör amiből többet le kell gyártanom... hex fájl megvan... Így milyen irányba induljak? Köszi előre is!
Hát meg kell építeni, alkatrészt beszerezni.
Ha a NYÁK maratás nem megy akkor biztos lesz itt aki megcsinálja(még én is), de ha olyan akkor mátrixos panelon is megépítheted.
Mint írtam, vettem egy kit-et a he store-on. (a megépítés sem lett volna gond, elég sok áramkört építettem már....) a kérdés, megvan a hex fájl, melyik programmal programozzam fel a vezérlőt, AVR studio?
Én abban a meggyőződésben éltem idáig, hogy a kitekben az IC-k előre fel vannak programozva.
A hozzászólás módosítva: Jan 18, 2013
Fel is van, éppen ezért vettem meg, de után a melyiket használjam, kit össze rakva, és most melyikkel a legegyszerűbb kész hex fájlt feltölteni a vezérlőre.
Én megvettem az eredeti AVRISP MKII-t 10.000 Ft-ért, elégedett vagyok vele, de már feleannyiért is lehet ugyanilyen klón programozót venni.
Ha pedig soros portod is van, akkor 1.000 Ft-ból is megoldhatsz egy programozót házilag. Ha netántán Arduino-d van a háznál azzal programozhatsz ingyér is. Volt itt, aki egy pickit programozót csapott felül szoftverrel. 1.000-100.000 Ft között minden megoldás lehetséges. Akinek sok pénze van az vásárol, akinek kevesebb az szerel és programozik. Nincs általánosan jó megoldás A hozzászólás módosítva: Jan 18, 2013
Ha itt vetted a HEStore-n akkor AVR Studio kell hozzá. Ha Win7-el tolod akkor kicsit trükközni kell.
Oké, félreértettem a dolgot.
Az AVR Studio-val próbáld meg programozni, én 4-eset használok.
Eddig AVR studio 5.1 megnyit, file/ open file/ megnyitom a hexet.
Utánna tools/AVR programming de nem lát interface-t, hogyan tudom beállítani hogy lássa a programozót, usb-n. Mikor rádugtam a gép észlelte, hogy avr dopler lett csatlakoztatva. avr sutdioban mit állítsak?
Az 5-ös nem fogja látni. Használd a 4.18 verziót!
A DOPER HEX-ben egy AVRISP szöveg van. Azt cseréld ki STK500-ra.
A Studio5/6 azt ellenőrzi. A régi eljárás az AVRISP-t is elfogadta STK500-nak. Vagy maradj a Studio 4.x sorozatnál (4.19 az utolsó). Programozási sebességet vedd majd le kicsire, hogy a doiper _valamelyest_ stabil maradjon...
Látszik hogy otthon sokat foglalkoztál vele, gratula!
Csak az a kár hogy az illető még elindítani se tudja, akkor hogyan cseréljen fw-t? A "programozási sebesség" sajnos független a beállított értéktől, 1.8MHz-re állítva 22kHz-et mértem. Egyébként az azonosító 8 karakter, tehát "STK500_2". A hozzászólás módosítva: Jan 19, 2013
Üdv!
Úgy néz ki sikerült valamit összedobnom. Megy a kommunikáció, írás/olvasás, az AVR (8535) és az EEPROM (25LC320) között. Annyit szeretnék kérdezni, hogy a kódom méretét lehet-e valahogy csökkenteni? SB
Mit akarsz rajta csökkenteni? Talán nem fér bele?
De bőven elfér.
Csak kezdőként nem tudom, hogy lehetne e kisebb is a program. Tehát, hogy ugyanazt a feladatot megoldhatná e a vezérlő kevesebb kóddal is.
Minden feladatnak van egy Turing-bonyolultsága, ami azt jelenti hogy mindig lesz egy pont,
ahonnan nem csökkenthető a kód mérete. Mindenesetre kezdőknek azt tanácsolom, hogy az optimalizálást az elején felejtsék el, sokkal egyszerűbb és könnyebb idővel rájönni a gixerekre. Szóval, használdd ezt a kódot, ha a végén túl nagy lesz akkor gondolkozz IC váltáson(atmega16/32 felé). Ha fejlesztesz is és nagy lesz a kód, egy gyorsabb programozó is valószínűleg számításba jön, de még a programozó vagy IC csere is sokkal olcsóbb lehet mint napokat-heteket az optimalizálással tölteni hogy beleférjen a kód abba a nyamvadt IC-be... A hozzászólás módosítva: Jan 19, 2013
|
Bejelentkezés
Hirdetés |