|
STM8S EEPROM надо ли ждать EOP флага после записи 1 байта? |
|
|
|
Jun 22 2017, 11:24
|

I WANT TO BELIEVE
     
Группа: Свой
Сообщений: 2 617
Регистрация: 9-03-08
Пользователь №: 35 751

|
Мне надо записывать два байта подряд(т.е. 16ти битную переменную) У меня stm8s003, у которого судя по даташиту нет read-while-write (RWW) capability. В документации сказано Цитата Devices without RWW capability: The application stops for the duration of the byte program operation. Это означает, что я могу не проверять EOP флаг? И программировать хоть все 128 байт в цикле? Я пробовал проверять этот флаг и иногда программа на этом цикле ожидания виснет....А иногда проскакивает. Что очень странно. Без цикла ожидания работает, но как-то на душе не спокойно.... В исходниках STDLib от ST ожидания EOP тоже нет, но на душе всё равно не спокойно )))))
--------------------
The truth is out there...
|
|
|
|
|
 |
Ответов
|
Jun 27 2017, 19:25
|
Знающий
   
Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250

|
SPL не пользуюсь. DUL проверяю, как и пишут в даташите. Потом пишу данные и жду EOP. Все по даташиту. Работает нормально, ничего не зависает. Насчет сторожевого пса: читайте внимательно даташит, а не кривые коды SPL. Тем паче, SPL для STM8 — это ж вообще дикость какая-то! Там же RM'а того — полтысячи страниц всего. Когда мне понадобился сторожевой таймер, взлетело с первой попытки — потому как по даташиту делаю.
|
|
|
|
|
Jun 27 2017, 20:19
|

фанат дивана
     
Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684

|
Цитата(Эдди @ Jun 28 2017, 00:25)  SPL не пользуюсь. DUL проверяю, как и пишут в даташите. Ну кто ж так проверяет?  Код if(!(FLASH_IAPSR & 0x08)) return 0; По-хорошему, тут нужен цикл. Ваш код работает только за счёт тормознутости sdcc. (Или за счёт того, что разблокировка производится только один раз при старте программы).
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
|
Jun 28 2017, 05:32
|
Знающий
   
Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250

|
Цитата(AHTOXA @ Jun 27 2017, 23:19)  Ну кто ж так проверяет?  По-хорошему, тут нужен цикл. Согласен. За 1-2 такта МК может и не успеть нужный флаг выставить. Нужно немножко подождать. Пример, кстати, я дурацкий привел: во всех этих вольтметрах EEPROM использовался лишь на стадии отладки (и то, в одном каком-то), и дальше этот код тупо копировался, без реального использования. Здесь уже более осмысленное использование: в EEPROM сохраняется ROM-код обнаруженных термодатчиков.
|
|
|
|
Сообщений в этой теме
sigmaN STM8S EEPROM надо ли ждать EOP флага после записи 1 байта? Jun 22 2017, 11:24 AHTOXA Я проверял, зависаний не было. Работал с STM8S105,... Jun 22 2017, 19:04 sigmaN Ощинь странная история. Лаадно, будем тестирвать..... Jun 22 2017, 20:06 AHTOXA Цитата(sigmaN @ Jun 22 2017, 16:24) В исх... Jun 23 2017, 07:21 sigmaN У меня глюки и так и так. Я правда в функции запис... Jun 23 2017, 08:53 sigmaN Оставил ожидание, но с частым снятием/установкой з... Jun 25 2017, 08:45 AHTOXA А пауза после разлочки/залочки не спасает? Jun 25 2017, 15:36 sigmaN Не пробовал, должна по идее спасать. Забил я на эт... Jun 25 2017, 20:46 sigmaN Хотел на дискавэри для уточнения всех ньюансов еще... Jun 26 2017, 09:54 AHTOXA Я чего-то такого и ждал. У STM такое часто бывает.... Jun 26 2017, 10:38 sigmaN Неа, не проверяют. Я ж туда в первую очередь и по... Jun 27 2017, 14:18 sigmaN Цитатавзлетело с первой попытки — потому как по да... Jun 27 2017, 20:08 sigmaN Цитатаразблокировка производится только один раз п... Jun 27 2017, 20:34 AHTOXA Цитата(sigmaN @ Jun 28 2017, 01:34) Так н... Jun 28 2017, 06:29 Эдди Строчка 45 из того файла (почему-то неправильно сс... Jun 28 2017, 08:23 AHTOXA А, точно. Проглядел. Jun 28 2017, 09:23 sigmaN Лочится ниже это да, но DUL всё равно не ожидается... Jun 28 2017, 19:13 Эдди Да я ж говорю, плохой пример привел (в "1-wir... Jun 29 2017, 05:30 sigmaN ЦитатаА while там нельзя Так тогда и на EOP while ... Jun 29 2017, 09:22 VladislavS Цитата(sigmaN @ Jun 29 2017, 12:22) Так т... Jul 30 2017, 07:42 sigmaN Вы не дочитали исходники немного, есть процы с Rea... Jul 30 2017, 10:28 VladislavS Всё с точностью до наоборот. Проц без RWW останавл... Jul 30 2017, 16:15 sigmaN Код/**
* @brief Wait for a Flash operation to c... Jul 31 2017, 09:40 jcxz Цитата(sigmaN @ Jul 31 2017, 12:40) Кажет... Jul 31 2017, 09:55 VladislavS Цитата(sigmaN @ Jul 31 2017, 12:40) Кажет... Jul 31 2017, 11:18 sigmaN Да нет там особого зоопарка. Есть только RWW и не-... Jul 31 2017, 12:57
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|