سلام بر دوستان عزیز
من در برنامه نویسی پخش فایل WAVE با کیفت pcm-22.05khz-8bit-mono به مشکل کیفیت در پخش برخوردم و فایلم نویز داره .کد برنامه ام را میزارم.اگه کسی راهنماییم کنه ممنون میشم:
$regfile = "m32def.dat"
$crystal = 16000000
$include "CONFIG_AVR-DOS.bas"
$include "config_mmc.bas"
'*****************************************dim ************************************************
Dim I As Word
Dim J As Word
Dim Arr(512) As Byte
Dim A(256) As Byte
Dim Address As Long
Address = 1
'**************************************config ************************************************
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Porta.3 , Db5 = Porta.2 , Db6 = Porta.1 , _
Db7 = Porta.0 , E = Porta.4 , Rs = Porta.5
'PWM
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Prescale = 1
Config Portd.7 = Input
'*****************************************beg in**********************************************
Enable Interrupts
Cls
Cursor Off
'******************************************** *************************************************
While Drivecheck() <> 0
Print "Card drive is not ready to use!"
Cls
Locate 1 , 1
Lcd "CARD KHARAB !"
Wait 1
Wend
Print "CARD SALEM !"
Cls
Locate 1 , 1
Lcd "CARD SALEM !"
Wait 1
'******************************************** *************************************************
While Driveinit() <> 0
Print "INSERT CARD !"
Cls
Locate 1 , 1
Lcd "INSERT CARD !"
Wait 1
Wend
Print "CARD OK"
Cls
Locate 1 , 1
Lcd "CARD OK"
Wait 1
'******************************************** *************************************************
Print "Init File System ..."
Cls
Locate 1 , 1
Lcd "Init File ..."
Wait 1
While Initfilesystem(1) <> 0
Print "ERROR FAT"
Cls
Locate 1 , 1
Lcd "ERROR FAT"
Wait 1
Wend
Print "ok"
Cls
Locate 1 , 1
Lcd "FAT OK "
Wait 1
'S = Dir( "1.wav"
'Portd.7 = 1
Do
If Pind.7 = 0 Then
Open "1.wav" For Binary As #1
Do
Get #1 , Arr(1) , Address , 512
For I = 1 To 512
Pwm1a = Arr(i)
For J = 1 To 15
Next
'Waitus 17
Next
Address = Address + 512
Loop Until Eof(#1) <> 0
Close #1
Cls
Locate 1 , 1
Lcd "END"
End If
Loop
End
من در برنامه نویسی پخش فایل WAVE با کیفت pcm-22.05khz-8bit-mono به مشکل کیفیت در پخش برخوردم و فایلم نویز داره .کد برنامه ام را میزارم.اگه کسی راهنماییم کنه ممنون میشم:
$regfile = "m32def.dat"
$crystal = 16000000
$include "CONFIG_AVR-DOS.bas"
$include "config_mmc.bas"
'*****************************************dim ************************************************
Dim I As Word
Dim J As Word
Dim Arr(512) As Byte
Dim A(256) As Byte
Dim Address As Long
Address = 1
'**************************************config ************************************************
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Porta.3 , Db5 = Porta.2 , Db6 = Porta.1 , _
Db7 = Porta.0 , E = Porta.4 , Rs = Porta.5
'PWM
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Prescale = 1
Config Portd.7 = Input
'*****************************************beg in**********************************************
Enable Interrupts
Cls
Cursor Off
'******************************************** *************************************************
While Drivecheck() <> 0
Print "Card drive is not ready to use!"
Cls
Locate 1 , 1
Lcd "CARD KHARAB !"
Wait 1
Wend
Print "CARD SALEM !"
Cls
Locate 1 , 1
Lcd "CARD SALEM !"
Wait 1
'******************************************** *************************************************
While Driveinit() <> 0
Print "INSERT CARD !"
Cls
Locate 1 , 1
Lcd "INSERT CARD !"
Wait 1
Wend
Print "CARD OK"
Cls
Locate 1 , 1
Lcd "CARD OK"
Wait 1
'******************************************** *************************************************
Print "Init File System ..."
Cls
Locate 1 , 1
Lcd "Init File ..."
Wait 1
While Initfilesystem(1) <> 0
Print "ERROR FAT"
Cls
Locate 1 , 1
Lcd "ERROR FAT"
Wait 1
Wend
Print "ok"
Cls
Locate 1 , 1
Lcd "FAT OK "
Wait 1
'S = Dir( "1.wav"

'Portd.7 = 1
Do
If Pind.7 = 0 Then
Open "1.wav" For Binary As #1
Do
Get #1 , Arr(1) , Address , 512
For I = 1 To 512
Pwm1a = Arr(i)
For J = 1 To 15
Next
'Waitus 17
Next
Address = Address + 512
Loop Until Eof(#1) <> 0
Close #1
Cls
Locate 1 , 1
Lcd "END"
End If
Loop
End
دیدگاه