[an error occurred while processing this directive]
|
Вопрос задаю потому, что если Вы решили посмотреть значение переменной в ходе отладки, то тут есть маленький глючок Visual DSP++.
Я как-то однажды смотрел в среде Visual DSP++ значения переменной, объявленной в програм мемори. Она у меня отобразилась в окне с заголовком Data memoty. Потом я понял, что это плющит не меня, а Visual DSP++, которая все переменные отображает в окне Data memory. Когда я посмотрел на адрес переменной, то он был из програм мемори, т.е. все хорошо.
Однако если Вы смотрите в mixed mode и там инструкция записи по указателю на програм мемори описана через dm(), то это явно глюк. Тогда не понятно, почему хоть что-то пишется, куда надо (имею в виду старшие 16 бит). Можно чуть подробнее, что за процессор. На Шарке например, проблем с этим у меня не было. Там по дефолту все 32-разрядное (если только специально не захотеть чего-либо другого). Может, дело в том, что програм мемори адресуется в Вашем процессоре не по 32, а по 16 бит?
На всякий случай проверьте, правильно ли Вы описали переменную (я это к тому, что правильно ли стоят примочки pm и dm). В Visual DSP++ войдите в хелп, в раздел "индекс" и наберите pm. Выберите "pm (see dual memory support)" -> "pm (dual memory...)". А затем в правом окне щелкните по ссылке, что в табличке против слова "pm": "For more information, see...". Там увидите примеры использования.
E-mail: info@telesys.ru