hafıza kartından ses dosyası çaldırma

Başlatan minti34, 23 Eylül 2010, 14:33:05

minti34

merhabalar konuyu doğru yerde mi açtım bilmiyorum ama en uygun yerin burası olduğunu düşündüm değil ise özür dilerim.
benim öğrenmek istediğim konu şu.
bir devre tasarladım. tuş takımı ve 7 segment display içeriyor.tuş takımından girmiş olduğunuz rakamı displaye rf verici ile gonderiyor. buraya kadar sorun yok.ama ben devreye söyle bir özellik eklemek istiyorum.bastığım rakamları ayrı bir komutla seslendirmek istiyorum.ses kaydedici entegrelerin süresi yeterli gelmiyor. daha dogrusu sadece rakamı değil örnek :45 rakamı için ses kaydı şu şekilde olacak, 4 onluk 5 birlik basama şeklinde seslendirecek.bu ses dosyalarını önceden hafıza kartına bellir bir formatta kayıt edip pic ile hafıza kartından seçim yapabilirmiyim.yada bu konuyla ilgili başka ne yapabilirim.
teşekkürler

OG

Örnek nota üretme programı

;Include "PROTON_4.INC"
Device = 12F675
Config INTRC_OSC_NOCLKOUT, MCLRE_OFF, WDT_OFF, PWRTE_ON, 
 CMCON=7
 ANSEL=0
Xtal = 4
Symbol buton=GPIO.0
Symbol LED=GPIO.1
Symbol P = 0
Symbol P1= 0
Symbol P2= 0
Symbol P3= 0


Symbol C0 = 60 ;DO
Symbol C#0 = 61
Symbol D0 = 62 ;RE
Symbol D#0 = 63
Symbol E0 = 64 ;MI
Symbol F0 = 65 ;FA
Symbol F#0 = 66
Symbol G0 = 67 ;SOL
Symbol G#0 = 68 ;SOL


Symbol C1 =82 ;DO ........
Symbol C#1=85
Symbol D1 =87 ;RE
Symbol D#1=89
Symbol E1 =92 ;MI
Symbol F1 =94 ;FA
Symbol F#1=95
Symbol G1 =97 ;SOL
Symbol G#1=99 ;SOL
Symbol A1 =101 ;LA
Symbol A#1=102 ;la diyez si bemol
Symbol B1 =104 ;si
Symbol B#1=105
Symbol h1 =104

Symbol C2 = 105
Symbol C#2 = 106
Symbol D2 = 108
Symbol D#2= 109
Symbol E2 = 110
Symbol F2 = 111
Symbol F#2 = 112
Symbol G2 = 113
Symbol G#2 = 114
Symbol A2 = 115
Symbol A#2 = 116
Symbol B2 = 117
Symbol B#2 = 118
Symbol h2 = 117

cal_1:
Low LED
 If buton=0 Then GoSub melodi_1 : GoTo cal_2
 GoTo cal_1

 
 cal_2:
Low LED
 If buton=0 Then GoSub melodi_2 :GoTo cal_3
 GoTo cal_2

 
 cal_3:
 Low LED
 If buton=0 Then GoSub melodi_3 :GoTo cal_4
 GoTo cal_3

 
 cal_4:
 Low LED
 If buton=0 Then GoSub melodi_4 :GoTo cal_1
 GoTo cal_4
 
 
; Parca Adı: adinianmay 

melodi_1:
High LED
Sound GPIO.4,[A1,29,C2,14,h1,14,A1,29,C2,_
14,h1,14,A1,14,A1,29,C2,14,h1,14,A1,29,_
C2,14,h1,14,A1,14,D2,29,C2,29,h1,14,A1,_
14,h1,29,A1,14,G1,114,G1,29,h1,14,A1,14,_
G1,29,h1,14,A1,14,G1,14,G1,29,h1,14,A1,_
14,G1,29,h1,14,A1,14,G1,14,E2,29,C2,29,_
A1,29,F1,14,G1,14,F1,14,E1,43,F1,8,G1,8,_
A1,8,h1,8,C2,8,D2,8,E2,43]
DelayMS 1000
Return



; Parca Adı: Tutuklu

melodi_2:
High LED
Sound GPIO.4,[h1,29,C2,29,D2,29,h1,29,A1,29,G1,29,F1,14,E1,14,A1,114,E1,29,F1,14,_
G1,14,A1,57,P1,29,A1,29,h1,29,C2,29,A1,29,G1,29,F1,29,E1,14,F1,14,_
G1,114,F1,29,E1,14,F1,14,G1,57,P1,29,G1,29,A1,29,h1,29,C2,14,h1,29,_
A1,14,G1,29,F1,14,E1,14,F1,114,P1,29,G1,29,A1,29,h1,29,G1,29,F1,29,_
A1,14,G1,14,F1,14,E1,14,E1,57]
DelayMS 1000
Return



