Hledám program pro přehrávání zvuku (mluveného slova)

Potreboval by som zapojenie a program, ktoré by fungovalo tak, ako fungujú tie obvody v plyšákoch…že stlačím mikrospinač, a prehrá určitú nahrávku. Nepoznaá niekto nejaký taký návod? Ďakujem.

:arrow_right: administrator: přejmenováno z "mikročip ktorý hraje"

Co třeba do prostoru za programem nahrát zvukové data (třeba 8bit mono 11025Hz tj do 8kB se vejde 0.74 sekundy což ej asi málo, nebo jen by určitě styčily 4 bity mono při cca 8kHz, což by pak se do 8kB vešlo cca 2 sekundy ) Program (který by byl faktprimitivní a krátký) by prostě jen četl data ze zbývající FLASH paměti, a posílal by je do D/A.
Pak potřebuješ 8 nebo 4 výstupní piny na R2R DAC převodník. (hledej víc pod heslem “covox”). A zybtek je už jen zesilvoač a reproduktor.

Kdysi jsem něco takovéhleho úspěšně provozoval na 89S52.

K Atmega daj AT45DB041,-161, alebo -321
Tam sa zmesti 512kB, 2M, alebo 8MB udajov. A tam sa toho zmesti na 47s, 190s, alebo 380s co je vyse 6 a pol minuty.
S cipom sa velmi dobre robi a je celkom cenovo dostupny. Cenu ale pozeraj v TME.

Cenově dostupný? Vzhledem k tomu že to nemají v sortimentu gme (kde mají lecos drahého) odhaduju, že cena toho io nebude pod 300. Naschvál jsem to v tme nehledal, udělejte mi někdo překvápko, kolik to stojí! :slight_smile:

EDIT: Možná si zapomněl dodat, že je to pouze na 2,7-3.5V!!

Fakt nechapem tu predpojatost

bez registracie v TME

AT45DB041 32.47CZK 512kB Flash
AT45DB161 36.77CZK 2MB Flash
AT45DB321 66.91CZK 8MB Flash

kedze je to zo zahranicia, je to bez DPH . Uz vidim, ako sa tu pise o vysokom postovnom (4.5EUR) atd atd :slight_smile:

O napajani som nezabudol napisat, tak ako som nezabudol napisat o mnohych inych dolezitych parametroch, ako je rychlost a pocet prepisov Flash. Jednoducho si to co koho zaujima vyhlada konkretne v datasheete.

  1. Ak to chce dat niekto do kopy s mcu na 5V, obvod je 5V tolerant, na napajanie staci dat zenerku. Fakt neviem v com je problem si dopredu pozriet datasheet a zapojit suciastku podla doporucenia vyrobcu. Tiez som neuviedol, aky je ten cip rychly a ani kolko krat sa da donho zapisovat a to su tiez velmi dolezite udaje. Dufam, ze mi bude odpustene :slight_smile:

  2. zakladatel vlakna pisal nieco o plisovych hrackach, tak tam asi bude nejake baterkove napajanie 2x AA,alebo nieco podobne. To uz by som nechal na konkretnu konstrukciu, ako sa rozhodne autor cele zariadenie napajat. Urcite tomu potom prisposobi zapojenie

Osobne v GME uz dlhe roky nenakupujem, lebo su velmi drahy a maju dost maly vyber. Niekomu zase moze velmi vyhovovat, ze ma ich obchod poruke a vyssia cena potom nemusi byt na zavadu, ak sa daju veci zohnat operativne bez platenia postovneho. Skratka kazdy kupuje tam a takym sposobom, ako mu to najviac vyhovuje. To je myslim uplne OK.

Doporucujem si zaujemcovi pozriet application note AVR335

atmel.com/dyn/resources/prod … oc1456.pdf

a zdrojaky su na

avrfreaks.net/index.php?modu … item_id=84

ale neviem, ci sa stranka zobrazi bez registracie na avrfreaks.net
registracia je zdarma

jo, já jen narážel na to, že omezení na 3.3V je docela důležitý údaj. Sice lehce řešitelný ale co no…
cena 32kč + 150kč poštovné, jo to je drahé. Přesně jak říkáš. Kupovat jen ten jeden IO přes poštu je naprosto nevýhodné.

Každý v TME nenakupuje obvody po jednom…
Mimochodem v GME by to mě osobně vyšlo ještě dráž, každý není z Prahy že.

Aby bylo jasno, tak já taky nejsem z Prahy. Ale furt mě to vyjde levnějc, než pošta.

Moc dakujem, presne taketo nieco som hladal:)

GME, alebo TME? :slight_smile:

Jestli to bylo na mě, tak GMe smaosebou. KDybys měl tolik peněz co já, dával by sis dobrý pozor, než něco objednáš přes poštu.

