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
Sziasztok.
Tudtok nekem valami égetőt ajánlani ATTINY13-20PU -hoz? Meg ugye ezek többször írhatóak? Szóval tudok "kísérletezgetni" vele? Köszönöm előre is:suhanc
Építsd meg ITT a lap alján szereplő programozót, ha van párhuzamos port a gépeden. Garantáltan működik.
Vagy vedd meg EZT ha usb-s kell. Igen, elég sokszor újraprogramozhatóak. Jobban jársz egy Atmega8-al, ha most kezdesz programozni. Tudom kicsit elszállt az ára, de könyebb dolgod lesz, mint a kis 8 lábúval. Ha komolyan gondolod a tanulást, szerintem építs valamilyen tanuló panelt. Például ezt
En ezt ajanlanam:
Pololu AVR programozo Postakoltseggel egyutt kb. ugyanannyiba kerul mint a Magyarorszagon is kaphato USB-s programozok, de ez raadasul meg tartalmaz USB-soros (UART-TTL) atalakitot es egy egyszeru szoftveres oszcilloszkopot is. Foleg az USB-soros atalakito lehet nagyon hasznos a kesobbiekben, ha valaki a PC-nek akar adatokat kuldeni.
Sziasztok!
ATMega8515-el nem tudom használni az analog comparatort, nem tudnátok valami példát írni? Nagyon megköszönném.
Sziasztok!
Lehet, hogy nem a legjobb helyen érdeklődök, de a "nagyágyúk" itt is biztosan tudják a választ és nem is pontos kapcsolási rajzot szeretnék, hanem csak nagyvonalakban. Előre felvett mondatokat (audio) tetszőleges sorrendben milyen áramkörrel (eszközökkel) lehetne lejátszani? Feltételtől függően most az 5. mondat következik, vagy éppen a 9. Mire kellene rögzíteni és mivel lehetne így ljátszani? Elsősorban mikrokontrolleres megoldás érdekelne, ha van ilyen. Ha nincs, akkor milyen van? Köszönöm előre is!
Igy reszletek nelkul a 32 bites AVR-eket javaslom. Van hozza mp3 dekoder lib, ami ingyen elerheto az atmel honlapjan, van FAT fajlrendszer leprogramozva, aminek segitsegevel akar SD kartyarol akar soros flash ic-rol is le tudsz jatszani. A mikrokontroller kb 2000 ft, viszont csak JTAG vagy NEXUS programozo viszi. Refenrenciakent fent vannak a devboardok kapcsolasi rajzai az atmel honlapjan. Ha a szamodra fontos periferiakat ugyan oda teszed mint ahol a devboardon van, akkor nem kell a programozassal sokat vacakolnod, eleg a mintaprogramot kiherelni es a maradek specifikus reszt meg hozzairnod.
Ha keves a hanganyag es nem szamit a hangminoseg akkor vannak erre cel ic-k is, amelyek kozvetlen hang be- es kimenettel rendelkeznek(kis jelszinu), tipusjeluk peldaul ISD-vel kezdodik.
Nagyvonalakban: A hangot digitalizalni kell A/D atalakito segitsegevel es lejatszani D/A segitsegevel. A hang minoseget ket dolog fogja befolyasolni:
1. A mintavetelezesi frekvencia 2. A digitalizacio felbontasa (A/D ill D/A felbontasa) A mintavetelezesnel konnyen ertheto hangot mar 4-6kHz-es mintavettel is el lehet erni 4-8 bites felbontasnal. Ha pl van egy 4kHz / 8 bit per mintavet hangod, az ugye 4000*8 azaz 20 kbps (kilo bit per second) hangot jelent. Azaz minden egyes masodperc szamara 20kB-nyi adattar kell neked (tomoritetlenul es ugye ez mono). Tehat szamolnod kell arra, hogy irdatlan mereto memoria kell neked a feladat elvegzesehez, amit vagy kulso eeprom, vagy mas tarolo egyseg pl SD kartya alkalmazasaval fogsz tudni elerni nagy valoszinuseggel. Nagy valoszinuseggel egy egyszeru RLE tomoritessel mar eleg sok helyet tudsz magadnak megsporolni, es annak nem tul sok a szamitasi igenye (Windows WAV file-ok pl hasznal[hat]nak ilyen tomoritest). Szerintem elso korben tuzz ki egy celt, hogy hangot vagy mas hullam format digitalizalsz es tarolsz el. Ha ez megy akkor kovetkezo lepesben probaldd meg D/A atalakitoval lejatszani es szkope-on nezni a kijovo hullamformat. Ha az iz megy akkor kezdj csak el jatszogatni tomoritesekkel es kulso tarolokba torteno tarolasokkal / kiolvasasokkal. Idézet: „Ha pl van egy 4kHz / 8 bit per mintavet hangod, az ugye 4000*8 azaz 20 kbps (kilo bit per second) hangot jelent. Azaz minden egyes masodperc szamara 20kB-nyi adattar kell” Nem csak 3.9kB? Ha 8bit a mintavétel felbontása, akkor az 1B. Egy másodperc alatt 4000-szer veszek 1B-os mintát, azaz 4000B/s. Ezt osztom még 1024-gyel és ~3.9kB jön ki nekem... szerk.: Természetesen másodpercenként!
Köszönöm neked is és Trudnainak is. Csak egy gondolat merült fel bennem, de ha már így elindítottatok, lehet, hogy végig is csinálom.
Olyan berendezésen gondolkodom, ami helyettesít engem a munkahelyemen bizonyos állandó szövegek elmondása esetében. Így, 25 éve ezt csinálva már kezd unalmas lenni, ezért arra gondoltam, hogy azt a tíz mondatot (esetenként más és más) tíz gombra kötve a berendezésem is elmondhatná helyettem, én csak a gombokat nyomogatnám. (Csak nehogy a feleségemnek is kelljen egy "Vidd ki a szemetet!, Menj a boltba!, Hányszor mondjam ..." nyomógombokkal! )
Hasonló projekt készül nálam is. Én egy 8bites AVR-re fejlesztek. A memória SD kártya, melyre kártyaolvasóval teszem fel a WAV fájlokat. Ezek mono, 8bit/44100-48000Hz mintavételezésűek. A DAC-ot kétfélét próbáltam, egyszer az R-2R létrát, másszor az AVR hardveres PWM-jét. Mindkét esetben azonos minőséget hallottam kishangszórón, illetve kisebb erősítőn is. Ebből a szempontból a PWM előnyösebb, mivel csak 1 lábat foglal. Jelenleg a FAT fájlrendszert bújom, a hangfájlok tetszőleges sorrendű lejátszása miatt...
Nem, a kis 'k' az az 1000, a nagy 'K' az az 1024 Pl. a kilo hertz az kHz, a kilo byte pedig KB normalisan, de mivel kB-ot irtam ezert 1000 Byte ertendo -- ahogy Beselyo Pista bacsi mondana: Igazam van, nem? De! Naugye?! Mar megint igazam van!
Idézet: „Olyan berendezésen gondolkodom, ami helyettesít engem a munkahelyemen bizonyos állandó szövegek elmondása esetében.” Vedd fel a telefonodra es jatszd le nekik Vagy a szamitogepedre mp3-ba
A kB-KB dologban igazat adok, mert ezzel nem vagyok tisztában, én azt a formát használom, amit leírtam... De ettől függetlenül nem értem, Neked hogyan jött ki a 20kB... :no: Ha a 4000-t beszorzom 8-cal, az 32kbps szerintem. Ha ezt osztom 8-cal, hogy bájt-formában kapjam meg az eredményt, akkor 4kBps a végeredmény.
Ami azonos az előző számításommal, ha eltekintek az 1024/1000-rel való osztás különbségétől. Vagy ennyire lázas lennék?! :zavart2:
És az alkotás örömével mi lesz?
Lehet, hogy megpróbálom mind a két irányt. Ez elszórakoztat egy jó darabig.
Ez is nagyon érdekes. És lehet, hogy ez a legjobb megoldás.
Tudnál adni linkeket ezzel foglalkozó oldalakhoz?
Ja, arra nagyon egyszeru a valasz: Sajnos hexaban hagytam a calculatorom es mar igy Pentekre nem maradt agysejtem, hogy eszre vegyem a hibat (kezdve ott, hogy miert kell 4*8 -hoz nekem a calculator...)
:nyes: Ezek után erre jobban figyelek!
Nem tudom, mennyire vagy benne a programozásban.
Szükséges a cél mikrovezérlő adatlapja, a programozási nyelvekkel foglalkozó oldalak is kellhetnek. Továbbá: SD kártya Így találhatsz hardveres/szoftveres részleteket... SD kártya adatlap Igencsak fontos... FAT fájlrendszer Ez is kellhet majd... WAV formátum Talán ezek a legfontosabb kiindulópontok ehhez a fajta megvalósításhoz...
Köszönöm szépen! A programozással elbírok (egy kis innen kapott segítséggel biztosan) a többivel meg majd elbíbelődök valahogyan.
Ha végképp nem megy, akkor majd nem csinálom. Most egyelőre nagy kedvem van hozzá. Ha legközelebb Soltvadkerten járok (ami tőlünk 30 km) akkor majd megeszünk egy fagyit abban a híres cukrászdában.
Ha a kedv megvan, akkor már csak sok kitartást kívánok az eredmények mellé!
Üdv Mindenkinek!
Eléggé kezdő vagyok még a programozásban, épp egy öntartó kapcsolást próbálok szoftveresen megoldani, nevezetesen, hogy ha megnyomom a nyomógombot akkor a megszabott LED világítson mindaddig, amíg újra meg nem nyomom ezt a gombot. Az alábbi kódot sikerült eddig összehoznom. A problémám az vele, hogy nagyon bizonytalan a működése, többszöri benyomásra kapcsol csak ki, illetve be.Több késleltetéssel is próbálkoztam, de nem hoztak eredményt. Kérném, aki tud segítsen, minden ötletet szívesen fogadok. Üdv: André
A problémádat valószínűleg a gomb pergése okozza
Prell jelenség: nyomógomb megnyomásakor, annak kívánt és fix állapotba történő kapcsolása előtt az érintkezők többször összezáródnak majd szétnyílnak (pattannak) és az elektronika ezt úgy értelmezi, hogy többször nyomtuk meg ugyanazt a gombot.
Majdnem jo ez! A delay(100) szerintem felesleges, azt szedd ki. Heyette meg az if(temp==0) magjaba tedd be, hogy addig varakozz, ameddig a PINB 3. bitje ujra magas nem lesz (ott is kell egy debouncing, valoszinuleg ott is elegendo egy olan 25ms varakozas).
Az itt a gond, hogy ha épp akkor nyomod meg a gombot, ha a program épp más résznél jár, mint a hol a gombot kell beolvasni, akkor azt nem fogja megcsinálni. Ha épp a várakozásban van a program, akkor te nyomogathatod a gombot, semmit nem fog érni. A gombot csak abban az egy pillanatban nézi, amikor az adott sorra ér a program. Erre a dologra vannak kitalálva a megszakítások, amik megszakítják egy bejövő esemény idején a program futását és megnézik mi az a esemény. Picit egyszerűsíteni is lehetne a programon, akkor talán javulna a helyzet. Ez a portállítgatás sem értem miért kell, amikor egyszerűen lehet állítgatni egy apró gyári paranccsal a kimenetet. Ez is csak a drága időt pazarolja.
Köszönöm a gyors válaszaitokat, hirtelenjében a következőre módosítottam a kódot, így a mostani kapcsoló esetén nem villódzik, ha átlagos gyorsasággal nyomom be és engedem el, viszont ha nyomva tartom akkor ugye ismétlődik a ki-be kapcsolgatás, amit szeretnék mindenképpen elkerülni. Erre lenne esetleg ötletetek? Mármint, hogy a gomb folyamatos lenyomása esetén folyamatosan világítson, ne villogjon, de emellett az öntartás funkció is megmaradjon.
Köszönöm előre is. Üdv: André
En errol beszeltem, hogy ezt probaldd meg -- ez nem ment akkor?
Mondjuk ATMega168/328, SD kartya és DAC?
És ha készen van? AVR-Duino WavePlayer Mintaprogi, rajz és minden egyéb. 32MB....64 GB kártyakezelés, mono és sztereo Wav állomány, max 22 khz mintavételezési frekvencia....
Tökéletes, köszönöm szépen a segítséget
Ez is nagyon-nagyon jó. Köszönöm szépen!
(Úgy látom, lesz egy beszélő órám is. ) |
Bejelentkezés
Hirdetés |