Ir ao conteúdo
  • Cadastre-se

DANIEL BALBINO

Membro Júnior
  • Posts

    5
  • Cadastrado em

  • Última visita

posts postados por DANIEL BALBINO

  1. Boa tarde pessoal!!, queria saber se tem como enviar um dado(entrada analógia) pelo pic 12f675 através do transmissor RF433MHz???, consegui emular uma serial nele e já fiz a comunicação dele com outro pic(16f877a) via serial com um baud rate de 2400,mas quando coloco o kit(transmissor/receptor) como meio de transmissão da um bug que trava a informação que vai para o lcd.

     

    Alguém poderia me dar uma luz de como fazer isso??, se é possivel com o 12f675 e como eu implementaria essa rotina no CCS?

     

     

    Abraços, e um feliz ano novo!!

  2. O codigo foi esse no 12F675

     

    #include <12f675.h>
    #device adc=10
    #use delay(clock=4000000)
    #fuses  INTRC_IO,NOWDT, noprotect
    #use rs232(baud=9600, xmit=PIN_A2,rcv=PIN_A3,bits=8)
     
     
     
    float tensão;
     
    long int tensao1;
     
     
    void main()
    {
       setup_adc_ports(AN0_ANALOG|AN1_ANALOG);
       setup_adc(ADC_CLOCK_INTERNAL);  
       
       while(true)
        {
          set_adc_channel(0);
          delay_ms(100);
          tensão= (5.0/1024)* read_adc()*20;  
          tensao1=tensão*100;
          printf("\r\n%c",tensao1);
          
          output_high(PIN_A4);
          delay_ms(100);
          output_low(PIN_A4);
          delay_ms(100);       
         
          
      
              }
              
    }
     
    NO RECEPTOR QUE É O 16F877A FOI:
     
    #include <16f877a.h>
    #device ADC=10
    #use delay(clock=8000000)
    #USE RS232(baud=9600, xmit=PIN_C6, rcv=PIN_C7,bits=8)
     
    #fuses HS,NOWDT,BROWNOUT,PUT,NOLVP
     
    #include "LCD4B.c"
     
     
     
     
     
    float   tensão, ad0;
    char dado[7];
     
    #int_rda
     void rda_isr()
     
    {
            dado[0]=getchar();
            dado[1]=getchar();
            dado[2]=getchar();
            dado[3]=getchar(); 
            
            
          
    }
     
    void main()
       {
                      
          
           enable_interrupts(global);
           enable_interrupts(int_rda);
           
          setup_adc_ports(AN0_AN1_AN3);
          setup_ADC(ADC_CLOCK_DIV_8);    
          
          lcd_ini();
          delay_ms(200);
       
           printf(lcd_escreve,"PIC16F877A");
           printf(lcd_escreve,"\rPROJETO VERSAO 00");
           delay_ms(200);      
       
          
        
     
     while(true)
           {      
               
                                                      
             set_adc_channel(0);
             delay_us(100);
             ad0=read_adc();
             tensão=5*ad0/1024;
             tensão=tensão*20; 
             
             
             printf(lcd_escreve,"\fTENSAO=%fV\r\n",tensão); 
             printf(lcd_escreve,"COR=%c%c.%c%c",dado[0],dado[1],dado[2],dado[3]); //Nessa parte que recebe a informação fica com uns caracteres zuados variando(mostrando que ele está recebendo alguma informação) quando manda para o LCD,mas no PROTEUS imprime normalmente e qualquer outro programa o LCD imprime as duas linhas mostrando que o problema não e no hardware do LCD.valeu!!!! //  
            
           
                    
               delay_ms(300);
              
                
                   
               
               }
            
               
           }
           

    O hardware A PRINCIPIO ESTA OK MAS MESMO ASSIM NÃO PEGA E NO CASO DO OSCILADOR INTERNO COLOQUEI OUTROS DOIS PICS12F675 PARA TESTAR E NADA TAMBÉM.

     

    NO PROTEUS ESTA RODANDO TUDO LEGAL MAS quando LIGO O TX DO 12F AO RX DO 16F COMEÇA A LOUCURA!!

     

     

    valeu pela força pessoal!!!, ABRAÇOS!!!!


    @MatheusLPS

     

    @Isadora Ferraz

     

    @Fervolt

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!