Люди, надоумте(IAR 2.28 ) (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено KSN 03 сентября 2004 г. 15:33

Есть программа, в нескольких файлах. Работаю с внешней ОЗУ на ATMEGA128
В файле "а.с"
#pragma memory=__near
SMBStruct SMB_struct;
DeviceStruct Device_struct;
SMBStruct *SMBData=&SMB_struct;
DeviceStruct *Device=&Device_struct;
#pragma memory=default
void Init_SMBData(void)
{ SMBData->Status= 0;
SMBData->Pult=255;
SMBData->nVL= 255;
SMBData->Data[0]= 0;
SMBData->Data[1]= 0;
SMBData->Data[2]= 0;
}

void Init_Device(void)
{ Device->Query=0;
Device->Status=0;
Device->Length= 0;
Device->Count=0;
Device->ptrData= (unsigned char *)0x0000;
}

В файле "b.c"
void main(void)
{ Init_SMBData();
Init_Device();
}

Проблема: потом вывожу на UART значения элементов структур и вижу, что они не верно проинициализированы. ОЗУ 100% рабочая. В чем дело, не могу допетрить...(Я просто выдернул часть когда, программа огромная и все замечательно работает, но вот эта струкутра, ну ни в какую не хочет инициализироваться верно)

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru