Помогите найти ошибку в структуре HT-PICC ???
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

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

Отправлено mapic 29 сентября 2004 г. 18:05

Помогите разобратся вот ниже программа. Выдает ошибку на строках где использую структуру???

/*Программа "Кибернетического планетохода"*/
#include

#define SCK RB2 //Вывод левой кнопки
#define SI RB1 //Вывод правой кнопки
#define led RB0 //Вывод светодиода
#define SO RB0
#define END 0
#define TRUE 1
#define FALSE 0

/*Слово конфигурации микроконтроллера*/
__CONFIG (INTIO &DATUNPROT &UNPROTECT &BOREN &MCLREN &PWRTEN &WDTDIS

&LVPDIS);

struct code
{
char flag;
unsigned char byte;
};

void init(void); /*Подпрограмма инициализации микроконтроллера*/
void pause(unsigned int); /*Подпрограмма обеспечивающая паузы*/
struct code SPI( struct code);

void main () /*Основная программа*/
{
struct code data,tmp;
unsigned char temp;
temp=0;
init(); //Инициализируем процессор
tmp=SPI(data);

}

void init(void) /*Подпрограмма инициализации микроконтроллера*/
{
CMCON=0xff; //Выключаем модуль компаратора
TRISB=0b00110001; //Задаем направление работы порта В
PORTB=0b00000000; //Устанавливаем необходимыелогические

уровни
TRISA=0xff; //Задаем направление работы порта В
PORTA=0b00000000; //Устанавливаем необходимыелогические

уровни
OPTION=0b0000000; //Устанавливаем предделитель TMR0 1:256
INTCON=0b01000000; //Розрешаем прерывание от TMR0
PIE1=0b00000001;
T1CON=0b00110001;
led=1;

}


struct code SPI(struct code data)
{
unsigned char bits;
bits=8;
do
{
while(SCK==1 && TMR0 data.byte=data.byte&0x80;
if( data.byte==0) SO=1;else SO=0;
while(SCK==0 && TMR0 if(SI==1) data.byte|0x01;
else data.byte|0b11111110;
if(TMR0>END)
{
data.flag=FALSE;
return data;
}
}while(--bits);

data.flag=TRUE;
return data;
}

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

Ответы



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

E-mail: info@telesys.ru