Página 1 de 1

Erro MPLAB C30

MensagemEnviado: 12 Mai 2020 19:56
por vtrx
O compilador não aceita a linha abaixo;
Código: Selecionar todos
if(PORTBbits.RB8 == 0){lcd_command(LCD_CLEAR);}


Erro apresentado:main.c:46: error: syntax error before ')' token
Mas o que esta errado??

Re: Erro MPLAB C30

MensagemEnviado: 12 Mai 2020 20:32
por rafael
Tchê, olhando assim não tem nada errado... tem que ver o conteúdo da macro LCD_CLEAR e se o parâmetro de entrada da função eh compatível


Enviado do meu iPhone usando Tapatalk

Re: Erro MPLAB C30

MensagemEnviado: 13 Mai 2020 00:13
por sync
Quebre a linha de

Código: Selecionar todos
if(PORTBbits.RB8 == 0){lcd_command(LCD_CLEAR);}


para

Código: Selecionar todos
if(PORTBbits.RB8 == 0)
{lcd_command(LCD_CLEAR);}


só para ver qual dos dois ")" o compilador encrencou?

Re: Erro MPLAB C30

MensagemEnviado: 13 Mai 2020 15:07
por vtrx
Eu achei o erro,e foi meu...
O compilador não me mostrou qual ')' era o que tinha relação ao erro,mas na verdade era o 'ultimo';
Código: Selecionar todos
LCD_CLEAR

Procurando no .H do mesmo,eu tinha implementado mais um define,que é o LCD_CLEAR,mas eu não digitei esse Define,eu 'copiei e colei' de um trecho de outra parte do código e nesta 'colagem' um intruso foi copiado...
#define LCD_CLEAR 0x01,
O erro de sintaxe era a vírgula....
È engraçado como o compilador lida com isso,ficou um comando limpo(lcd_command(LCD_CLEAR)),mas com erro. :mrgreen:

PS:Eu só descobri o que estava errado,ja que o projeto tem muitos includes,quando alterei o trecho que apresentava erro com lcd_command(0x01),como o erro 'sumiu',fui verificar no Define o que estava errado.

Re: Erro MPLAB C30

MensagemEnviado: 13 Mai 2020 15:50
por rafael
Que bom que tu achou.
Outra coisa, acho que o c30 foi descontinuado.... melhor usar o xc16


Enviado do meu iPhone usando Tapatalk

Re: Erro MPLAB C30

MensagemEnviado: 13 Mai 2020 16:24
por vtrx
rafael escreveu:Que bom que tu achou.
Outra coisa, acho que o c30 foi descontinuado.... melhor usar o xc16


Enviado do meu iPhone usando Tapatalk

Eu uso os dois,mas sempre uso o que gera o código menor ou mais rápido,no meu caso o C30.