Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: C32 вопросы дилетанта
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > PIC
1921
Помогите убогому кто чем может... Набросал тут списочек вопросиков, рою, конечно, параллельно, но языками владею слабо.
1. Как сделать переменную в ОЗУ не инициализируемую (__no_init)
2. Как разместить константу по заданному адресу
3. Как разместить переменную по заданному адресу.
4. Как выделить секцию (блок) в flash памяти, чтобы поместить туда что-то, и чтобы линкер туда больше не пытался ничего засунуть.
5. Как всё-таки правильно установить приоритеты прерываний? У меня получается только вручную - запись в IPC, всё шаманство с записями типа ipl7 не даёт ничего. Может, дело в симуляторе или бесплатном С32?
6. Почему при отработке не сбрасывается автоматически флаг прерывания, и его надо сбрасывать принудительно? Ну прямо ассемблер какой-то? Может, это как-то связано с системами приоритета?
7. Что всё-таки означает ipl7soft - ipl7auto - ipl7srs
8. Почему если написать просто ipl7, то не восстанавливается разрешение локального прерывания на выходе из прерывания
9. Почему программа называется int main(void), а не void main(void)
10. Почему симулятор запросто показывает все неиспользуемые переменные? Потому что он бесплатный и не оптимизирует?
11. Что такое single vector mode и multi vector mode

Таких вопросов ещё огого, но, может, для кого ответы очевидны, напишет мне на русском, так, чтобы понял даже я...

Спасибо, братья!
alekseykoj
В какой среде программируете для этих контроллеров?
1921
Цитата(alekseykoj @ Mar 7 2012, 16:55) *
В какой среде программируете для этих контроллеров?


MPLAB
C32 v.2.02
Иваныч
Цитата(1921 @ Jan 26 2012, 11:02) *
1. Как сделать переменную в ОЗУ не инициализируемую (__no_init)
int BlFlag __attribute__((address(0xA0007000),persistent));
или если не важен адрес переменной
int
BlFlag2 __attribute__((persistent));

Цитата
2. Как разместить константу по заданному адресу
const unsigned int BlFlag __attribute__((address(0xA0007000))) = 0;

Цитата
3. Как разместить переменную по заданному адресу.
unsigned int BlFlag __attribute__((address(0xA0007000))) = 0;
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.