Fórum témák
» Több friss téma |
Fórum » Digitális hangrögzítés (delay)
Sziasztok!
Mivel meg mindig furora varok es nem haladok az EPROMos cuccal,igy egyik regi almom felszinre kerult. Egy delay(hangismetlo;viszhang ![]() Amit kellene tudjon: N idotartamu hangot digitalizalni es rogziteni(mondjuk maz 10sec eleg) A rogzitett hangbol X meretu reszt ismetelten jatszani T ideig. Hol kezdjem? En ugy gondoltam ,hogy kell hozza egy AD es DA atalakito(mintha az AVR -ekben lattam volna(?)) ,meg memoria,meg egy proci.De hogyan tovabb? ![]()
Mibe szeretnéd felhasználni???ha nem titok.eprom jó lenne memóroának 64kb os vagy nagyobb!erre írni kell egy progit!kell egy digitális erősítő.KApcsolasi rajzom nincs de meg lehet oldani!!!A feljátszáj időtartama fog függeni a procitól és az eprom/pic kapacitásától!vagy megpróbálhatod megoldani úgy:ha van régi diktafonod azt átalakítod a lejátszás gombhoz épótesz egy megszakító áramkört!!a memóriás diktafonok jobbak´,és még tehetsz rá valami funkciót is,mert a diktafonon minimum 16mb van!!!a diktafon hoz a play funkcióhoz teszel egy időzítőt és ismétli magától a lejátszási funkciókat.555 időzítővel meg lehet oldani,vsga tranyós formában is úgy mint a led villogtásnál!!!!!az egyik oldalon marad a led a másikra pedig bekötöd a diktafon érintkezési pontjaita play gombnál!!így a legegyszerűbb!!!!
Szia!
De nincs diktafonom ![]() Ugy gondoltam hogy lenne egy 471 mikrofon erosito,aztan a hangot digitalizalna egy AD(DE MILYEN?),a digi jel menne AVR v PIC -be,onnan memoriaba ,a PIC szabna meg hogy mennyi ideig rogzit,hogy mennyit tarolok . Visszajatszaskor meg DA alakitana vissza a rogzitett jelet, PIC vegezne mondjuk a memoria cimzest. Meg az is kellene hogy potikkal tudjam allitani a rogzites idot,meg a rogzitett hang visszajatszast,hogy hanyszor jatsza vissza,u.hogy kozben halkul. EPROM nem igazan jo,inkabb EE akkor is,vagy valami mas konnyen kezelheto,minel nagyobb es olcsobb ![]() Szoval ez igy mar egy jo hangeffekt lenne ![]()
Az úgy jó lenne!!de ha hangszórónak 3 sávosnak kell lennie vagy pedig 22kOhm osnak!mert a mikrofon erősítőről a kijövő jel 22k ohm!!!
vagy tégy egy ellen9alást sorba a hangszóróval!Az ötleted jó!!!!!de potival nem bizti hogy meg tudod oldani a felj .idő hoszát!!mert akkor a picet kellene átírnod!nem akarlak szomorúvá tenni de ez van.de mibe kellene????
Én egyszer zenés ébresztőórát akartam csinálni valahogy így épült volna fel:
felvétel: mikrofon->előerősítő>AD konverter az AVRben->memória (Atmel gyártmányú DataFlash (16mbit)) lejátszás: AVR->DA (elenállásokból R-2R)->hangerőszabályozó->LM386 végfok Ha megépítettem volna, akkor akár meg lehetett volna csinálni azt is hogy, minden órában elmondja szóban a pontos időt ![]()
Sziasztok!
Itt van egyAppNote. Ebben PWM el oldották meg a D/A átalakítást. Egy másik oldalon meg 2 ellenállás meg két kondit használtak a PWM szűrésére és úgy ment az LM386 ra a jel. Pontosan mi az összefüggés az átalakított analóg jel és a kitöltési tényező között? Ezt még nem sikerült kihámozni ezekből.
Igen, pont ezek alapján indultam ki, de a PWM-nél elakadtam. Ezért maradt az R2R-es DA konverter, ez átgondolható, kiszámolható, meg alig van zaja. A PWM-nél elég komoly zajszűrés van a kapcsolási rajzban
Itt van egy link, ahol ki is lehet próbálni a kapcsolókra kattintással
A DAC0800 típusú IC ilyen átalakító?
Igen valami DA átalakító, de hogy te feszültséget kapj a kimenmetén ahhoz rá kell rakni még valamit. Az adatlapja segít ebben
[link=http://www.jaycar.com.au/images_uploaded/DAC0800.PDF]http://www.jaycar.com.au/images_uploaded/DAC0800.PDF[/link]
Szerintem is egy R-2R ellenáláslétrával jössz ki legegyszerűbben. Kivéve ha audió minőséget akarsz, de ahhoz elég kevés lesz egy mikrokontroller. A Chipcad honlapján találsz I2C DAC átalakítókat is meg SPI buszosat is. Ha jól emlékszem én vettem tőlük valamilyet régen.
Ez igy audio minosigu hangot adna?
Mi az a R2R ?(ellenallasokbol?) Az AVR-be egy AD labon megy az analog jel(hang)? Hany bites kodolast csinal,hogy van ez? Picit fejtsd ki legyszives.
Hát, hogy milyen hangot adna, azt úgy tudod kideríteni, hogy mondjuk egy mp3-mat átraksz wav-ba, megnyitod hangrögzítővel, átrakod 8bitre, és mondjuk 8 kHz-re. Nem a legjobb
![]() Ez a 8 kHz-es mintavételezési sebességet mondjuk fel lehet tornázni szerintem 16, esetleg 22KHz-re, de ebben az esetben sokkal kevesebb hang fér el a memóriában. R2R, az egy elég primitív digitál-analóg átalakító, a (#31258) hozzászólásomban van is egy link. Az AVR-be az egyik AD átalakító lábon menne be a jel, ott az fogadná, és mivel 10bites az átalakító, ezért le kell korlátozni 8 bitre. A 8 bitet meg be lehet írni a memóriába. Aminek a kezelését meg meg kell tanulni (idáig már nem jutottam el). A programba persze bele kell rakni megfelelő hosszúságú késleltetést, hogy megfelelő legyen a mintavételezési sebesség. Kiolvasásnál egyszerűen léptetni kell a memória címeket(meg persze a megfelelő parancsokat küldeni neki), és a memóriából jövö adatot egyszerűen rá kell küldeni az R2R hálózatra, ahol a kimeneten megkapod a hangot ![]() Nem egyszerű... ![]() De ha működne ez az egész cucc, akkor össze lehetne kötni PC-vel is akár, oda írni egy programot ami átrakja a wav fájlt egy rakat számmá, és ezeket meg át kellene küldeni a memóiába, mondjuk soros porton . Azért maradt abba ez a project, mert a fejlesztés közben jó ha van egy oszcilloszkóp a kéznél, hogy tudd egyáltalán hogy mit ad ki magából az áramkör, és nekem meg nincs oszcilloszkópom. (Most készül)
Hello!
Én történetesen csináltam már ilyen hanglejátszást PIC-el meg R-2R létrával. Én úgy csináltam hogy PC-re írtam egy programot, ami a wav fájlból kinyeri nekem a bináris adatokat, ezt (egy tömörítési eljárás után) beírtam egyenesen egy I2C eepromba. A lejátszás az volt hogy a PIC elővette az emmpromból a megfelő bájtot és kitette egy 8 bites portra, amin a DAC volt. A lejátszás sebessége igazából attól függ, hogy milyen frekvencián jár a PIC és hogy hány utasításból tudod a komplett bájtot előszedni a memóriából és kitenni a portra. (Persze még ilyeneket is be lehet állítani hogy hány bájtot játsszon le stb... ezekhez még számlálókat kell beleírni) Én ha jól emlékszem 4mhz-es 16F84A-t használtam, és 64 utasítás kelett ( a kitömörítéssel együtt). Ebből ki lehet számolni hogy 1Mhz/64Hz=15,625 Khz volt a frekvencia. (A lejátszandó hangot PC-n WavLabbal alakítottam át a megfelelő mono, 8 bites 15,625Khz-es mintavételi frekvenciájúvá). A timer számlálóját használtam ehhez, és addig várt a rutin míg az 64-re váltott vagyis így volt szinkronizálva az egész, így tudtam elérni hogy pontosan tegye ki a mintákat a portra. Egyébként a beszédszintetizátor topicban van egy link valami www.romanblack.com vagy micsoda. Ott van forráskód ehhez, én azt alakítottam át, meg saját PC-s szoftvert írtam.
Igy mar vilagosabb szamomra is.
Jol el leszek vele egy ideig, az biztos. egyelore nem fogok neki,a masik projectet kell befejezzem . Ha valami otletetek meg tamad kerlek irjatok le. Idézet: „ ..jó ha van egy oszcilloszkóp a kéznél,... ” Bizony,es sajna nekem sincs ![]()
Pedig én már úgy beleéltem magam hogy ez a PWM es megoldás működne, egyszerűnek tűnt. Pedig nem igazán értek az analóg dolgokhoz meg a hangtechnikához(egyszer majd beletanulok). Szóval én így okoskodtam: Ha 20 kHz es PWM et használok akkor a pl. 200 as A/D eredmény ami 0,97 V nak felel meg, ez lesz az érték ami a kitöltési tényezőt is meghatározza. Ez 20 MHz es kvarc esetén és ha a Timer2 előosztó nélkül van akkor 10 us ideig lesz a jel magasan az 50 us ból, így a jel középértéke 1 V-ra jön ki. Ha van egy 30 kOhmos ellenállásból és egy 662 pF kondiból álló aluláteresztő szűrőm akkor 5RC=99,3 us idő alatt töltődik a kondi gyakorlatilag a PWM jel középértékére. Ha 8kHz en akarom visszajátszani a hangot akkor van 125 us arra, hogy a kondi elérje a megfelelő feszültséget. Ez itt teljesül, és a 8 KHz feletti jeleket nem engedi át. Ez alapján az oldal alapján raktam össze egy kapcsolást:link
Bár a PWM re csak az RC szűrőt raktam meg az hozzá tartozó műveleti erősítőt. Más kapcsolási rajzok szerint amiket láttam ott ennyi is elég volt. A mikrofonhoz meg összeraktam az egész erősítőt ami ott van. Szóval csak sistereg a hangszóró. Az elgondolásom Szerintetek jó? Megnéztem a Chipcad árlistáját úgyhogy azt hiszem veszek egy DAC IC t.
R2R a lap közepén az ellenállás hálózat...
a képen zézd csak az ellenállások értékét... (pl.:R=10K akkor 2R=20K...)
Ezt az ellenallas halozatot ra kell kotni a 8 bites kimenetre,vagy hogy van ez?
![]() Gory: Hogy csinaltad PIC-el a hang digitalizalast? nagyon rossz netem van...:rinya:
Sehogy, számítógéppel csináltam. Felvettem wav-ba, átalakítottam 8bit mono 15,625Khz-re. Ezután pedig a felesleges bájtok nélkül beleírtam egy eepromba 24FC256-ba. (A másik változatnál meg egy BTC tömörítést csináltam és azt írtama az eepromba, amint már írtam az előző hozzászólásomban).
16F84 -hez akkor AD is kell,ha azzal akarom csinalni?
(de lehet hogy AVR -el csinalom,csak ott ul az F84...)
Igen kell hozzá, hogyha PIC el akarsz hangot felvenni.
Arra gondoltam,hogy van nehany 486 -bol kiszedett RAMom,nem lehetne egyet 8 MB -st felhasznalni memorianak?
![]() Bonyolult a cimzese?
Milyen memoriat tudtok ajanlani AVR-hez?Kellene legalabb 32-64 kb.
Helló!
32Kbájt vagy kbit kell? Milyen sebesség? Mert pl tudsz venni 24FC256 vagy nagyobb I2C eepromot, ami a gyorsabbik változat. Vagy vehetsz valami 62256 vagy hasonló gyors SRAM-ot, csak azt bonyolultabb lesz kezelni, valami számláló kell a címzéséhez, vagy rengeteg I/O port.
Hello!
Kbyte kell ![]() En ugy szamoltam,hogy 8 bit 16 khz -es digitalizalasnal 64 kbyte memoriaban 4 sec hang ferne el.Nem tul sok ![]()
Igazából ha a delay efektet te valós időben akarod csinálni? Tehát valami effekt processzort szeretnél? Mert egy PIC-el meg 16Khz 8 bittel nem lesz valami tuti a hangzása.
Igen effekt processzort szeretnek.
AVR -re gondoltam,konnyebb az AD atalakitas.Csak kellene egy memoria es egy DA atalakito ..
Szoval szeretnek egy picit jatszani hang AD/DA atalakitassal,es ezt egy effekt formajaban szeretnem majd 'veglegesiteni'.
Amúgy az ilyesmit szerintem DSP-vel szokták megoldani, mert a PIC teljesítménye elég kicsi. Vagy analóg módon, pl a gitár effekteknél.
Hát ja, ehhez a PIC szerintem kevés. Ha számolunk egy kicsit könnyű rájönni. Ha CD minőség kell, akkor mintavételezni minimum 44.1KHz-el kell, ami másodpercenként 86.13Kbyte adatmennyiség, ha 16 bites mintát használunk és nincs tömörítés, ehhez legalább kell egy 256 vagy 512 Kbyte memória. Célszerű a bemenetet átalakítani valamilyen digitális audióra (I2S, vagy S/P-Diff) inkább I2S, az egyszerűbb, mondjuk egy UDA1352HL- lel, aztán az érkező bistorozatot letárolni egy memóriába, majd kis idő múlva ugyanezzel az ICvel visszaalakítani az I2S-t audióra... persze még meg kell oldani a gyors adatátvitelt, meg a visszhangosítást. Mondjuk egy ARM képes erre szoftverből relaltimeban is...
|
Bejelentkezés
Hirdetés |