Autor Tema: Cursillo en C18 para PICS DESDE CERO  (Leído 300403 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #120 en: 27 de Julio de 2007, 14:32:59 »
ah entonces tambien se podria en el 18f2525 para seguir con el hilo del cursillo en C18.
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5490
    • Electrónica Didacta
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #121 en: 27 de Julio de 2007, 16:12:37 »
jeje cierto cierto, se me olvidó ese detallito, que es C18  8)

Henry me estas tentando a usar ese compilador...  :lol:
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #122 en: 27 de Julio de 2007, 17:41:57 »
pues terminamos con los demás perifericos y vemos ese bootloader.  :mrgreen:
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado electronando

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 427
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #123 en: 28 de Julio de 2007, 12:37:58 »
me parece interesante aca henry ya nos puso en bandeja casi todo lo necesario para empezara a trabajar por ejemplo con los modulos ad q se usan bastante en aplicaciones en la industria, y de alli para su almacenamiento seria pan comido pues tenemos ejemplos para eeprom externa ,reloj en tiempo real, comunicacion con pc ya esta casi todo solo para juntar, faltaria ver solo la emision de datos en punto flotante por ejemplo en lcd o serial cosa q no creo sea tan compleja , pero estariamos mas cerca a desarrollar rutinas de control retroalimentadas por ejemplo , creo q alli se sentiria mas el poder de estos micros y la migracion a los dspic , q muchos aun no empezamos seria mas suave , gracias de nuevo por tu aporte Henry.

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #124 en: 28 de Julio de 2007, 12:42:23 »
 :mrgreen: hay una parte que no entiendo ...
Citar
pero estariamos mas cerca a desarrollar rutinas de control retroalimentadas por ejemplo ,

como es eso de retroalimentadas?

PD: feliz dia PERU
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado electronando

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 427
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #125 en: 28 de Julio de 2007, 13:02:24 »
la verdad no se pero suena bien jaja, me referia a rutinas de control digital por ejemplo filtros digitales q es una ecuacion en diferencias y que se pueden aplicar por ejemplo para control de velocidad de motores en el que necesitamos por ejemplo hacer una m,ultiplicacion con punto flotante y luego sumar varios resultados en una sumatoria cosa q con el pic 16f se podria pero solo para procesos lentos como temperatura , en si me referia para que se entienda poder desarrollar un filtro digital jaja como digo l de retroalimentado suena bien cool.

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #126 en: 28 de Julio de 2007, 13:22:33 »
seeeeeeeeeeeeee
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado Deivison

  • PIC10
  • *
  • Mensajes: 7
