-
- у меня в принципе с STM32 нигде нет проблем ни с памятью (как ОЗУ, так и ПЗУ), ни с быстродействием. Вопрос возник только из-за того, что внезапно получился невыровненный массив дял записи во флэшку через FatFS. И в результате файлы больше 500 Лагунов(175 знак., 06.06.2018 17:12)
- У нас с тобой был разговор на эту тему. - il-2(07.06.2018 18:44, ссылка)
- я тогда забил, и больше не попадал. А тут опять. :-) Но вот умные люди показали как принудительно выравнивать. Примерно вотак - Лагунов(695 знак., 08.06.2018 07:14)
- А какая директива должна быть, что бы выровнять элементы массива. Я порылся и для IAR нашел только Sl(69 знак., 06.06.2018 20:07)
- Можно сделать union со своим массивом и uint32_t, к примеру. Обычно uint32_t выравнивается кратно 4, массив автоматически тоже. - SciFi(06.06.2018 20:16)
- #pragma data_alignment = 4 - йцукен(06.06.2018 20:14)
- Невыровненный массив из 500 байт записывался, я из 501 не записывался? Сдаётся мне, дело было не в выравнивании. - йцукен(06.06.2018 19:48)
- думаю, что там еще у меня что-то сидит. Умные люди вот дали ссылку на английском - "FatFS f_write not working Лагунов(3 знак., 07.06.2018 08:26, ссылка)
- Обычно такое бывает когда кривой IO драйвер FatFS не умеет работать с некратными данными, налетал на такое. - Hives(07.06.2018 14:16, )
- думаю, что там еще у меня что-то сидит. Умные люди вот дали ссылку на английском - "FatFS f_write not working Лагунов(3 знак., 07.06.2018 08:26, ссылка)
- Я смотрел, что IAR для Cortex M3 генерит. misyachniy(456 знак., 06.06.2018 19:17)
- А это вообще очень отдельный вопрос. pragma pack в помощь. - Николай Коровин(06.06.2018 18:44)
- У нас с тобой был разговор на эту тему. - il-2(07.06.2018 18:44, ссылка)
- у меня в принципе с STM32 нигде нет проблем ни с памятью (как ОЗУ, так и ПЗУ), ни с быстродействием. Вопрос возник только из-за того, что внезапно получился невыровненный массив дял записи во флэшку через FatFS. И в результате файлы больше 500 Лагунов(175 знак., 06.06.2018 17:12)