данные, инициализируется вот так:
static sensor_device_ctx_t m_dev_ctx;
Хочу добиться того, что при софт ресете значения сохранятся (софт ресет не трогает РАМ память). Очевидный подход это объявлять структуру как указатель на какое-то место в памяти, но такой подход выглядит очень ненадёжным и хрупким))
Есть какие-нибудь более изощренные способы? Ничего в голову не приходит)
а что будет с глобал структурой в куче?
хорошего ничего :) Вывод нефиг ее туда пихать)
так я перепутал. Куча у нас динамическая. Что будет прост с глобал объявленной структурой то? В сегменте данных же лежит
Если ты ее в ноинит положешь секцию и она не объявлена как Статик, то с ней всю будет ок и прошлое содержимое сохранится
Я вот этот момент не знал, надо почитать
Ну да, если не использовать noinit и прагмы
интересная тонкость У меня глобал так же лежит, но она не статичная.
если мы говорим о .data or .bss то да, а вот на счет секций с маркером NOLOAD будет же скипнута их начальная инициализация.
Обсуждают сегодня