پاسخ : کتابخانه ff.h
کسی می تونه این موارد را توضیح بده ؟ لینک سورس انگلیسی فارسی ؟
نوشته اصلی توسط hossein_tomari007
#include <mega32.h> #include <alcd.h> #include <ff.h> #include <delay.h> #include <stdio.h> #define T1_OVF_FREQ 100 #define T1_PRESC 1024L #define T1_INIT (0x10000L-(_MCU_CLOCK_FREQUENCY_/(T1_PRESC*T1_OVF_FREQ))) unsigned char status; FILINFO fno; FRESULT res; FATFS drive; DIR dir; char path[4]="MMC"; char Folder[32]; char fname[32]; interrupt [TIM1_OVF] void timer_comp_isr(void) { TCNT1H=T1_INIT>>8; TCNT1L=T1_INIT&0xFF; disk_timerproc(); } DDRC=0X01; void init(void) { lcd_clear(); if((res=f_mount(0,&drive))==FR_OK) lcd_putsf("DRIVE SET IN 0"); else lcd_putsf("DRIVE NOT SET"); delay_ms(5); lcd_clear(); status=disk_initialize(0); if (status & STA_NODISK) lcd_puts("Card not present"); else if (status & STA_NOINIT) lcd_puts("Disk init failed"); else if (status & STA_PROTECT) lcd_puts("Card write\nprotected"); else lcd_puts("Init OK"); delay_ms(10); lcd_clear(); return; } void main(void) { PORTA=0xFF; DDRA=0X00; TCCR1A=0x00; TCCR1B=(1<<CS12)|(1<<CS10); TCNT1H=T1_INIT>>8; TCNT1L=T1_INIT&0xFF; TIMSK=1<<TOIE1; #asm("sei") lcd_init(16); lcd_clear(); lcd_putsf("Welcome"); delay_ms(20); lcd_clear(); init(); res = f_opendir(&dir, path); if (res == FR_OK) { lcd_putsf("Ready..."); delay_ms(20); lcd_clear(); } res = f_readdir(&dir, &fno); res = f_readdir(&dir, &fno); sprintf(Folder,"%s",path); while(1) { if (PINA.2==0) { res = f_readdir(&dir, &fno); if (res == FR_OK) { lcd_clear(); sprintf(fname,"%s/%s", Folder, fno.fname); lcd_puts(fname); delay_ms(10); } } if (PINA.0==0) { res = f_opendir(&dir, fname); if (res == FR_OK) { sprintf(Folder,"%s",fno.fname); lcd_clear(); lcd_putsf("Please Wait..."); delay_ms(20); lcd_clear(); } res = f_readdir(&dir, &fno); res = f_readdir(&dir, &fno); } } }
WINAVR: Program: 15566 bytes (95.0% Full) (.text + .data + .bootloader) Data: 695 bytes (67.9% Full) (.data + .bss + .noinit) IAR: 59.37%= CODE memory 9 728 bytes of CODE memory (+ 80 range fill ) DATA memory = 94.72% 970 bytes of DATA memory (+ 3 absolute )
دیدگاه