Например TDA7294

Форум РадиоКот • Просмотр темы - petit fatfs
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Чт апр 18, 2024 07:47:40

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: petit fatfs
СообщениеДобавлено: Вт мар 20, 2018 20:31:52 
Нашел транзистор. Понюхал.

Зарегистрирован: Пн апр 25, 2016 15:43:23
Сообщений: 197
Откуда: Россия , Воронеж
Рейтинг сообщения: 0
Доброе время . Попробывал сегодня petit fatfs и наткулся на такую проблемму . Не работает запись в фаил.
То есть , монтирование , открытие файла и чтение из него спокойно , но вместо записи только перезапись.
Если создать пустой текстовый фаил , то при попытке записать в него инф. ничего не произойдет , однако если записать в него 120 пробелов то запись произойдет (пока не кончится строка или эти 120 пробеллов).
В чем может быть проблема ?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: petit fatfs
СообщениеДобавлено: Ср мар 21, 2018 11:48:31 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
Без ваших исходников сложно будет вам подсказать.
Разновидностей petit fatfs довольно много,
но тем не менее может поможет
Спойлер
Код:
// процедура записи файла, дописать в конец файла      
        if ((status=fs_lseek(fs_file.size,1))==0) {   //FA_WRITE
           #asm("nop")         
        /* write some text to the file,
          without the NULL string terminator sizeof(data)-1 */
        if ((status=fs_write(text,sizeof(text)))==0)
          printf("%u bytes written of %u%u Bt\r\n",sizeof(text)-1, fs_file.size / 1000, fs_file.size % 1000);
            #asm("nop")
        else
           /* an error occured, display it and stop */
           printf("%u no bytes no written of \r\n");         
       } else {
          /* an error occured, display it and stop */
          printf("File no_size %u bytes\r\n",sizeof(text)-1);
          }
// конец процедуры записи   
То есть перед функцией fs_write вы должны вызвать fs_lseek


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: petit fatfs
СообщениеДобавлено: Ср мар 21, 2018 16:14:35 
Нашел транзистор. Понюхал.

Зарегистрирован: Пн апр 25, 2016 15:43:23
Сообщений: 197
Откуда: Россия , Воронеж
Рейтинг сообщения: 0
Спойлер
Без ваших исходников сложно будет вам подсказать.
Разновидностей petit fatfs довольно много,
но тем не менее может поможет[spoiler]
Код:
// процедура записи файла, дописать в конец файла      
        if ((status=fs_lseek(fs_file.size,1))==0) {   //FA_WRITE
           #asm("nop")         
        /* write some text to the file,
          without the NULL string terminator sizeof(data)-1 */
        if ((status=fs_write(text,sizeof(text)))==0)
          printf("%u bytes written of %u%u Bt\r\n",sizeof(text)-1, fs_file.size / 1000, fs_file.size % 1000);
            #asm("nop")
        else
           /* an error occured, display it and stop */
           printf("%u no bytes no written of \r\n");         
       } else {
          /* an error occured, display it and stop */
          printf("File no_size %u bytes\r\n",sizeof(text)-1);
          }
// конец процедуры записи   
То есть перед функцией fs_write вы должны вызвать fs_lseek


fs_lseek(0) вызываю перед записью. Но ошибки это не исправляет.

Исходник взят с сайта https://hubstub.ru/programming/114-podk ... lleru.html.
Правда подправил его для atmega32u4 на 16МГц.


Вложения:
atmega32u4_petit_fatfs.rar [119.08 KiB]
Скачиваний: 122
Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: petit fatfs
СообщениеДобавлено: Ср мар 21, 2018 17:06:59 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
pf_lseek(0); установить указатель на ноль, он будет перезаписывать.
Что бы писать дальше, надо pf_lseek(fs.fsize) установить указатель на размер файла или на конец файла.


Вернуться наверх
 
Организация питания на основе надежных литиевых аккумуляторов EVE и микросхем азиатского производства

Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: petit fatfs
СообщениеДобавлено: Ср мар 21, 2018 17:52:31 
Нашел транзистор. Понюхал.

Зарегистрирован: Пн апр 25, 2016 15:43:23
Сообщений: 197
Откуда: Россия , Воронеж
Рейтинг сообщения: 0
pf_lseek(0); установить указатель на ноль, он будет перезаписывать.
Что бы писать дальше, надо pf_lseek(fs.fsize) установить указатель на размер файла или на конец файла.

Но разве он не должен продолжить запись как только перезапишет все существующие байты ?


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 30


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y