Autor Tema: programar pic18f452 con c18  (Leído 3129 veces)

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

Desconectado gotdemets

  • PIC10
  • *
  • Mensajes: 4
programar pic18f452 con c18
« en: 22 de Febrero de 2006, 12:54:00 »
Hola que tal, estoy empezando a utilizar el pic18f452 y quisiera saber algunas cosas sobre programacion con el compilador c18, ya me di cuenta que a nadie le gusta este compilador, pero si alguien sabe utilizarlo pues la agradeceria me diera uns ejemplos o algo por el estilo. Lo necesito para mi proyecto de titulacion y lo que voy a utilizar son los timer como contador, comunicacion serial, interrupciones, el watchdog, y configurarlo para que entre en modo sleep. Por favor les agradeceria mucho si me ayudaran.

Desconectado grouchy

  • PIC10
  • *
  • Mensajes: 39
RE: programar pic18f452 con c18
« Respuesta #1 en: 23 de Febrero de 2006, 11:03:00 »
Escrito originalmente por gotdemets
Hola que tal, estoy empezando a utilizar el pic18f452 y quisiera saber algunas cosas sobre programacion con el compilador c18, ya me di cuenta que a nadie le gusta este compilador, pero si alguien sabe utilizarlo pues la agradeceria me diera uns ejemplos o algo por el estilo. Lo necesito para mi proyecto de titulacion y lo que voy a utilizar son los timer como contador, comunicacion serial, interrupciones, el watchdog, y configurarlo para que entre en modo sleep. Por favor les agradeceria mucho si me ayudaran.


Hola.
Bueno he ocupado el compilador C18, sin embargo, prefiero el CCS, porque pues ya me acostumbre al IDE para windows.
Sin embargo sigue siendo programación en C. lo unico que cambia son algunas directivas y/o instrucciones, pero son muy parecidos. busca el Tutorial para C18, te puede ser de gran ayuda para comenzar a utlizar este compilador, inclusive viene con algunos ejemplos sencillos para que te hagas una idea de como se ocupa......
Intenta hacer tu primer programa con los timers y si tienes problemas, pues escribes y te podemos hechar una mano......................
la guia esta en http://ww1.microchip.com/downloads/en/devicedoc/mplab_c18_users_guide_51288j.pdf

Desconectado gotdemets

  • PIC10
  • *
  • Mensajes: 4
RE: programar pic18f452 con c18
« Respuesta #2 en: 27 de Febrero de 2006, 21:12:00 »
gracias mi grouchy, bueno pues ya con la informacion que he buscado y lo que he practicado ya pude utilizar los timers, ahora quisiera entrar al tema de la comunicacion serial, necesito mandar datos desde el micro hasta una computadora pero aun no se como. Tal vez alguien podria ayudarme con las configuraciones del pic, que conexiones debo utilizar, como configurar el cable, etc, etc. no importa que sean ejemplos con el compilador ccs, de todos modos dicen que es muy parecido, con que pueda apreciar la configuracion de los registros es mas que suficiente. Gracias

Desconectado microcarsil

  • PIC10
  • *
  • Mensajes: 44
RE: programar pic18f452 con c18
« Respuesta #3 en: 28 de Febrero de 2006, 00:33:00 »
Escrito originalmente por gotdemets
gracias mi grouchy, bueno pues ya con la informacion que he buscado y lo que he practicado ya pude utilizar los timers, ahora quisiera entrar al tema de la comunicacion serial, necesito mandar datos desde el micro hasta una computadora pero aun no se como. Tal vez alguien podria ayudarme con las configuraciones del pic, que conexiones debo utilizar, como configurar el cable, etc, etc. no importa que sean ejemplos con el compilador ccs, de todos modos dicen que es muy parecido, con que pueda apreciar la configuracion de los registros es mas que suficiente. Gracias


Hola gotdemets aqui tienes lo necesario para comunicarte con el pc por rs232 eleborado por el maestro RedPic Rebotado

http://miarroba.com/foros/ver.php?foroid=46840&temaid=4679539

Aqui otros ejemplos más:

http://miarroba.com/foros/ver.php?foroid=46840&temaid=4683700
Microcarsil

Desconectado nyquist2

  • PIC10
  • *
  • Mensajes: 19
RE: programar pic18f452 con c18
« Respuesta #4 en: 28 de Febrero de 2006, 11:19:00 »
Hola,

Yo estoy usando el 18F452 con el C18 (me manejo con el entorno del MPLAB). Te cuento q para modificar cualquier registro, me fijo en la hoja de datos el nombre, la funcion de cada bit y solo me resta  ponerlo de cualquiera de las siguientes formas:
TRISA = 0b0001111;
TRISA = 15;
TRISA = 0x0F;
Si deseo solo modificar un bit del registro:
INTCONbits.GIE=1;
donde la "formula" seria:
NOMBREDELREGISTRObits.NOMBREDELBIT=
Esta forma la vas a entender mejor si revisas el archivo p18f452.h (es el header del pic, que lo tenes q incluir en el programa)

A continuacion te mando un pedazo de codigo q utilizo para inicializar mis programas:

void set()            //Setea el micro
{
   TRISC = 0b10001000;    //PORTC como serie, entradas y salidas
   SPBRG = 15;      //configuro el serie a 9600 baudios
   RCSTA = 0b10000000;      
   TXSTA = 0b00000100;
   PORTC = 0;
   RCONbits.IPEN=0;      //disable priority levels, el vector es 0x08
   INTCONbits.GIE=1;      //habilita interrupciones
   INTCONbits.TMR0IE=1;   //habilita el overflow del timer0
   T0CON= 0b00010111;   //timer0 de 16bits, con prescaler de 256, apagado
   TMR0L=0;         //reseteo el timer
   TMR0H=0;   

            //PUERTOS DE PRUEBA
      ADCON1 = 0b11110110;      //PORTA y PORTE como I/O digital xxxx011x
   TRISA = 0b0001111;   //PORTA como entrada (a0...a3)
   TRISD = 0x0;      //PORTD como salida (d4....d7)
   PORTD = 0x0;      
}


Te recomiendo q primero leas el manual (aunq reconozco q puede llegar a ser tedioso) para entender como funciona y q registros tenes q manejar.

Suerte, Nyquist.

Desconectado gotdemets

  • PIC10
  • *
  • Mensajes: 4
RE: programar pic18f452 con c18
« Respuesta #5 en: 28 de Febrero de 2006, 16:07:00 »
muchas gracias por sus respuestas. Oye nyquist ya que estas trabajando con el pic18f452 en mplab, quisiera saber si tu manejas el modo sleep y el watchdog, ya que tambien necesitar usarlos, si tienes algunos ejemplos de los que tu tienes pues te agradeceria los pusieras. Yo por mi parte si estoy investigando en el manual, pero que mejor que tener un ejemplo como base para empezar. Si tienes algunos otros ejemplos de cualquier otra funcion pues te lo agradeceria tambien. Muchas gracias.