Mám ešte takú otázočku, že keď je mikropočítač napríklad atmega8L , ktory je napajany maximalne 3.5V, ake logicke urovne nan mozem privadzat? ked chcem na pin dostat log.1 staci mu tam priviest 3,5V? Alebo treba 5?

Logicka jednotka je vacsinou vztiahnuta na napajanie, teda privedies tych 3,5V, alebo dokonca aj menej. Tolerancne urovne logickych hodnot su uvedene v datasheete.

začal som so stavbou, no na problém som narazil uz zo zaciatku… nainstaloval som AVRstudio4 a winAVR…no pri kompilácii mi chýbajú 2 hlavičkové súbory: inavr.h a ioavr.h kompilátor píše, že ich nemôže nájsť. zápis mám normálne:
#include <inavr.h>
#include <ioavr.h>

použijem atmega8, preto mám v AVRstudiu zapnutú simuláciu atmega8…

Většinou pro I/O operace stačí:
#include <avr/io.h>
// načte definice dle mcu vybraného v projektu

Mezi další občas užitečné patří:
#include <avr/interrupt.h>
// definice vektorů přer.
#include <avr/pgmspace.h>
// při ukládání tabulek do flash

Mám ešte takú otázočku. V tom pdf od atmelu je ako výstupný zosilovač použitý LM324N. Nedalo by sa ho použiť iba ako mikrofónový predzosilňovač, a ako výstup z PWM pinu pripojiť primo na výstupný pin nejaký piezo element? Skúšal som to tak, že vyrobil som si jednoduchý program ktorý generuje určitú frekvenciu na výstupe, a s piezom fungovalo v pohode. Išlo by s ním aj hovorené slovo?

S připojením není problém, ovšem nebude to hrát co chceš. Piezo má totiž úplně jiný frekvenční rozsah než mluvené slovo. Ty potřebuješ zhruba 300Hz-4kHz. Na těch 4kHz piezo začíná (něco možná vyprodukuje už od 1kHz). To je jedna věc. Druhá důležitější je, že máš pwm výstup na 15kHz. To ti piezo vypíská(a rozhodně se to nebude líbit psům v okolí :smiley:), ale zároveň je to přesně to, co nechceš. Tady je potřeba aby do zvukového měniče šla “střední hodnota” té pwm s odfiltrovanou ss složkou. Střední hodnota je v uvozovkách, protože při generování harm. signálu pomocí unipolární pwm je to polovina napájení a po jejím odfiltrování vyjde nula. Snad si ale rozumíme :wink:. Je tedy potřeba tam nechat alespoň RC článek a za něj ještě oddělovací kondik. Takový výstup je ovšem velice měkký a měl by být zesílen. Ostatně můžeš si zkusit dát ten RC článek třeba na sluchátkový výstup a k tomu připojit piezo. Nicméně se té 15kHz složky stejně skoro nezbavíš, proto jsou tam tay filtry.

Dúfam, že som pochopil správne :slight_smile: Takže určite sa púšťam do stavby aj so zapojeným výstupným zosilovačom, aj so všetkými filtrami, ktoré sú v dokumentácii. Len mám zase taký malý problémik. Keď som postavil tento zosilovač aj s filtrami, a na výstup som pripojil PC speaker, naprogramoval som atmega8, aby na výstup pre PWM striedala signál: 200ps log1, 200ps log0 aj keď som skúšal tieto časy meniť, stále bol na výstupe zosilovača slabší výkon- hlasitosť, ako keď som speaker pripojil priamo ku PWM výstupu…frekv sa zdala byť taká istá. Mohli by ste mi prosím poradiť, čím to môže byť? C1 a C2 sú napísane kondenzátory 1mikro farad… no nenašiel som na schéme zaznačenú ich polaritu…aspoň teda predpokladám, že kondenzátory tejto kapacity keramické nebudú. Ako ich správne otočiť? Resp, mohli by ste mi prosím napísať ako by som mohol nájsť časť obvodu v ktorej mám chybu?

Ospravedlnujem sa za velmi a podstatne hrubu chybu, program v atmega8 mam nastaveny ako generator , ktory drzi 200us log1 a 200us log0 :slight_smile:

Když budeš mít nastavenou pwm na konstantní hodnotu, tak ti to ty filtry zrušej (udělají z toho střední hodnotu a oddělovací kondík na konci ji odstraní). Je potřeba měnit střídu pwm aby to prošlo. I kdybys dal jen 2 stavy (měnit v compare registru 2 hodnoty), tak už to bude jakejsi zvuk vyluzovat. Frekvence bude závislá na frekvenci těch změn (+ vyšší harmonické pokud projdou filtrem).