dimone 0 22 июня, 2017 Опубликовано 22 июня, 2017 (изменено) · Жалоба Использую STM32L152VBT6A , при попытке откатится к его "предшественнику" STM32L152VBT6 , обнаружились проблемы с записью во внутреннюю ЕЕPRОМ, а точнее оказалось, что стирание\запись слова (32) бит происходит нормально, но полуслово или байт вешают шину намертво. Понижение частот, эксклюзивный доступ из критической секции, выравнивание памяти -не помогает.. Хоть программа и сдефайнена на STM32L152VBT6,на STM32L152VBT6A всё нормально, а на искомом обращение в HAL_StatusTypeDef HAL_FLASHEx_DATAEEPROM_Erase(uint32_t TypeErase, uint32_t Address) *(__IO uint32_t *) Address = 0x00000000; // -работает...... *(__IO uint16_t *) Address = (uint16_t)0x0000; // *(__IO uint8_t *) Address = (uint8_t)0x00; // -HEТ!! Подскажите пожалуйста, куда копать .. UPD: -поборол, выравнивание по границе слов -таки помогает! т.е. расход ЕЕПРОМа увеличился соответственно П.С. может кто-то подскажет, почему ВЕЗДЕ (дигикей, маузер, т.д. и даже у китайских подрядчиков) пропали STM32L152VBT6A? Изменено 22 июня, 2017 пользователем dimone Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Forger 26 22 июня, 2017 Опубликовано 22 июня, 2017 · Жалоба Подскажите пожалуйста, куда копать .. Для начала копнуть "потроха" этой самой HAL_FLASHEx_DATAEEPROM_Erase, Возможно, поможет покуривание родных даташиты с соотв. ерратами, на оба камня. П.С. может кто-то подскажет, почему ВЕЗДЕ (дигикей, маузер, т.д. и даже у китайских подрядчиков) пропали STM32L152VBT6A? Разобрали с той же целью как и топовые видяхи - для майнинга биткоинов Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться