سلام دوستان، من میتونم توسط دستورات زیر در کارت حافظه بنویسم، الان سوالم اینه چطور میتونم هشدار برای قرار نگرفتن کارت حافظه رو ایجاد کنم، مثلا اگه کارت حافظه در اسلات قرار داده شد، یه پیام بده اوکی و اگر قرار داده نشده بگه not insert مرسی.
اینم همون کد نوشتن در کارت حافظه: الان توو این کد من چه کارت حافظه رو قرار بدم و چه ندم پیام اوکی میده بهم!!
#include <mega32a.h>
#include <i2c.h>
#include <ds1307.h>
#include <alcd.h>
#include <ff.h>
#include <sdcard.h>
#include <delay.h>
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
// Reinitialize Timer 0 value
TCNT0=0x64;
disk_timerproc();
}
void main(void)
{
FATFS drive;
FIL file;
unsigned int i;
char lcd_buff[20]={"hello word"};
// Timer Period: 9.984 ms
TCCR0=(1<<CS01) | (1<<CS00);
TCNT0=0x64;
OCR0=0x00;
TIMSK=(1<<TOIE0);
#asm ("sei")
i2c_init();
rtc_init(0,0,0);
lcd_init(20);
while(f_mount(0,&drive)!=FR_OK);
lcd_clear();
lcd_putsf("init OK");
delay_ms(500);
while(f_open(&file,"Bayati.txt",FA_OPEN_ALWAYS));
lcd_clear();
lcd_putsf("file opend");
delay_ms(500);
delay_ms(500);
while(f_open(&file,"Bayati.txt",FA_WRITE));
lcd_clear();
lcd_putsf("Writing...");
delay_ms(500);
while(f_write(&file,&lcd_buff,15,&i)!=FR_OK);
lcd_clear();
lcd_putsf("file writed");
delay_ms(500);
f_close(&file);
lcd_clear();
lcd_putsf("file close");
while (1)
{
// Place your code here
}
}
اینم همون کد نوشتن در کارت حافظه: الان توو این کد من چه کارت حافظه رو قرار بدم و چه ندم پیام اوکی میده بهم!!
#include <mega32a.h>
#include <i2c.h>
#include <ds1307.h>
#include <alcd.h>
#include <ff.h>
#include <sdcard.h>
#include <delay.h>
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
// Reinitialize Timer 0 value
TCNT0=0x64;
disk_timerproc();
}
void main(void)
{
FATFS drive;
FIL file;
unsigned int i;
char lcd_buff[20]={"hello word"};
// Timer Period: 9.984 ms
TCCR0=(1<<CS01) | (1<<CS00);
TCNT0=0x64;
OCR0=0x00;
TIMSK=(1<<TOIE0);
#asm ("sei")
i2c_init();
rtc_init(0,0,0);
lcd_init(20);
while(f_mount(0,&drive)!=FR_OK);
lcd_clear();
lcd_putsf("init OK");
delay_ms(500);
while(f_open(&file,"Bayati.txt",FA_OPEN_ALWAYS));
lcd_clear();
lcd_putsf("file opend");
delay_ms(500);
delay_ms(500);
while(f_open(&file,"Bayati.txt",FA_WRITE));
lcd_clear();
lcd_putsf("Writing...");
delay_ms(500);
while(f_write(&file,&lcd_buff,15,&i)!=FR_OK);
lcd_clear();
lcd_putsf("file writed");
delay_ms(500);
f_close(&file);
lcd_clear();
lcd_putsf("file close");
while (1)
{
// Place your code here
}
}
دیدگاه