HELLP
« Respuesta #127 en: 01 de Agosto de 2007, 19:48:04 »
 :( :( :( :( :( :(


olha estou com uma duvida se o micro controlador que estou usando esta queimado, pois tudo o que eu tento fazer não funciona, vou falar o que tenho que faze para ligar o LED

1º primeiro fazer um include contendo o biblioteca do PIC no caso "p18f258.h".
2º depois determinar o clock do meu oscilador, falar que ele e do tipo XT.
3º depois se eu for usar delay usar a biblioteca dele que e "delays.h".
4º iniciar o programa usando o void main.
5º declarar que os portos B sÃo de saída.
6º declarar que um determinado pino esta recebendo "0".
7º fazer um while para que o programa fique executando infinitamente.
8º dentro do while fazer o pino receber "1" que significa que ele vai emitir uma corrente pelo pino que eu determinei, e "0" que determina o que nÃo vai sair corrente alguma onde eu determinei.
9º usa um contador ou delay para que a execução espere um tempo ou seja depois de ligar e desligar ele fique esperando um tempo para que ele faça outra coisa.

10º fim do programa.

ESTE EO CODIGO QUE AGORA ESTOU USANDO



#include <p18f258.h>
#include <delays.h>
#include <stdio.h>

#pragma config OSC    = XT,  OSCS = ON      // Configura oscilador para tipo xt
#pragma config PWRT   = ON                 //
#pragma config BOR    = OFF, BORV  = 45    // Desabilita Reset externo
#pragma config WDT    = OFF, WDTPS = 128   // Desabilita Watchdog
#pragma config LVP    = OFF                // Desabilita reset por 72ms (Temporizador de inicialização)
#pragma config DEBUG  = OFF                // ???
#pragma config STVR   = OFF                // ???
#pragma config WRTC   = OFF                // ???
#pragma config CPB    = ON                 // ???
#pragma config CP0    = ON, CP1 = ON,CP2 = ON,CP3 = ON   // ???
#pragma config CPD    = OFF                              // ???
#pragma config WRT0   = ON, WRT1 = ON,WRT2 = ON, WRT3 = ON  // ???
#pragma config WRTB   = ON                // ???
#pragma config WRTD   = OFF               // ???
#pragma config EBTR0  = ON, EBTR1 = ON,EBTR2 = ON, EBTR3 = ON   // ???
#pragma config EBTRB  = ON                // ???


void main(void){
 TRISA = 0X00;  // Configura os pinos como saida
 TRISB = 0X00;
 TRISC = 0X00;
  while(1){
   
   Delay1KTCYx(100); //1000 mseg
    LATA = 0X01; // Coloca o pino A1 a "0"
    LATB = 0X01;
    LATC = 0X01;
   Delay1KTCYx(100); //1000 mseg
    LATA = 0X00; // Coloca o pino A1 a "1"
    LATB = 0X00;
    LATC = 0X00;
   Delay1KTCYx(100); //1000 mseg
     
 }
}



Problema!!! o MPLAB nÃo aceita "#use delay(clock = 40000000)" entÃo eu estava tentando usar outro gravador para mais nÃo achei nem um que ajudasse a grava via porta SERIAL isso ou USB isso na placa que eu falei antes.

Segundo antes quando eu gravava pelo MPLAB sem configurara o clock do oscilador todas as pernas do PIC estÃo saindo mais ou menos 4,5V e eu alimento com 5V, no caso de todos os códigos que eu tentei nÃo consegui restringir nada
no PIC e ate agora a única coisa que eu tenho certeza e que eu nÃo to conseguindo fazer nada do que eu quero com ele e já tem muito tempo que estou com ele.

se alguem tiver duvida sobre o circuito me manda um email ai eu mando o circuito!

por favor me ajudem não tenho  mais a que recorrer.!!!

Desconectado Deivison

  • PIC10
  • *
  • Mensajes: 7
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #128 en: 01 de Agosto de 2007, 19:56:02 »

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #129 en: 01 de Agosto de 2007, 23:31:29 »
hola,
#use delay(clock = 40 000 000) ,esta directiva pertenece al CCS, no al C18, es por eso que el MPLAB C18 sale Error.

#pragma config OSC    = XT,  OSCS = OFF
hay que dejar el OSCS en OFF porque estarias habilitabdo el switcheo entre el xtal común del pic y otro colocado en lso pines del oscilador externo del timer1.

luego,
Delay1KTCYx(100); //1000 mseg = 1segundo?
estas trabajando con 40Mhz? #use delay(clock = 40 000 000)?

4 * 1000 * 100 * 1 = 10 m Seg , crees poder ver un led parpadeando o flasheando a 10 milisegundos?
40 000 000            100

yo creo que no. por ahi puede esatr tus errores. saludos!
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado Deivison

  • PIC10
  • *
  • Mensajes: 7
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #130 en: 02 de Agosto de 2007, 16:31:28 »
pelo o que eu tenho visto quando você descreve o oscilador como do tipo XT ele determina a frequencia do oscilador.
no caso eu tenho usado um oscilador de 4MHZ.

Para conseguir ligar um LED as configurações que estou sando como o MPLAB estão corretas?

e já tentei usar o CCS mas ele não grava em PIC18F258.


Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #131 en: 02 de Agosto de 2007, 16:37:28 »
4MHz ? bueno.. cambia el 40 000 000 por 4 000 000 nomas y listo.
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado Deivison

  • PIC10
  • *
  • Mensajes: 7
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #132 en: 02 de Agosto de 2007, 17:18:05 »
to querendo saber se as configurações que eu fiz no MPLAB estão corretas!
Eu não sei! como posso fazer para saber se as configurações que estou fazendo estão corretas!

onde estiver com simbolo ??? se você souber o que é me fala pois eu não sei!


#pragma config OSC    = XT,  OSCS = ON      // Configura oscilador para tipo xt
#pragma config PWRT   = ON                 //
#pragma config BOR    = OFF, BORV  = 45    // Desabilita Reset externo
#pragma config WDT    = OFF, WDTPS = 128   // Desabilita Watchdog
#pragma config LVP    = OFF                // Desabilita reset por 72ms (Temporizador de inicialização)
#pragma config DEBUG  = OFF                // ???
#pragma config STVR   = OFF                // ???
#pragma config WRTC   = OFF                // ???
#pragma config CPB    = ON                 // ???
#pragma config CP0    = ON, CP1 = ON,CP2 = ON,CP3 = ON   // ???
#pragma config CPD    = OFF                              // ???
#pragma config WRT0   = ON, WRT1 = ON,WRT2 = ON, WRT3 = ON  // ???
#pragma config WRTB   = ON                // ???
#pragma config WRTD   = OFF               // ???
#pragma config EBTR0  = ON, EBTR1 = ON,EBTR2 = ON, EBTR3 = ON   // ???
#pragma config EBTRB  = ON                // ???

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #133 en: 02 de Agosto de 2007, 17:54:15 »
añap bueno lo de los bits de configuraciones lo puedes sacar del datasheet del mismo pic, del archivo helpconfig que esta en la carpeta DOC de tu mplabC18, y del mismo mplab en la opcion Configure >> Configurations bits.
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Cursillo en C18 para PICS DESDE CERO
« Respuesta #134 en: 03 de Agosto de 2007, 15:17:15 »
de lo que me mandastes al correo


puedo ver que tu led lo estas colocando en el pin 27 que corresponde al RB6 del pic, y en tu programa solo oscilas los bits RA0 RB0 RC0, entonces como esperas que ese led oscile?

aca te mando el archivo corriendo y simulado. todo a 4MHz.

#include <p18f258.h>
#include <delays.h>
//#include <stdio.h >

#pragma config OSC    = XT,  OSCS = OFF      // Configura oscilador para tipo xt
#pragma config PWRT   = ON                 //
#pragma config BOR    = OFF, BORV  = 45    // Desabilita Reset externo
#pragma config WDT    = OFF, WDTPS = 128   // Desabilita Watchdog
#pragma config LVP    = OFF                // Desabilita reset por 72ms (Temporizador de inicialização)
#pragma config DEBUG  = OFF                // ???
#pragma config STVR   = OFF                // ???
#pragma config WRTC   = OFF                // ???
#pragma config CPB    = ON                 // ???
#pragma config CP0    = ON, CP1 = ON,CP2 = ON,CP3 = ON   // ???
#pragma config CPD    = OFF                              // ???
#pragma config WRT0   = ON, WRT1 = ON,WRT2 = ON, WRT3 = ON  // ???
#pragma config WRTB   = ON                // ???
#pragma config WRTD   = OFF               // ???
#pragma config EBTR0  = ON, EBTR1 = ON,EBTR2 = ON, EBTR3 = ON   // ???
#pragma config EBTRB  = ON                // ???

void main(void)
{
 TRISA = 0X00;  // Configura os pinos como saida
 TRISB = 0X00;
 TRISC = 0X00;

  while(1)
  {
    LATA = 0X01; // Coloca o pino A0 a "1"
    LATB = 0X01; // Coloca o pino B0 a "1"
    LATC = 0X01; // Coloca o pino C0 a "1"
   Delay10KTCYx(100); //1000 mseg
    LATA = 0X00; // Coloca o pino A0 a "0"
    LATB = 0X00; // Coloca o pino B0 a "0"
    LATC = 0X00; // Coloca o pino C0 a "0"
   Delay10KTCYx(100); //1000 mseg
  }
}
« Última modificación: 03 de Agosto de 2007, 18:04:19 por micro_cadaver »
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com