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
Nos valahogy igy képzelem,
PINB bit128 >> bit2 pos0>>6 PINB bit1 pos 15 PINA bit128>>bit1 pos7>>pos14 tehát, ezt szeretném látni, azt nem tudom, hogy strobe>>15 a PINB 128as bitje-e? Idézet: „Nem tudom ezt akartad-e , vagy azt, hogy a pos-nak megfelelő helyen lévő bit függvényében legyen engedélyezve az LCD-re írás. Így : if ((strobe>>(15-pos)&0x01))” igen, ha oda érkezik bemeneti jel akkor ír karaktert - mert ez egy multiplexelt input és fontos, hogy mikor ér oda a ciklus.
Sziasztok!
Egy Atmega8-al kínlódok mi lehet a gond? Programozásnál ezt írja ki! Erről lenne szó! Fontos lenne. Előre is köszönöm ha valaki tud segíteni!! Teljes projekt: http://radiokot.ru/circuit/light/run/26/
Az EEPROM-ot hibásan írja be/sérült.
Illetve lehet az is, hogy az írás előtt nem kéred külön a chip erase-t... Vagy talán a fusebiteknél a EEPROM preserve be van kapcsolva, így nem törli...
Köszi mindjárt nézem! Az EEPROM preserve nincs bekapcsolva. Chip erase elvégezve a hiba ugyanúgy fennáll! Akkor csak az Atmega8 hibás, gondolom.
Sziasztok!
Van egy problémám, ami egy ideje már fent áll. Adott egy arduino mega, (1280) amit fel kellene programozni. Több hónapja hogy sikerült egy 1280-asra feltenni a gyári bootloadert, most viszont nem akar működni. Eredeti ardu IDE-vel már nem próbálkozom, összevissza állítgattam már, de sehogy se akarja felírni a bootloadert... pedig azzal lenne a legegyszerűbb. (avrdude: usbdev_open(): did not find any USB device "usb") Driverek fent vannak hozzá, AVR studio látja, és teljesen működőképes a programozó. Eddig AVR studio-t (Kipróbáltam 4,5,6-os verziókkal is) használtam, egyenesen a gyártó honlapjáról, a programozóm egy mkII-es. AVR studio-t nem először használom, mégis valamit benézek rajta szerintem... -Signature egyezik -Tápfeszültség 5V -Ardu IDE könyvtárakból (1.0.3) kiválasztom a megfelelő hex fájlt (ATmegaBOOT_168_atmega1280) Sikeresen feltöltődik, mindenhol nagybetűs "OK" feliratok jelzik. -Beállítom a fuse biteket. Ezt a boards fájlból nézem ki. low_fuses=0xFF, high_fuses=0xDA, extended_fuses=0xF5 Szintén "OK" feliratokat kapok a folyamat végén. - Lock bitek. Szintén boards fájlból. lock_bits=0x0F Összességében biztató a sok "OK". Azt jelentené hogy minden helyesen lefutott. Erre megpróbálok feltölteni egy blink programot, és azon kívül hogy az FTDI chip-et felismeri semmi se történik. Szerintetek mit rontok el? Válaszaitokat előre is köszönöm! Üdv.
A programmers.txt-be tedd bele:
arduinostk.name=stk500 arduinostkcommunication=serial arduinostk.protocol=stk500v2 arduinostk.speed=115200 Lesz a tools->programmer alatt STK500-ad tool->serial alatt a programozó COM portot válaszd ki tool->boards alatt a Mega1280-asat tool->programmer alatt a stk500-t tool->bootloader beégetése Az STK500 zörög és készen vagy
Kipróbáltam ezekkel a módosításokkal, de csak nem akar működni. Volt még 1-2 tippem, amit megpróbáltam, eredménytelenül. A preferences fájlt módosítgattam, de nem segített, úgyhogy az eredetit hagytam bent. Boards.txt-ben próbáltam még valamit alkotni, de az se segített. Most az eredeti van fent. (http://arduino.cc/en/uploads/Main/boards.txt)
Az mkII illesztőjét próbáltam meg frissíteni, de friss volt. AVR studio még mindig lát mindent. Helyes signature, tápfesz, programozó. STK 500 volt kiválasztva, és 1280-as board. Serialt nem tudtam állítani, mert nem enged rákattintani, szürke a gomb. Jah, és a hiba, az Ardu IDE-ből. avrdude: Can't find programmer id "null" Valid programmers are: (hosszú lista, stk 500 benne van.) Köszönöm a segítségedet, remélem sikerül kitalálni mi lehet a probléma. Kezd eléggé misztikussá válni. Üdv
Itt a baj:
Az MKII _nem_ STK500! Az AVRDUDE alóli használathoz másik firmware kell (ahonnan vetted - nem kaptál hozzá CD-t, leírást, tanácsokat?) A TavIR-esnél volt ilyen ill a standard firmwarefrissítéssel is működik. * Ha nem a normál, hanem módosított megvalósításod van, akkor ezt NE használd - mert a programozóból "tégla" lesz! A "null" programozó pedig még pluszban valami egzotikus hibára is utal (ékezetes elérési út, hibás telepítés, hibás programmers.txt állomány). A hozzászólás módosítva: Dec 23, 2012
Meglehet hogy az ISP sebességgel lesznek gondok. Próbáltad már másik ATMega8-al?
Ha nem a gyári cucc az mkII-d akkor érdemes lenne belemerülnöd a LUFA+libusb-driver rejtelmeibe.
AVR Studio miért is nem jó?
Sikerült, nehezen de működik, a programozási frekit állítgattam, s láss csodát sikerült!!
Hali!
Teljesen gyári az mkII-m. Az AVR studio-nál ez egy fura valami. Ahogy írtam minden folyamatnál "OK" szövegek jelzik hogy sikeres volt a művelet. (flash, fuse bits, lock bit) Viszont amikor az USB kábelt csatlakoztatom a boardhoz, és feltennék rá egy blink programot, akkor nem találja. Jah, a libusb-vel tegnap este próbálkoztam, sajnos eredménytelenül. Közben majd egyik haveromtól kérek tanácsokat. Neki Linuxal működött még néhány hónappal ezelőtt a programozómmal+arduino IDE-vel. Köszönöm!
A gyári AVRISP-mkII kicsit másképp viselkedik mint a klónok, így frissítgetni nem érdemes.
Így a libusb-vel sem fogsz semmire sem menni, csak a Jungo-s driverrel működik!
Az EEPROM kb. 10x lassabb mint a FLASH memória, és cserébe 10x tartósabb.
Bár egy kicsit meglep mivel ugyanazon az ISP frekin mennie kellene amin a flash-t is programozod, kivéve: - a programod az AVR-t a rendszer órajel leosztására utasítja - a programod megpiszkálja az OSCCAL regisztert
Hello!Szeretnék egy AVR-es gyakorlópanelt szeretnék építeni.
[off]És mi a kérdés?
Szerintem "minden".
A hozzászólás módosítva: Dec 27, 2012
Mint például ez?
A hozzászólás módosítva: Dec 27, 2012
Helló! Remek, örülünk, hogy ilyen jó remek ambícióid vannak!
Olyan megoldást keresnék amivel hangot (wav, raw vagy bármi) tudok lejátszani.
A cél egy interaktív plüssállat lenne, egy poénos ajándék miatt. Minden készen van hozzá egy ATMega8-al csináltam meg, de most csak csipog. (Van benne pár "érzékelő" és erre reagál). Első körben egy SD kártyára gondoltam, de az elég bonyolultnak tűnik.
Az SD valóban nem egyszerű, és még ha van is egy wav fájlod, a kimenetet(DAC) is meg kell oldani,
a mintavételi sebességet és szóhosszt kiolvasni, beállítani, és még hangerősítőd sincs. A játékos cuccokban inkább dallamgenerátor szokott lenni. Előnye hogy a program és a dallam is nagyon kis helyen elfér, hátránya hogy ennek is van némi komplexitása, a generált dallamot hangszerezni, renderelni kell, aztán itt is vagy DAC, vagy PWM, lényeg hogy értsd is mit csinálsz. Keress olyan projektet ahol ezeket már megoldották és neked csak a kottát kell beletenned. Az AVR természetesen - megfelelő programmal - dallamgenerátorrá is alakítható! A hozzászólás módosítva: Dec 27, 2012
A hangot bármivé tudom alakítani akár 8 bites 8khz-es nyers formává is.
A kimenetnél elég az amit most is tud a csipogó. (jelenleg a karácsonyi dallamokat fütyüli) Végül is a fő problémám az adattárolás és a DAC. Az SD kártyánál még régebben nézelődtem és arra jutottam, hogy mivel PC-n tudok rendesen programozni így tudok csinálni egy olyan programot ami átmásolja sima egymás utáni byteok sorozatává vagyis nincs szükség FAT-ra. (első 512 byte a fájlok kezdete és hossza utána meg jönnek az adatok egymás után). Végül is lehet megpróbálkozom az SD kártyával, így csak ez a DAC ami gondot okoz... Illetve némi segítség az SD kártyához, ha lehetséges Amúgy nem zene, hanem hogy is mondjam természetes hangok lesznek lejátszva, mint írtam poénos plüssállat a végtermék.
Egész jó, de a lowcost miatt eltekintenék a fat és egyéb memória gyilkos megoldásoktól.
Így erre esne a választásom: atmega48 Amint néztem a kártya 3.3V-on menne és ez, ha jól látom a chip-nek is megfelelő. Kapna egy kristályt is (lehet bele 16Mhz-st rakni ekkora feszültségen?) A fájlrendszert meg tudom oldani 15byte memóriából. Ehhez készítek egy konvertálót delphiben ami bármilyen wav-ot képes átkonvertálni. (max 65535 db fájlt tud kezelni, és sorszámokkal lehet hivatkozni az egyes fájlokra). 8khz/8bites mintavételezéssel, bár ez csak a konktroller sebességétől és a DAC-tól függ... Ha jól gondolom akkor az egyik megszakításba teszem a lejátszót és esetleg 256 byte-ot pufferelésre használok. Így marad elég memória a többire. A kérdés már csak az, hogy a fenti elektronikailag működhet-e. Vagyis 3.3V-os feszszabályzóval, 16Mhz-s kristállyal és erre hogyan kellene rákötni a legalapabb módon egy SD kártyát/foglalatot. Ha ez összejön felrakom ide cikként, meg a delphi programot is (Most kapott gyermekünk egy lovat amiben van egy "kapcsoló" meg egy ilyen lejátszó és 6000 Ft volt)
Ha ennyire pro vagy akkor nem értem, miért akarod kinyírni a fájlrendszert?
Felőlem cikkezhetsz róla, csak az a baj hogy felrúgod az alapvető szabványokat, senkinek sem lesz utánépíteni. Én speciel jelenleg is játszadozom SD-kártyával. Elég kiábrándító lenne ha bármit módosítani akarnék rajta, egy külön progi kellene hozzá a jó öreg Total Commander/Intéző helyett. Delphi program helyett inkább egy AVR-ből való fájlrendszer kezelést írnék meg a helyedben. Pl. a FAT16 nem is olyan bonyolult, ha pedig csak gyökérkönyvtárból dolgozol, az egész fájlrendszer kezelésed nem lesz több 60-80 sornál, beleértve a töredékek kezelését is...
Belefér 512 byte memóriába?
Vagyis én ahogy írtam elsősorban a ktg hatékonyságot tartom szem előtt. ATMEGA48PA-PU ez most csak 400 Ft. Amihez hülye vagyok az az elektronika ezért kértem segítséget. Hamarabb összerakom az AVR-hez és a PC-hez a szoftvereket, minthogy megépítsem ezt a kis áramkört.
körübelül mennyi lenne ezt megépíteni?
Több 1000 darabos széria?
Csak mert az idődet így nem számolod....
Veled az a baj, hogy nem tudod elképzelni, miképp lehet fájlrendszert kezelni és hangot lejátszani 512 bájt memóriával, mert ez számodra nevetségesen kicsi, mivel ennek 100-szorosát megzabálja egy Delphi-s "hello world!".
És ez arra vall hogy nem ismered az AVR-t, pedig ez kell ahhoz hogy tudj programozni. Nem fél napos művelet mire rájössz, mi mindenre elég 512 bájt memória, csak ehhez más szemlélet kell. Magam ellen beszélek, de most neked inkább azt ajánlom, keress rá a neten hasonló projektekre. Ez egy "alap feladat" amit a szükség hoz, és ezt már sokan megépítették, sokféleképpen! Ha csak EZT a videót megnézed, érteni fogod miről beszélek. Ha csak játszani akarsz egy arduino-val akkor egyél egy olyat, ha építeni is szeretnél valami hasznosat akkor jól nézegess körbe, vedd meg az alkatrészt AMI KELL mert a sült galamb nem repül a szádba. A hozzászólás módosítva: Dec 27, 2012
Idézet: „körübelül mennyi lenne ezt megépíteni?” Ezt már hallottam valahol. Olyan emberektől akik kezükben tartottak egy kapcsolási rajzot és komplett kiviteli tervet mindennel együtt, de fogalmuk sem volt arról hogy hogyan kell elkezdeni. De hogy ne keserítselek el, Te még a jobbik fajtába tartozol, mert kérdezel. Ugyanis vannak olyanok akik ugyanerre a tervre elkezdenek okoskodni hogy Idézet: „ezt NEGYED PÉNZBŐL is ki lehet hozni, hogyan mer a fószer ilyen sokat elkérni érte, én ezt pillanatok alatt összedobnám a sufniban, csak tudnám melyik a páka hideg vége, maaaajd én megmutatom nekik!” Szóval én egy ilyen vagy hasonló panel megvásárlását ajánlom a számodra egy olyan embertől, aki már épített ilyet és tudja mi mennyibe kerül. A hozzászólás módosítva: Dec 27, 2012
|
Bejelentkezés
Hirdetés |