реклама на сайте
подробности

 
 
> Чтение строк из флэш.
Jenya7
сообщение Nov 6 2016, 08:31
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Мне пользователь посылает строки по терминалу. Я сохраняю их во флэше. При перезагрузке контроллера мне надо вытащить их. Но как я знаю откуда их тащить? начальный адрес я конечно знаю. но строки разной длины. как мне узнать где начало / конец строки?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
rx3apf
сообщение Nov 6 2016, 12:25
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



А почему не стирать страницы заранее, и писать данные уже в стертые ?
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Nov 6 2016, 12:49
Сообщение #3


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(rx3apf @ Nov 6 2016, 17:25) *
А почему не стирать страницы заранее, и писать данные уже в стертые ?

флеш пишется постранично. нельзя дописать на страницу. пишется вся страница. суть вопроса как организовать алгоритм записи/чтения строк на флеш страницу.

Цитата(iosifk @ Nov 6 2016, 17:38) *
У меня на сайте есть статья про микроконтроллеры НЕК - эмуляция электрического ПЗУ на флэшь. Только учтите, что циклов перезаписи на страницу не более 10 тыс, а ввовсе не 100 тыс, как в рекламе...
А вообще то - мелкая фрам и никаких проблем...

у STM есть EEPROM Emulator. я с ним работал как то. но сейчас я работаю с Kinetis. но даже с EEPROM нужен алгоритм записи/чтения.

Сообщение отредактировал Jenya7 - Nov 6 2016, 12:46
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Nov 6 2016, 13:05
Сообщение #4


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(Jenya7 @ Nov 6 2016, 15:49) *
флеш пишется постранично. нельзя дописать на страницу. пишется вся страница.

Тогда и конкретный тип микросхемы озвучьте, pls ?
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Nov 6 2016, 13:12
Сообщение #5


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(rx3apf @ Nov 6 2016, 18:05) *
Тогда и конкретный тип микросхемы озвучьте, pls ?

это Kinetis - K70.

а вообще какая разница как пишется флэш. о чем мы тут говорим?
вопрос о том как добавлять приходящие строки во флеш. и как считать их при перезагрузке.



Сообщение отредактировал Jenya7 - Nov 6 2016, 13:21
Go to the top of the page
 
+Quote Post
HardEgor
сообщение Nov 6 2016, 13:23
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 223
Регистрация: 3-03-06
Из: Tomsk
Пользователь №: 14 925



Цитата(Jenya7 @ Nov 6 2016, 20:12) *
а вообще какая разница как пишется флэш. о чем мы тут говорим?

Flash пишется побайтово, но стирается страницами.
Поэтому просто дописываете пришедшую строку в конец предыдущей, ну и разделители какие-нибудь - уже писал, наверняка в конце строки приходит CR.
Никаких проблем.
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Nov 6 2016, 13:34
Сообщение #7


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(HardEgor @ Nov 6 2016, 18:23) *
Flash пишется побайтово, но стирается страницами.
Поэтому просто дописываете пришедшую строку в конец предыдущей, ну и разделители какие-нибудь - уже писал, наверняка в конце строки приходит CR.
Никаких проблем.

так мне нужно следить за адресом? я ведь должен знать куда писать следующую строку...
нет что то тут не то. у меня функция записи
uint32_t FLASH_PageProgram(uint32_t page_num, uint8_t *buffer, uint32_t size)
то есть я передал номер страницы. это мне нужно переделать функцию так чтоб был доступ к адресам? в stm32 я писал во флеш постранично.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Jenya7   Чтение строк из флэш.   Nov 6 2016, 08:31
- - HardEgor   CR+LF(0x0D+0x0A)?   Nov 6 2016, 08:37
|- - Jenya7   Цитата(HardEgor @ Nov 6 2016, 14:37) CR+L...   Nov 6 2016, 08:48
|- - HardEgor   Цитата(Jenya7 @ Nov 6 2016, 15:48) я не у...   Nov 6 2016, 12:04
|- - Jenya7   Цитата(HardEgor @ Nov 6 2016, 17:04) А ка...   Nov 6 2016, 12:21
- - rx3apf   А как же иначе ? А если предполагается, что там ещ...   Nov 6 2016, 09:40
|- - Jenya7   Цитата(rx3apf @ Nov 6 2016, 15:40) А как ...   Nov 6 2016, 10:00
- - x893   Можно и байтами записывать во флэш. Страница полна...   Nov 6 2016, 11:04
|- - gerber   Цитата(Jenya7 @ Nov 6 2016, 15:43) суть в...   Nov 6 2016, 12:56
|- - HardEgor   Цитата(Jenya7 @ Nov 6 2016, 20:34) нет чт...   Nov 6 2016, 14:38
|- - Jenya7   Цитата(HardEgor @ Nov 6 2016, 19:38) Вы с...   Nov 6 2016, 14:49
- - iosifk   Цитата(Jenya7 @ Nov 6 2016, 11:31) Мне по...   Nov 6 2016, 12:38
- - Dog Pawlowa   Как только вы сформулируете проблему, не затрагива...   Nov 6 2016, 12:53
- - Jenya7   Цитата(Dog Pawlowa @ Nov 6 2016, 17:53) К...   Nov 6 2016, 13:02
- - iosifk   Цитата(Dog Pawlowa @ Nov 6 2016, 15:53) П...   Nov 6 2016, 13:03


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 4th August 2025 - 14:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01448 секунд с 7
ELECTRONIX ©2004-2016