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

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

Создание библиотек в CodeVision2

Отправлено maxik_k 18 марта 2009, г. 13:00


Кто знает в чем причина? вроде все делаю по хелпу,но при компиляции ругается:
Error: c:\cvavr2\inc\My_74HC595.h(17), included from: define.h: declaration syntax error
Содержание файла My_74HC595.h:

/* 74HC595 driver routines
CodeVisionAVR C Compiler
Для работы должны быть определены, для примера
#define port_74hc595 PORTD
#define data_74hc595 PD0
#define shift_74hc595 PD1
#define out_74hc595 PD2
*/
/****************************************/
#ifndef _My_74HC595_INCLUDED_
#define _My_74HC595_INCLUDED_
#pragma used+
//объявление ф-й
void Out_74HC595_8bit(u08 data_reg); // для передачи 1 байт
#pragma used-
#pragma library My_74HC595.lib
#endif


Содержание файла My_74HC595.lib:
/* 74HC595 driver routines
CodeVisionAVR C Compiler
*/
//подпрограмма работы с сдвиговым регистром 74HC595
//передача одного байта
//должны быть определены выводы:
// - port_74hc595 - port подключения регистра
// - data_74hc595 - линия данных
// - shift_74hc595 - сигнал сдвига (по переднему фронту)
// - out_74hc595 - разрешение передачи на выход (по переднему фронту)
//Вход: unsigned char shift_reg - байт для передачи
u08 Out_74HC595_8bit(u08 data_reg)
{
register u08 temp_sreg=SREG; //сохранение регистра состояния
register u08 i;
for (i=0; i<8; i++)
{
data_reg<<=1; //сдвиг очередного бита в перенос с заполнением 0 левых битов
//выдача выдвинутого бита на линию data
if (SREG & 0x01) { port_74hc595.data_74hc595=1; }
else { port_74hc595.data_74hc595=0; }
#asm ("nop")
#asm ("nop")
// формируем сигнал сдвига
port_74hc595.shift_74hc595=1;
port_74hc595.shift_74hc595=0;
}
//формирование импульса для передачи данных на выход
port_74hc595.out_74hc595=1; port_74hc595.out_74hc595=0;
SREG=temp_sreg;
}



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

Ответы


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

Сообщение:

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

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

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

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