Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

народ подскажите, как обойти ошибку, извиняюсь что может быть повторяюсь.

Отправлено sKWO 13 апреля 2008 г. 14:24


Добрый день!
Просто переопределения нигде не вижу, понимаю что чтото с включением файлов, пытался экстернить
но не помогло.
Error[e27]: Entry "EN" in module driver_lcd ( C:\Program Files\IAR Systems\test\testlsd\Debug\Obj\driver_lcd.r90 )
redefined in module main ( C:\Program Files\IAR Systems\test\testlsd\Debug\Obj\main.r90 )
ИАР версия 4.хх.
имею след код
файл bitdef.h
#ifndef BITDEF_H
#define BITDEF_H
#ifndef BOOL_t
#define BOOL_t
typedef uint8_t bool_t;
#endif // BOOL_t
#ifndef BitStr_t
#define BitStr_t
typedef volatile uint8_t * port_t;
typedef struct{
port_t Port;
bool_t Bit;
}Port_Bit;
#endif // BitStr_t
#pragma inline=forced
void SETDDR(const Port_Bit * pb){
*(pb->Port-1) |= 1 << pb->Bit;
}
#endif //BITDEF_H
файл driver_lcd.c
#ifndef driver_lcd_C
#define driver_lcd_C
#include "driver_lcd.h"
#include "delay.h"
// Команда на настройку выводов управления линиями управления ЖКИ на выход
void lcd_CMND_port_out(void) {
SETDDR(RW);\
SETDDR(EN);\
SETDDR(RS);\
};
#endif //driver_lcd_C
файл driver_lcd.h
#ifndef driver_lcd_H
#define driver_lcd_H
#include "bitdef.h"
// "E" Clock
Port_Bit dEN={&PORTB, 3};
const Port_Bit * EN = &dEN;
void lcd_CMND_port_out(void);
#endif //driver_lcd_H
Подключал, к маин файл driver_lcd.c, всё окей, но правда так неправильно. Надо как-то с помощью квалификатора екстерн, но бля не доганяняю. Кому не тяжело, подскажите


Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
поделите шесть пополам:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru