Hướng dẫn Bắt Đầu với IO với PIC16f877a trên Mplab XC8

Lan Mộc

Học sinh phổ thông
#43
em có đoạn code mà nó nứ báo lỗi chỗ mở file wav trong khi code mẫu nó không có dấu *. ai biết bảo em cái.
#define SDCARD_SPI_HW
#define SDCARD_PIN_SELECT PIN_D3
// End SD card module connections


#fuses HS,NOWDT,NOPROTECT,NOLVP
#use delay(clock = 20MHz)
#use fast_io(D)
#include <FAT_Lib.c>

const int8 *wav= "mywav.wav";
int1 ok = 0;
int8 i, j, data[16], channel_count;

void play(){
sdcard_read_byte(address_pointer + 22, &channel_count); // Read number of channels
while(fat_read_data(16, data) == 0){
for(i = 0; i < 16; i++){
set_timer1(0);
j = data;
set_pwm1_duty((int16)j); // Update PWM1 duty cycle
if(channel_count == 2){ // If 2-channel wave file (stereo)
i++; // increment i
j = data;
set_pwm2_duty((int16)j); // Update PWM2 duty cycle
}
while(get_timer1() < 500); // Wait some time (about 125us) to update the duty cycles
}
}
}
void main(){
delay_ms(2000);
setup_ccp1(CCP_PWM); // Configure CCP1 as a PWM
setup_ccp2(CCP_PWM); // Configure CCP2 as a PWM
set_pwm1_duty(0); // set PWM1 duty cycle to 0
set_pwm2_duty(0); // set PWM2 duty cycle to 0
setup_timer_2(T2_DIV_BY_1, 63, 1); // Set PWM frequency to maximum with 8-bit resolution
setup_timer_1( T1_INTERNAL | T1_DIV_BY_1 );
ok |= sdcard_init(); // Initialize the SD card module
ok |= fat_init(); // Initialize FAT library
ok |= fat_open_file(*wav); // Open the wave file
if(ok == 0){
play();
}
set_pwm1_duty(0); // set PWM1 duty cycle to 0
set_pwm2_duty(0); // set PWM2 duty cycle to 0
} // End
 

Lan Mộc

Học sinh phổ thông
#44
nó toàn lỗi a numeric expression must appear here ở dòng 7 từ cuối lên ban đầu nó là wav nhưng không có * nó dịch lỗi
 

Quảng cáo Google