Pratade projekt eller lite musik

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Pratade projekt eller lite musik

Inlägg av ankan »

Hittade pictalker vilket gick ut på att man kunde få fram en röst med bara en pic utan talsyntesenhet. Behöver hjälp så jag kan använda den i PIC C.
Vill trycka in allophones i interna EEPROMen och sedan spela upp en röst.

Alternativt, vilket jag antar är lättare, skulle jag vilja ha tips på PICC kod för att få picen att spela musik.
Hittar en del i ASM men vill helst slippa översätta eftersom jag antar någon redan har kört liknande i PIC C.

Kör Hi-techs så bästa vore om ni kan tipsa om kod till den men C-kod till annan kompilator går bra också så klart.
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

Menar du att du vill spela upp förinspelade ljudslingor i båda fallen?

Jag har sett ett projekt, skrivet i asm, som gör att man kan spela upp kraftigt "special"komprimerat ljud från en vanlig PIC via en 1/1,5/2-bit DAC. Vill du göra något bättre än det så får du nog skriva själv :wink:
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Roman Black's "1 bit sound" kanske kan vara intressant :

http://www.romanblack.com/picsound.htm

Men, som $tiff antyder, det är knappast frågan om varken
en "röst" eller "musik"... :-)
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

Precis den menade jag, tack för kompletteringen sodjan!

Är väldigt nyfiken på hur resultatet är med denna mjukvara, verkar inte vara någon här som provat, eller? Jag har varit nyfiken länge men aldrig kommit till skott...
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Inlägg av ankan »

Jag var inne på PICtalker:
http://www.alphalink.com.au/~derekw/pictalker/main.htm vilken kan få det att låta som att picen pratar. Måste dock banta ner antalet stavelser för få plats på interna EEPROMen på picen. Projektet ska inte kunna säga allt möjligt utan det räcker med bara några få ord.

Hittade programkod i C som baseras på PICtalker.
http://www.isk.kth.se/kursinfo/6b4059/pictalk

Annars var jag inne på att picen skulle kunna generera några olika noter så att den kan spela en truddelutt. Någon som har någon trevlig länk om det?
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

När det gäller att uttala enkla/korta "fraser", så har jag för
mig att det finns (fanns ?) några kretsar med inbyggt fras-minne
och "riktig" talsyntes. Har inga länkar dock...
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Inlägg av ankan »

Jo det finns men jag vill slippa massa extra kretsar när picen kan göra jobbet.
SPO256 var en sådan krets jag tror du syftar på. Den har visserligen slutat tillverkas men http://www.speechchips.com/shop/ har ett restlager som de säljer. Men som ni ser kostar de en liten slant och om man kan göra motsvarande i en pic, varför inte?
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> ...när picen kan göra jobbet...
> ...om man kan göra motsvarande i en pic,...

Tja, varför finns det specialla ljudkretsar alls ?

Jag tror inte att man kan få en PIC (eller någon annan standard
microcontroller) att göra "motsvarande" som dessa kretsar.

Annars var det kanske dom kretsarna jag tänkte på...
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Inlägg av ankan »

Jag tycker i alla fall PIC-motsavrigheten duger för mitt ändamål. Men om vi skulle skippa talsynteten och funderar på att få ut några toner så man kan få den att spela en truddelutt. Det det borde det finns en del exempel på.

Någon som har några bra länktips?
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

För enstaka toner borde man kunna använda en timer med
extern utgång. För flera samtidiga toner, vet jag inte...
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Inlägg av ankan »

Jag klarar mig med en ton i taget. Ahh du tänkte att man ger en timer olika värden beroende på not och sedan ser man till att toggla en utgång vid timer interup?
Har bara Timer1 kvar vilket är lite klumpigare att jobba med i och med att den är 16-bit. Men det är väll bara att köra 1:a -> delay -> 0:a -> delay osv med olika delay för olika noter.
Då blir det till att börja räkna lite på frekvenser och tider igen antar jag.
Eller någon som har koll på olika noters frekvenser? Antar att google är min vän.. :-)
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Ungefär så, ja.

Antagligen behöver du 16-bitars upplösning för att få tonerna rätt.
Med bara 8 bitar skulle nog det mesta låta "falskt"...
ankan
Inlägg: 1091
Blev medlem: 12 november 2004, 01:50:35

Inlägg av ankan »

Någon som har sett någon sida där de har gjort detta?
Användarvisningsbild
Chribbe76
EF Sponsor
Inlägg: 1167
Blev medlem: 17 januari 2004, 22:43:17
Ort: Stockholm

Inlägg av Chribbe76 »

Frekvenser kan man räkna ut såhär:

440*2^(TonNr/12)

TonNr 0 = A som ligger på 440Hz
bearing
Inlägg: 11675
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Inlägg av bearing »

Det var några i skolan som gjorde en enhet som kunde spela in ljud (optimerat för röst) med en uC.

De samplade en bandpassfiltrerad och förstärkt signal från mikrofon (ca 4000 samplingar/sek) och sparade i SPI-EEPROM-kretsar.

Ljudet spelades upp med hjälp av PWM-utgången med lågpassfilter.

Ruggigt dålig kvalitet, men det gick att höra orden/meningarna man hade spelat in.
Skriv svar