; Parca Adı: 12devadam
melodi_3:
High LED
Sound GPIO.4,[h1,26,h1,26,F#2,13,E2,13,_
D#2,26,E2,26,E2,13,E2,13,C2,13,h1,13,A1,_
26,h1,26,h1,26,F#2,13,E2,13,D#2,26,E2,13,_
P2,13,E2,26,P2,13,E2,13,E2,13,P2,13,h1,_
26,h1,26,F#2,13,E2,13,D#2,26,E2,26,E2,13,_
E2,13,C2,13,h1,13,A1,26,h1,26,h1,26,F#2,_
13,E2,13,D#2,26,E2,13,P2,13,E2,26,P2,13,E2,13,E2,13]
DelayMS 1000
Return



; Parca Adı: Aşkınmapu
melodi_4:
High LED
Sound GPIO.4,[A#1,8,G#1,8,G1,16,G#1,16,_
A#1,63,P1,16,A#1,8,G#1,8,G1,16,G#1,16,A#1,_
32,A#1,16,C2,16,A#1,16,G#1,16,G#1,16,G1,_
16,F1,16,G1,63,P1,16,F1,16,G1,16,D#1,16,_
F1,16,D1,16,D#1,16,C1,16,D1,16,D#1,16,F1,_
16,A#1,63,P1,16,A#1,8,G#1,8,G1,16,G#1,16,_
A#1,32,A#1,16,C2,16,A#1,16,G#1,16,G#1,16,_
G1,16,F1,16,G1,63]
DelayMS 1000
Return


End


[IMG]http://img375.imageshack.us/img375/3347/88527117.jpg[/img]



Kaydedilmiş nota değerleri rakamsal olarak çağırıp birşeyler yapılır sanıyorum.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

RcALTIN

Daha önce hiç kullanmadım ama ISD1420 '20 saniyelik bir kayıt yapıyor ve bu kaydı adreslendirebiliyor diye biliyorum.  10 adet(0-9) rakamın ve 10'un katları olmak üzere 9 adet sayıyı(10-90) yani toplamda 19 farklı sesi 20saniyede kaydedebilirseniz, 0-99 aralığında olan sayıları seslendirebilirsiniz... Kısaca her farklı okunuşu içeren 20 saniyelik bir ses kaydı hazırlamak gerek, bunun için önceden bilgisayar ortamında bir mp3 hazırlamak işe yarayacaktır... kayıt başına ortalama 1,1sn gibi bir süre çıkıyor ortaya, bu süre yeterliyse bu entegre iş görür gibi. Tabi adresleme çözünürlüde önemli, datasheetini incelemek gerek...
KİMSEYİ ENGELLEDİĞİM YOK, ÖZEL İLETİ DEVRE DIŞI !

minti34

ISD serısı bildiğim kadarıyla en fazla 120 sn kayıt yapabiliyorsun.benim herbir kayıtım yaklasık 5 saniye sürecek ve 99 veya duruma göre 999 adet alacak.yani çarparsan minumum 500 sn eder.oyuzden hafıza kartı kullanıp oradan dosyaları okutmak istiyorum mp3 player gibi. fakat kontrolunu ben yapıcan yanı hangı rakamsa dosyanın ismide o rakm olacak ve ör: 45.mp3 çal gibi..

stlg

Epromlarla bu işi yapabilirsin, dedigin gibi de olur ancak baya zor ve kulfetli ,epromlarla istedigin sesi istedigin kadar kanala bolebilirsin ,bir eprom yeterli gelmediginde ise yanına bir eprom ,bir eprom daha cs ozelligini kullanarak cozebilirsin
ALLAHA EMANET OLUNUZ Hoştur bana senden gelen,  Ya gonca gül yahut diken,  Ya kaftandır yahut kefen,  Kereminde hoş lütfunda hoş.

RcALTIN

Alıntı yapılan: minti34 - 23 Eylül 2010, 15:31:22
ISD serısı bildiğim kadarıyla en fazla 120 sn kayıt yapabiliyorsun.benim herbir kayıtım yaklasık 5 saniye sürecek ve 99 veya duruma göre 999 adet alacak.yani çarparsan minumum 500 sn eder.oyuzden hafıza kartı kullanıp oradan dosyaları okutmak istiyorum mp3 player gibi. fakat kontrolunu ben yapıcan yanı hangı rakamsa dosyanın ismide o rakm olacak ve ör: 45.mp3 çal gibi..

Bir şekilde harici eeprom v.s ile istediğiniz halledilebilir tabi, ama eepromdan okumak v.s derken okuma süreleride işin içine girecek, tüm bu sistemi oluşturmak size çok zamana mal olacak, bu nedenle seri üretim yapılmayacaksa hazır ile halletmek en kolay yolu gibi... Sadece rakam ve basit kelimeleri okuma söz konusu ise 45 için "dört onluk beş birlik basamak" yerine "kırk beş" diye okumak daha hoş olur ki 120sn de bu işlemler için baya yeterli gibi duruyor; tabi proje sizin olduğundan detaylarını, kafanızda ne gibi geliştirme düşünceleri olduğunu bilmiyoruz, ben sadece dışarıdan görünen tabloya göre zamandan kazanç için alternatif öneriyorum  :)
KİMSEYİ ENGELLEDİĞİM YOK, ÖZEL İLETİ DEVRE DIŞI !

