[an error occurred while processing this directive]
Подскажите почему кейл нехочет размещять структуру по абсалютному адресу?????
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
|
Отправлено
kolian 21 декабря 2002 г. 00:44
|
|
|
|
почему такое он допускает
unsigned char idata ClockBuffer[7] _at_ 0x36 ;
а такое нет
idata sDateTime CurrDT _at_ 0x50 ;
Пишет адрес спэйс оверфлоу дата. Но если убираю "_at_ 0x50" то все нормально.Все остальные регистры распределяюца ниже.
Выше описал структуру
typedef struct sDateTime
{ unsigned char Year;//+2000
unsigned char Month;
unsigned char Day;
unsigned char Hour;
unsigned char Min;
unsigned char Sek;
unsigned long Cpr;
} sDateTime;
з.ы. мне это нужно для ассемблерной вставки в один из файлов проекта.
Составить ответ
|||
Конференция
|||
Архив
Ответы
- Единственное примерно верное предположение высказал "дедушка". Остальные несут полную чушь... — New__body (21.12.2002 18:06, 575 байт)
- Вы прежде чем херню говорить прочитайте описание — Elektronik (21.12.2002 21:54, 538 байт)
- Милый, Вы Keil зуб пробовали? "Хотя idata и применима к младшим адресам ОЗУ..." - единственная фраза нормального человека! А повторять ахинею не надо! Если не указать начальный адрес idata как 0x80 в опциях проекта, то Keil, будет лепить переменные idata и в data сегменте! Вопрос-то был не о быстродействии (ему, может, быстродействие не к чему), а Вы человека в заблуждение вводите. Да где угодно можно применять _at_, и в data, idata, pdata, xdata, лишь бы место было в сегменте. — New__body (21.12.2002 22:21, пустое)
- Чего тут думать-то — Elektronik (21.12.2002 17:36, 209 байт)
- 0x50 - это область data и возможно тебе просто не хватает места. Область idata идет c 0х80 , но она есть не на всех 51-х. — ValterG (21.12.2002 13:15, 105 байт)
- скорее всего ты ему заезжаешь прямо в область стека а прибор по умолчанию у тебя 51 наверняка, а там idata тока до 7fh — дедушка (21.12.2002 01:23, пустое)
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
|||
Без кадра
E-mail:
info@telesys.ru