Ir ao conteúdo
  • Cadastre-se
fireands

Erro em programa no css

Recommended Posts

Boa Noite, peço ajuda com relação a um programa em c que estou tentando compilar para um pic 12F675 no CCS.O funcionamento do programa consiste em pegar uma determinada variavel char e "desmembra-la" bit a bit porém quando faço a compilação ele mostra um erro que tem a ver com o fato de estar atribuindo um valor a uma constande uma vez qu usei "#define LCD_D   PIN_A0" e dentro do programa estou colocando "LCD_D=(((dado>>contador)&0x1)!=0);".O fato é que estou a muito  tempo sem programar em c e não lembro como devo realizar a atribuição dessa expresão logica ao pino A0.Se alguem puder me dar uma ideia agradeço muito.

 

#INCLUDE <12F675.h> // microcontrolador utilizado
#FUSES  xt, intrc, nowdt, nomclr // configuração dos fusiveis
#USE delay (clock= 4000000) // definindo clock interno em 4Mhz

#DEFINE LCD_E     PIN_A0 // DEFINE PINO LIGADO AO ENABLE DO LCD
#DEFINE LCD_CLK   PIN_A1 // DEFINE PINO LIGADO AO CLOCK DO 4094
#DEFINE LCD_D     PIN_A2 // DEFINE PINO LIGADO AO DADO DO 4094

#DEFINE LCD_E_Dir      TRISIO0
#DEFINE LCD_CLK_Dir    TRISIO1
#DEFINE LCD_D_Dir      TRISIO2

void envia_nibble_lcd(unsigned char dado)
{
  unsigned char contador=0;
  for(contador=0;contador<8;contador++)
  {
   LCD_D=(((dado>>contador)&0x1)!=0); // escreve o nibble bit a bit
   LCD_CLK=1;   // envia um clock
   delay_us(10);
   output_a(LCD_CLK)=0;
   delay_us(10);
   
   return;
  }
}

 

 

 

ERRO AO COMPILAR:Expecting LVALUE such as a variable name or *expression

 

 

 

 

 

 

 

 

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema talvez nao seja seu codigo meu caro, mais uma vez é o CCS, 

Infelizmente o registrador TRISIO nao é definido no header file do microcontrolador, detalhe que de toda ferramenta de desenvolvimento pra micro que você usar essa é a unica que faz essa lambança.

Minha sugestão é que  use a API OutputBit(pino, nivel) para transferir os valores dos bits, escrever direto nas constantes o CCS nao suporta, alias PIC no CCS, voce so acessa os perifericos atraves das APIs, nao existe escrita direta.

Espero que esclareça.

Abs.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×