minti34

cevaplar için teşekkür ederim.
sayıyı okuma bemin istediğim gibi olması önemli.Çünkü bu projeyi eşime yapıyorum.kendisi öğretmen ve 1 ve 2 nci sınıflarda çocuklara basamak kavramını öğretmek istiyor o yüzden seslendirmenin 4 onluk 5 birlik basamak diye seslendirmesi gerekiyor aynı zamanda girilen sayıyı ve basamak dağılımını görsel olarak gösterecek.bu yüzden eprom olayını araştırsam iyi olacak.konuyla ilgili fikirleriniz olursa beklerim.proje bitiminde burada paylaşırım eşi öğretmen olanlar için faydalı bir çalışma olacağını düşünüyorum.
teşekkürler

picusta

Alıntı yapılan: minti34 - 23 Eylül 2010, 15:31:22
ISD serısı bildiğim kadarıyla en fazla 120 sn kayıt yapabiliyorsun.benim herbir kayıtım yaklasık 5 saniye sürecek ve 99 veya duruma göre 999 adet alacak.yani çarparsan minumum 500 sn eder.oyuzden hafıza kartı kullanıp oradan dosyaları okutmak istiyorum mp3 player gibi. fakat kontrolunu ben yapıcan yanı hangı rakamsa dosyanın ismide o rakm olacak ve ör: 45.mp3 çal gibi..
Niye 99 veya 999 kayit olsun ki ?
Bence sana yetecek olan kayitlar 15 'i geçmez, kayit olacaklar :
- Sifir
- bir
..
-on
- birler
- onlar
- yuzler
-binler
yazilimsal olarak diledigin gibi birlestirirsin.

minti34

evet aslında dediğin gibi yapabilirim
kayıtlar ozan şu şekilde olacak
bir
iki
üç
dört
beş
altı
yedi
sekiz
dokuz
sıfır
birlik
onluk
on
yirmi
otuz
kırk
elli
altmış
yetmiş
seksen
doksan
böylelikle 21 kayıt yapıyor.herbir kayıt ortalama2,5 sn olsa 55 sn yapar.o zaman ısd işimizi görür.ben şimdi iki farklı dosyayı peşpeşe okutma konusunu araştırayım.teşekkürler

feyzi

Alıntı yapılan: minti34 - 23 Eylül 2010, 14:33:05
merhabalar konuyu doğru yerde mi açtım bilmiyorum ama en uygun yerin burası olduğunu düşündüm değil ise özür dilerim.
benim öğrenmek istediğim konu şu.
bir devre tasarladım. tuş takımı ve 7 segment display içeriyor.tuş takımından girmiş olduğunuz rakamı displaye rf verici ile gonderiyor. buraya kadar sorun yok.ama ben devreye söyle bir özellik eklemek istiyorum.bastığım rakamları ayrı bir komutla seslendirmek istiyorum.ses kaydedici entegrelerin süresi yeterli gelmiyor. daha dogrusu sadece rakamı değil örnek :45 rakamı için ses kaydı şu şekilde olacak, 4 onluk 5 birlik basama şeklinde seslendirecek.bu ses dosyalarını önceden hafıza kartına bellir bir formatta kayıt edip pic ile hafıza kartından seçim yapabilirmiyim.yada bu konuyla ilgili başka ne yapabilirim.
teşekkürler
Aşağıda aradığınız herşey var:
http://www.teuthis.com/html/mmc_mp3.html
"insanların hayırlısı ,onlara faydalı olandır."  (H.Ş.)