|
Помогите разобратся вот ниже программа. Выдает ошибку на строках где использую структуру???
/*Программа "Кибернетического планетохода"*/ #define SCK RB2 //Вывод левой кнопки /*Слово конфигурации микроконтроллера*/ &LVPDIS); struct code void init(void); /*Подпрограмма инициализации микроконтроллера*/ void main () /*Основная программа*/ } void init(void) /*Подпрограмма инициализации микроконтроллера*/ уровни уровни data.flag=TRUE;
E-mail:
info@telesys.ru
#include
#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
{
char flag;
unsigned char byte;
};
void pause(unsigned int); /*Подпрограмма обеспечивающая паузы*/
struct code SPI( struct code);
{
struct code data,tmp;
unsigned char temp;
temp=0;
init(); //Инициализируем процессор
tmp=SPI(data);
{
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
if( data.byte==0) SO=1;else SO=0;
while(SCK==0 && TMR0
else data.byte|0b11111110;
if(TMR0>END)
{
data.flag=FALSE;
return data;
}
}while(--bits);
return data;
}
Ответы