22.08.2016, 17:42
|
|
Вид на жительство
Регистрация: 09.12.2009
Адрес: Россия, Тула
Сообщений: 377
Сказал спасибо: 192
Сказали Спасибо 156 раз(а) в 99 сообщении(ях)
|
Re: SOFTPWM stm32f030f4
Сообщение от AR_Favorit
|
Потому надо смотреть не там...
|
Это типа содержательный ответ?
А где смотреть?
Под "там" я понимал сам принцип использования флэш в качестве ЕЕпром.
Если ща начнется бла-бла на тему что SPL - фигня, и надо прямо регистры курить -
так я вам скажу, что с той скоростью, с которой пишется флэш здесь это неважно.
Да и вообще неважно, если хочется меньше запоминать.
А там где важна скорость - там можно и регистры напрямую прописывать.
Например, использовать какой-нибудь SetPin() (даже не знаю как оно там называется) я конечно не буду,
для этого есть есть GPIO-›BSRR.
А настроить периферию 1 раз в начале работы - нафига париться?
Во всем нужна мера.
Последний раз редактировалось krug_vv; 22.08.2016 в 17:47.
|
|
|
|
22.08.2016, 18:47
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.03.2010
Сообщений: 2,897
Сказал спасибо: 498
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
|
Re: SOFTPWM stm32f030f4
Сообщение от krug_vv
|
А где смотреть?
|
Этого вопроса было бы вполне достаточно. AN4061 - EEPROM emulation in STM32F0xx microcontrollers. На него, собственно, ссылку miwutka и дал.
Вот там как раз и расписан этот самый принцип использования флеша в качестве еепром. И в придачу к нему en.stm32f0_eeprom_emulation.zip - архив с рабочим примером. Не самый универсальный код, но сохранять переменные сгодится. Все это есть на сайте ST.
ЗЫ И да, SPL фигня, и её там нет)
Сообщение от krug_vv
|
А настроить периферию 1 раз в начале работы - нафига париться?
|
Я бы согласился бы, если бы не вот такие случаи
Собственно, подозреваю, что у miwutka пример EEPROM emulation не прикручивается к проекту именно из-за HAL или SPL в проекте... Там функции работы с flash будут пересекаться...
Последний раз редактировалось AR_Favorit; 22.08.2016 в 19:00.
|
|
|
|
22.08.2016, 20:06
|
|
Вид на жительство
Регистрация: 09.12.2009
Адрес: Россия, Тула
Сообщений: 377
Сказал спасибо: 192
Сказали Спасибо 156 раз(а) в 99 сообщении(ях)
|
Re: SOFTPWM stm32f030f4
Сообщение от AR_Favorit
|
AN4061 - EEPROM emulation in STM32F0xx microcontrollers. На него, собственно, ссылку miwutka и дал.
|
А я с этого документа и начинал. В итоге пришел к тому что вы уже видели.
Так проще.
ЗЫ в приведенном примере HAL, а не SPL
|
|
|
|
22.08.2016, 20:34
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.03.2010
Сообщений: 2,897
Сказал спасибо: 498
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
|
Re: SOFTPWM stm32f030f4
Сообщение от krug_vv
|
Так проще.
|
Для одной переменной - может быть, а для нескольких? Ну и плюс возможная полная потеря данных - нехорошо, надо таки две страницы использовать, дабы исключить ее возможность при пропадании питания в неподходящий момент...
Сообщение от krug_vv
|
ЗЫ в приведенном примере HAL, а не SPL
|
Один черт
|
|
|
|
22.08.2016, 22:05
|
|
Вид на жительство
Регистрация: 09.12.2009
Адрес: Россия, Тула
Сообщений: 377
Сказал спасибо: 192
Сказали Спасибо 156 раз(а) в 99 сообщении(ях)
|
Re: SOFTPWM stm32f030f4
Сообщение от AR_Favorit
|
Для одной переменной - может быть, а для нескольких? Ну и плюс возможная полная потеря данных - нехорошо, надо таки две страницы использовать, дабы исключить ее возможность при пропадании питания в неподходящий момент...
|
С этим соглашусь. Просто моя задача не такая критичная.
Пользователь тыкает кнопки - оно запоминает.
Если вдруг свет вырубится - не беда, он это увидит и заново потыкает.
|
|
|
|
29.08.2016, 23:05
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.07.2009
Адрес: Запорожье
Сообщений: 1,531
Сказал спасибо: 309
Сказали Спасибо 53 раз(а) в 48 сообщении(ях)
|
Re: SOFTPWM stm32f030f4
спаисбо за пример! Выходит что всетаки лучше I2C EEPROM использовать...? Я еще не пробовал но вроде не сложно это сделать. Либы есть от SPL. Сейчас пока попробую эмуляцию.
|
|
|
|
30.08.2016, 21:51
|
|
Заблокирован
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,486
Сказал спасибо: 396
Сказали Спасибо 2,220 раз(а) в 1,319 сообщении(ях)
|
Re: SOFTPWM stm32f030f4
Есть еще один вариант эмуляции еепромки - через регистры Backup. Правда их не так немного, и питаются они от отдельной трехвольтовой батарейки-таблетки, через отдельный вход Vbat.
Но вот с этим у F030 напряг - нету...
|
|
|
|
30.08.2016, 22:03
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.03.2010
Сообщений: 2,897
Сказал спасибо: 498
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
|
Re: SOFTPWM stm32f030f4
Сообщение от miwutka
|
Выходит что всетаки лучше I2C EEPROM использовать...?
|
Если надо писать много и часто - то внешнюю еепром, только мне все же больше нравится SPI.
Если надо просто хранить настройки прибора, например, то проще писать их во внутреннюю флеш-память (если настройки меняются нечасто, то даже и не заморачиваться насчет ее ресурса)
Если писать очень часто - то существует FRAM (cегнетоэлектрическая энергонезависимая память), работать с ней так же, как с внешней еепром, но ресурс у нее огромный (и она очень быстрая, запись происходит сразу).
Последний раз редактировалось AR_Favorit; 30.08.2016 в 22:20.
|
|
|
Сказали "Спасибо" AR_Favorit
|
|
|
30.08.2016, 23:28
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.07.2009
Адрес: Запорожье
Сообщений: 1,531
Сказал спасибо: 309
Сказали Спасибо 53 раз(а) в 48 сообщении(ях)
|
Re: SOFTPWM stm32f030f4
AR_Favorit, у меня как раз только 2 ноги свободные под I2C. Ну и на атмегах я успел того ее попробовать. Вот их парочку и есть для эксперимента. Писать наверно частенько прийдется. Я на 103-ем стм пробовал писать во флешь. Там всего пару строк было использовано. Гдето видеоурок видел. Всё работало. Теперь так понимаю что там была именно эмуляция еепром. Там просто указывал адрес памяти и писал туда значение переменной... Поиск свободной ячейки и т.д. конечно не делали ))
|
|
|
|
31.08.2016, 08:21
|
|
Заблокирован
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,486
Сказал спасибо: 396
Сказали Спасибо 2,220 раз(а) в 1,319 сообщении(ях)
|
Re: SOFTPWM stm32f030f4
На F103-м лучше писать в backup-регистры, если размер записи небольшой
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 08:25.
|
|