реклама на сайте
подробности

 
 
> IAR 7.5 STM32, Ограничения в именах констант?
DmitryTDF
сообщение Jan 24 2017, 15:32
Сообщение #1





Группа: Новичок
Сообщений: 4
Регистрация: 24-01-17
Пользователь №: 95 140



Здравствуйте!
Пишу для STM32F4xx некоторые фрагменты кода на ассемблере. При объявлении в подключаемом файле констант, заметил, что маски по ИЛИ не всегда работают. Например:
Код
...
#define OBJECT_CLASS_PIPE 1 << 16;Класс объекта - канал сообщений
...
#define OBJECT_SUBCLASS_PIPE_BYTE 1 << 24;Субкласс объекта - канал, работающий с байтами
...
#define RE 1;Флаг, символизирующий о том, что буфер пуст
...


Использую в коде:

Код
...
LDR R0,=OBJECT_CLASS_PIPE|OBJECT_SUBCLASS_PIPE_BYTE|RE
...


В отладчике, в результате выполнения инструкции, в R0 оказывается 0x00010000, а должно быть 0x01010001

При перестановке некоторых масок местами:
Код
...
LDR R0,=RE|OBJECT_CLASS_PIPE|OBJECT_SUBCLASS_PIPE_BYTE
...


R0 становится равным 0x00010001, что уже немного лучше, нежели первый результат.
Также заметил, что в случае присвоения этим же константам имен "const1", "const2", "const3" - в регистре R0 оказывается значение 0x01010001, то есть, правильное.

Если кто-то сталкивался с подобным - как боролись?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
AHTOXA
сообщение Jan 24 2017, 15:37
Сообщение #2


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



В скобочки возьмите выражения в define.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
DmitryTDF
сообщение Jan 24 2017, 15:38
Сообщение #3





Группа: Новичок
Сообщений: 4
Регистрация: 24-01-17
Пользователь №: 95 140



Цитата(AHTOXA @ Jan 24 2017, 18:37) *
У вас комментарии тоже попадают в define. Уберите их на другую строку.

Прошу прощения, получилось так, что убрал табуляции, расположенные перед точкой с запятой. На самом деле там есть отступ (в виде табуляций)
Код
...
#define OBJECT_CLASS_PIPE 1 << 16              ;Класс объекта - канал сообщений
...


Сообщение отредактировал DmitryTDF - Jan 24 2017, 15:40
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 9th August 2025 - 11:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.01377 секунд с 7
ELECTRONIX ©2004-2016