Привет всем. Пишу проект в CCSv6 под msp430f6721 (32к FLASH, 2к RAM) оптимизация отключена.
никак не могу разобраться, где посмотреть как лежат в памяти мои переменные.
Смотрю map-файл - в нем есть секции .bss, .data, .stack. Со стеком все понятно. в .data лежит список из нескольких файлов в формате *.obj:

CODE
.data 0 00002052 0000001a UNINITIALIZED
00002052 00000008 sensor_service.obj (.data)
0000205a 00000007 adc.obj (.data)
00002061 00000001 hci.obj (.data)
00002062 00000006 ble.obj (.data)
00002068 00000004 main.obj (.data)


я так понимаю, это использование памяти автоматическими и/или статическими переменными, расположенными внутри функций в соответствующих файлах. окей, смотрим содержимое main.c:
есть внутри main() переменная uint32_t systick_old, больше там никаких переменных не создается. 4 байта. подходит. Далее смотрим adc.c. там переменных внутри ф-ций побольше:
static uint8_t adc_cnt;
static uint32_t adc_total;
uint8_t voltage;
uint8_t percents;
static uint8_t voltage_old;
получается 8 байт. все эти переменные используются. похоже, на счет того, что лежит в области .data я ошибаюсь. что же там лежит? это первый вопрос

в области .bss вероятно лежат глобальные переменные (если я ошибаюсь - скажите)

второй вопрос: как увидеть нормальный map-файл, где видно занимаемый объем памяти каждой переменной? допустим у меня есть глобальная переменная systick, в map-файле указано, где она лежит, но не указано, сколько занимает. с мелкими переменными в своем коде все просто. а если где-то в недрах библиотеки какой-то буфер жрет кучу памяти, как его найти в .map?

и третий вопрос. есть в CCS вкладка memory allocation, которая показывает, сколько памяти занимается. там указан объем используемой RAM == 1212 байт и FLASH == 10726 байт.
Когда же я захожу в дебаг, в консоли написано:
Loading complete. There were 10726 (code) and 48 (data) bytes written to FLASH/FRAM. The expected RAM usage is 1822 (uninitialized data + stack) bytes.

Отчего так разрослась используемая область RAM? где глянуть что ее сожрало? (в дебаге CIO отключено)