Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Структуры в IAR 4.42
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Программирование
shrek
Проблема вот в чем...
Пытаюсь поднять USB на AT91SAM7A3
После обьявления четвертой структуры static const компилятор начал ругатся
Warning[Pe177]: variable "USB_INTERFACE_DESCRIPTOR" was declared but never referenced C:\arm\USB\func_irq.c 96
В чем проблема? или посоветуете поставить поновее?)))
могу привести код всех структур
Код
//---Структура управляющего пакета----------------------------------------------
struct TSetupPacket
     {
     unsigned char       bmRequestType;        //Тип запроса
     unsigned char       bRequest;             //Код запроса
     unsigned char       ValueL;               //Тип дескриптора
     unsigned char       ValueH;               //Индекс дескриптора
     unsigned char       IndexL;               //Номер интерфейса или конечной точки
     unsigned char       IndexH;               //Номер интерфейса или конечной точки
     unsigned char       LengthL;              //Число байт для передачи
     unsigned char       LengthH;              //Число байт для передачи
     } TSetupPacket;

//---Структура дескриптора устройства-------------------------------------------
static const struct USB_DEVICE_DESCRIPTOR
     {
     unsigned char       bLength;              //длина дескриптора
     unsigned char       bDescriptorType;      //тип дескриптора
     unsigned short int  bcdUSBL;              //версия спецификации USB в формате BCD
     unsigned char       bDeviceClass;         //код класса устройства USB
     unsigned char       bDeviceSubclass;      //код подкласса устройства USB
     unsigned char       bDeviceProtocol;      //код протокола USB
     unsigned char       bMaxPacketSize0;      //мах размер нулевой конечной точки
     unsigned short int  idVendor;             //идентификатор изготовителя устройства
     unsigned short int  idProduct;            //идентификатор продукта
     unsigned short int  bcdDevice;            //номер версии устройства в формате BCD
     unsigned char       iManufacture;         //индекс дескриптора строки описывающей  изготовителя
     unsigned char       iProduct;             //индекс дескриптора строки описывающей  продукт
     unsigned char       iSerialNumber;        //индекс дескриптора строки описывающей  серийный номер устройства
     unsigned char       bNumConfigurations;   //количество возможных конфигураций устройства
     } USB_DEVICE_DESCRIPTOR = {0x12, 0x01, 0x0110, 0x02, 0x00, 0x00, 0x08, 0x03EB, 0x6200, 0x0100, 0x00, 0x00, 0x00, 0x01};

//---Структура дескриптора конфигурации-----------------------------------------
static const struct USB_CONFIGURATION_DESCRIPTOR
     {
     unsigned char       bLength;              //длина дескриптора
     unsigned char       bDescriptorType;      //тип дескриптора
     unsigned short int  wTotalLength;         //общий обьем данных, возвращаемых для данной конфигурации
     unsigned char       bNumInterfaces;       //кол-во интерфейсов поддерживаемых данной конфигурацией
     unsigned char       bConfigirationValue;  //идентификатор конфигурации
     unsigned char       iConfiguration;       //индекс дескриптора стороки
     unsigned char       bmAttributes;         //характеристики конфигурации
     unsigned char       MaxPower;             //код мощности, потребляемый устройством
     } USB_CONFIGURATION_DESCRIPTOR;

//---Структура дескриптора интерфейса-------------------------------------------
static const struct USB_INTERFACE_DESCRIPTOR
     {
     unsigned char       bLength;              //Длина дескриптора
     unsigned char       bDescriptorType;      //Тип дескриптора
     unsigned char       bInterfaceNumber;     //Номер данного интерфейса
     unsigned char       bAlternateSetting;    //Альтернативный номер интерфейса
     unsigned char       bNumEndpoints;        //Число конечных точек для интерфейса без 0
     unsigned char       bInterfaceClass;      //Код класса интерфейса
     unsigned char       bInterfaceSubClass;   //Код подкласса интерфейса
     unsigned char       bInterfaceProtocol;   //Код протокола
     unsigned char       iInterface;           //Индекс дескриптора строки
     } USB_INTERFACE_DESCRIPTOR;
MrYuran
Да ничего он не ругается, а просто сообщает, что структура определена, но нигде не используется.
В зависимости от уровня оптимизации может её похерить.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.