Programación Específica > Programación en C
Programar En C...
Huguen_aus_Tirol:
Hola! Nuevamente yo...
Bueno, quiero ponerme un poco a programar en C, pero hasta ahora siempre lo he hecho en asembler.
Hace un tiempo me baje el demo de Microchip, y escribí algo de código muy simple, que corrió en un 18F; pero al complicarlo un poco la cosa ya no funcionó :angry:
Se que hay varios compiladores dando vuelta, y ese es el problema: cuál de ellos conviene? Posiblemente el de Microchip sea el mejor, por lógica...
También veo que hay compiladores solo para los 16F; creo que conviene tener uno que soporte también los 18F.
Si alguién tiene algunos programitas de ejemplo, o sabe de algún link, o cualquier cosa, le estoy enormemente agradecido. En especial en lo que se refiere al manejo de los periféricos (AD, timers, etc...)
Bueno, desde ya las gracias a todos!
© Jonathan ©:
Bueno, yo estoy en lo mismo, me parece mas simple y no seria malo saber por si acaso. En el FTP deje un manual que estoy leyendo en este momento.. todo lo que creas que sea util te invito a que lo coloques en el FTP, o dejes los links y yo me hago cargo. Gracias :)
Manual C para PIC
J1M:
Pues yo programo en CCS, no tendreis problemas en encontrar la version 3.221 (la ultima...y con pozima mágica de invulnerabilidad jejejej) claro q si lo vais a usar con fines comerciales, y en ningun caso educativos...en la página de ccs podeis adquirirlo ;)
El C18 de Microchip tb es muy potente, por experiencia (de una año hacia aká), encontrareis mas ejemplos, y librerias ya creadas para el CCS
Salu2!
Huguen_aus_Tirol:
Hola! Navegando por la red encontré lo siguiente:
http://www.picant.com/c2c/c.html
Pude bajar un compilador C de esta dirección, que se integra al MPLAB y soporta los 16F y los 18F. Lo acabo de instalar sin problemas; pero ahora estoy sin saber para donde ir :( .
Tengo abierto el manual que bajé del ftp de solo código, y está interesante... pero sigo ahí.
Quiero empezar a probar con el 16F873, ya que me es más familiar que el 18F452.
Bueno, espero que el link sea útil; y si alguien tiene algún ejemplito como para empezar, será bienvenido! :)
Saludos!
Huguen_aus_Tirol:
Hola! Estuve practicando con el compilador C que bajé, y despacito está yendo :)
Viendo que nadie tiene ejemplos, aqui les dejo algo tonto que conseguí hacer, y funciona! :D
Es un pequeño programita para escribir en un CD4094; la cuestión es que con la poca información que tengo (el manual que dejó Jonathan, que está muy útil, y el help del compilador) pude hacer esto. Me llevó algo de tiempo, pero estoy aprendiendo... Bueno, espero que le sea útil a quien se esté inciando.
Ah, el programa lo cargo en un 16F873.
Saludos y gracias por la ayuda! :)
/* PROGRAMA DE PRUEBA
Hugo Erhard
12.03.2005
*/
#include <system.h>
#pragma DATA 0x2007, 0x3D31;
char zaehler94;
/*
Rutina para escritura de un byte en un CD4094
RA1 -> strobe
RA2 -> datos
RA3 -> clock
*/
void schreib_4094( char date )
{
char i;
i = 0;
while( i < 8 ) //son 8 bits a escribir
{
if ( date & 0x01 ) //es el bit0 = 1?
set_bit( porta, 2 ); //si, saco un 1
else
clear_bit( porta, 2 ); //no, saco un 0
set_bit( porta, 3 ); //clockeo
clear_bit( porta, 3 );
date = date >> 1; //y preparo para sacar proximo bit
i += 1; //incremento contador de bits a sacar
}
set_bit( porta, 1 ); //doy pulso de strobe para confirmar
clear_bit( porta, 1 );
}
void main()
{
trisa = 00000001b;
trisb = 00000000b;
trisc = 01011001b;
zaehler94 = 0; //inicio contador en 0
while(1)
{
set_bit( porta,4 ); //apago led
delay_s( 1 ); //espero 1 segundo
clear_bit( porta,4 ); //enciendo led
delay_s( 1 ); //espero 1 segundo
schreib_4094( zaehler94 ); //escribo el 4094
zaehler94 += 1; //incremento valor a escribir en el 4094
}
}</li>
Navegación
[#] Página Siguiente
Ir a la versión completa