TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: rcg_1982 en 15 de Julio de 2009, 22:00:17

Título: Como hago el Circuito para un PIC 16C54C
Publicado por: rcg_1982 en 15 de Julio de 2009, 22:00:17
espero me puedan ayudar, necesito armar el circuito para este PIC.





Gracias
Título: Re: Como hago el Circuito para un PIC 16C54C
Publicado por: migsantiago en 15 de Julio de 2009, 22:05:31
Hola, para armar un circuito debes tener una aplicación en mente. ¿Qué es lo que le falta a tu circuito?

http://ww1.microchip.com/downloads/en/DeviceDoc/30453d.pdf
Título: Re: Como hago el Circuito para un PIC 16C54C
Publicado por: rcg_1982 en 15 de Julio de 2009, 22:11:44
tengo el PIC pero no cacho como armar el cto. en el datasheet no veo nada.
Título: Re: Como hago el Circuito para un PIC 16C54C
Publicado por: AKENAFAB en 15 de Julio de 2009, 22:55:44

¿Te refieres a lo indispensable pasa que puedas trabajar el pic?

Su fuente de alimentación.Circuito de reloj , de reset , como conectar entradas y salidas ???

Título: Re: Como hago el Circuito para un PIC 16C54C
Publicado por: rcg_1982 en 16 de Julio de 2009, 14:38:53
ok, ya entendi solo conecto la alimentacion,,,, su oscilador y tamos listos....

ahora me ayudan con el programa jejejeje esque hace tiempo que no me meto a programar PIC....

nesecito hacer el siguiente programa tengo dos pulsadores al apretar uno el pic tiene que empezar a tirar pulsos de forma digital incrementando y al apretar el otro hacer que el pic decienda los pulsos....espero me entiendan.


Gracias
Título: Re: Como hago el Circuito para un PIC 16C54C
Publicado por: migsantiago en 16 de Julio de 2009, 15:44:55
Lee los tutoriales del foro. Cuando hayas escrito tu programa se te va a ayudar.
Título: Re: Como hago el Circuito para un PIC 16C54C
Publicado por: MLO__ en 16 de Julio de 2009, 23:15:05
Si ya has programado antes, solo basta desempolvar los viejos y guardados conceptos y listo!!!! en un dia recordaras todo ...
Título: Re: Como hago el Circuito para un PIC 16C54C
Publicado por: rcg_1982 en 17 de Julio de 2009, 15:20:45

//#Include <16c54c.h>
#Include  "C:\Archivos de programa\PICC\Devices\16c54c.h"
//#Include  "C:\Archivos de programa\Microchip\Third Party\PICC\Drivers\stdio.h"   
# use Delay (clock=4000000)
#fuses XT, NOWDT, NOPROTECT, //BROWNOUT, PUT, NOLVP
//unsigned char Dato;

void main(void)         
            {
//setup_adc();

while(TRUE)
   {
   //Dato=getc();
/*
0000=0
0001=1
0010=2
0011=3
0100=4
0101=5
0110=6
0111=7
1000=8
*/
            if(input(PIN_B0)==0)
                 {      
             output_low(pin_B4); //0000
             output_low(pin_B5);
             output_low(pin_B6);
             output_low(pin_B7);
             Delay_ms(100);
             output_high(pin_B4); //0001
             output_low(pin_B5);
             output_low(pin_B6);
             output_low(pin_B7);
             Delay_ms(100);
             output_low(pin_B4); //0010
             output_high(pin_B5);
             output_low(pin_B6);
             output_low(pin_B7);
             Delay_ms(100);
             output_high(pin_B4); //0011
             output_high(pin_B5);
             output_low(pin_B6);
             output_low(pin_B7);
             Delay_ms(100);
             output_low(pin_B4); //0100
             output_low(pin_B5);
             output_high(pin_B6);
             output_low(pin_B7);
             Delay_ms(100);
             output_low(pin_B4); //0101
             output_high(pin_B5);
             output_low(pin_B6);
             output_high(pin_B7);
             Delay_ms(100);   
             output_low(pin_B4); //0110
             output_high(pin_B5);
             output_high(pin_B6);
             output_low(pin_B7);
             Delay_ms(100);   
             output_low(pin_B4); //0111
             output_high(pin_B5);
             output_high(pin_B6);
             output_high(pin_B7);
             Delay_ms(100);
             output_high(pin_B4); //1000
             output_low(pin_B5);
             output_low(pin_B6);
             output_low(pin_B7);
             Delay_ms(100);      
            
            }   
          if(input(PIN_B1)==0)
            {
             output_high(pin_B4);  //1000
             output_low(pin_B5);
             output_low(pin_B6);
             output_low(pin_B7);
             Delay_ms(100);
             output_low(pin_B4); //0111
             output_high(pin_B5);
             output_high(pin_B6);
             output_high(pin_B7);
             Delay_ms(100);
             output_low(pin_B4);  //0110
             output_high(pin_B5);
             output_high(pin_B6);
             output_low(pin_B7);
             Delay_ms(100);
             output_low(pin_B4); //0101
             output_high(pin_B5);
             output_low(pin_B6);
             output_high(pin_B7);
             Delay_ms(100);
             output_low(pin_B4); //0100
             output_high(pin_B5);
             output_low(pin_B6);
             output_low(pin_B7);
             Delay_ms(100);
             output_low(pin_B4); //0011
             output_low(pin_B5);
             output_high(pin_B6);
             output_high(pin_B7);
             Delay_ms(100);   
             output_low(pin_B4); //0010
             output_low(pin_B5);
             output_high(pin_B6);
             output_low(pin_B7);
             Delay_ms(100);   
             output_low(pin_B4); //0001
             output_low(pin_B5);
             output_low(pin_B6);
             output_high(pin_B7);
             Delay_ms(100);
             output_low(pin_B4); //0000
             output_low(pin_B5);
             output_low(pin_B6);
             output_low(pin_B7);
             Delay_ms(100);      
            
            }

         }   
      
      }

 


algo asi se me ocurre.....