Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Въпрос за библиотека SD/MMC FlashFile на PRIIO
http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=5719
Страница 1 от 1

Автор:  Ugeen [ Пет Апр 18, 2008 3:53 pm ]
Заглавие:  Въпрос за библиотека SD/MMC FlashFile на PRIIO

Колеги,някой работил ли е с SD/MMC FlashFile библиотеката на PRIIO.Компилирам с CodevisioAVR и успях да я подкарам на FAT16 за SD card на ATMEGA32.Създавам файлове и пиша в тях ,но имам следния проблем.
Библиотеката има 2 функции за създаване и отваряне на файл :
fcreate(uchar*NAME,uchar*MODE) където NAME е стринг от RAM паметта и представлява името и разширението на файла.
Според описанието на библиотеката функцията трябва да се ползва така:
//
strcpyf(filename, “TEST.TXT”)
file1 = fcreate(filename, 0);
fclose(file1);
//Това копира съдържанието на стринг “TEST.TXT” записан във flash на контролера в буфер filename и го ползва.Така функцията работи без проблем.

Другият начин е името да се задава директно във функцията със стринг и тя се различава само по една буква:
//
file1 = fcreatec(“TEST.TXT”, 0);
fclose(file1);
// Това също работи безпроблемно
//
Проблема е следният:
Понеже не искам да ползвам твърдо фиксирани имена на файловете си се опитах да ги създавам за всяка дата по отделно ето така:
//
char Filename[14];
sprintf(Filename,"%.2u/%.2u/%.2u.TXT" , Date,Month,Year);//където дата ,месец и година ги чета от един RTC DS1307
file1 = fcreate(Filename, 0);//Ползвам първия начин
fclose(file1); file1 e пойнтер който е предварително дефиниран
//
Така не иска да работи и не ми създава никакъв файл.Къде според вас е проблема,защо възприема буфера записан от strcpyf ,а не иска да възприема буфер записан от sprintf?

Автор:  rumen65 [ Пет Апр 18, 2008 4:12 pm ]
Заглавие: 

Според мен проблема не е в това коя функция генерира стринга, а какво има в него. Поне Windows-а ми изписва че не може да има / както и <>*?\|" в имената на файловете. Виждам че ти си дал %.2u/%.2u/%.2u.TXT. Промени разделителя между цифрите и би трябвало да тръгне.

Автор:  Ugeen [ Пет Апр 18, 2008 4:21 pm ]
Заглавие: 

Благодаря ти колега ,оказа се абсолютно прав за разделителя.По принцип го знам това ,но едва ли щях да се сетя . Какви ли неща не ми минаха през ума.Промених разделителя с долна черта и всичко тръгна .

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/