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

 
 
> Как обратиться к значению директивы EQU, из c-модуля к EQU, описанному в *.s
yurmala
сообщение Sep 9 2011, 05:02
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 65
Регистрация: 9-02-11
Из: Трехгорный
Пользователь №: 62 814



В startup.s описана директива:
Код
SW_VER          EQU     0x01000001

Можно ли из основной программы обратиться к этому значению?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
aaarrr
сообщение Sep 9 2011, 07:59
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Под EQU память не выделяется, соответственно, extern int сработать бы не должен.
А вот DCD (в т.ч. с инициализацией через EQU) точно можно будет "зацепить" снаружи.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Sep 9 2011, 10:39
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (aaarrr @ Sep 9 2011, 10:59) *
Под EQU память не выделяется, соответственно, extern int сработать бы не должен.
Да, прошляпил это как-то. Тогда так:
CODE
test.c:

extern int SW_VER;
void test()
{
  printf("version: %x", (int)&SW_VER);
}



--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post



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

 


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


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