TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: Leon Pic en 27 de Noviembre de 2007, 00:50:37
-
Aquí les dejo un tutorial muy bueno para iniciarce en el lenguaje C en CASTELLANO. Lo obtuve del foro de www.forosdeelectronica.com
Curso de programación en C. (http://mihd.net/o62k4v)
Buen provecho :mrgreen: :mrgreen:
-
No puedo descargarlo, León.
Cuando pulso en tu link, me aparece la página de Mihd con un "Request Downlad link" y, al pulsar sobre el mismo se convierte en "Download file" pero ya no hay link.
-
Entonces tienes que darle a Dowload file
-
¿Pero te sale algún botón o algún link en la pantalla "Download file"?
-
Deben Darle Request Download y despues con el boton derecho DOWNLOAD DETAILS elegir el lugar donde lo va a descargar en tu pc sino se te abre directamente :-)
-
Ahora ya lo he conseguido, muchas gracias.
León, ¿es de libre distribución ese documento?
-
Aqui os dejo tambien un Tutorial en C. MPLAB y diverso material en Español
Que aproveche :D
http://myfileshare1.4shared.com/
-
Ahora ya lo he conseguido, muchas gracias.
León, ¿es de libre distribución ese documento?
Yo pedí permiso en el foro anteriormente citado por lo que no hay problema http://www.forosdeelectronica.com/about18115.html&highlight=
En el pdf no hay nombre de autor, por lo que interpreto que lo hiso un forero de ese sitio, pero si lo consederan una violación, pues, borro el tema
-
adjunto un tutorial ce ccs en castellano...espero le ayude
-
:-/
Gracias por compartirlo.
Feliz Navidad a todos!
-
Hola, que tal....Estoy nueva programando en C, y quisiera saber por favor unas cositas... :-/
1.) Para habilitar un puerto tengo que irme al banco donde se encuentra, darle valor al tris y todo eso, como se hacía en asembler? imagino que si, pero como declaro esto?? y en donde? en La cabecera? cuando vaya a usar el puerto?? :?
2.) Para asignarle un valor a un registro, por ejemplo al INTCON2 (18F4550), como lo hago en C??, en asembler o.k, se haria moviendo un valor a w y luego este al registro... pero en C como lo hago??
Bueno por ahora esas son las únicas duditas que tngo.... Dee antemano gracias,...
Atte: Enigma... La llanerita de Guayana :-)
-
Llanerita, asumiento que tus preguntas son sobre el C de CCS, aquí van un par de comentarios:
1.) Para habilitar un puerto tengo que irme al banco donde se encuentra, darle valor al tris y todo eso, como se hacía en asembler? imagino que si, pero como declaro esto?? y en donde? en La cabecera? cuando vaya a usar el puerto?? :?
No tienes que hacer nada de eso. Tú haces OUTPUT_B(x); y el compilador se encargará automáticamente de setear los TRIS y de poner en tu puerto B el valor X. Obviamente este comportamiento es el que tiene por defecto, y puede ser modificado según la configuración que utilices en tu programa, pero no entraré en más detalles ahora para no liarte.
2.) Para asignarle un valor a un registro, por ejemplo al INTCON2 (18F4550), como lo hago en C??, en asembler o.k, se haria moviendo un valor a w y luego este al registro... pero en C como lo hago??
Puedes declarar el registro al principio de tu programa con:
#byte INTCON2 0xFF1
Luego para asignar un valor es tan sencillo como:
INTCON2=x;
De todas maneras, si lo haces así, será porque sigues pensando en Assembler. En CCS existen comandos de alto nivel que permiten setear las opciones de configuración del micro sin que tengas que preocuparte por los bits en los registros. Por ejemplo, en INTCON2 tienes bits para activar las pullups del portb y determinar el flanco de las interrupciones externas. Esto lo puedes hacer así:
ext_int_edge( nº interrupción , L_TO_H o H_TO_L);
port_b_pullups(TRUE o FALSE)
-
Hola, gracias Nocturno por responder a mis interrogantes... Pues si es C del CCS....
De todas maneras, si lo haces así, será porque sigues pensando en Assembler. En CCS existen comandos de alto nivel que permiten setear las opciones de configuración del micro sin que tengas que preocuparte por los bits en los registros.
Pues si es eso, todavia sigo pensando en asembler, como no conozco esos "atajos" de C, y no hay ninguna lista que te diga como declarar, por lo menos los registros, sino más bien que estos se aprenden sobre la marcha.... pues, se me hace un poco dificultoso....
Creo que por ahorita mientras aprendo pues lo haré a patica!!! :D ..haciendo esto:
Puedes declarar el registro al principio de tu programa con:
#byte INTCON2 0xFF1
Luego para asignar un valor es tan sencillo como:
INTCON2=x;
Es que no me se, por los menos esos atajos como el de las resistencias pull - ups!!!! :(
Atte: Enigma... La llanerita de Guayana :-)
-
otras 2 pregunticas----
No tienes que hacer nada de eso. Tú haces OUTPUT_B(x); y el compilador se encargará automáticamente de setear los TRIS y de poner en tu puerto B el valor X. Obviamente este comportamiento es el que tiene por defecto, y puede ser modificado según la configuración que utilices en tu programa, pero no entraré en más detalles ahora para no liarte.
1.) Si por lo menos yo quisiera colocar 4 bits del puerto como entradas y los que restan como salidas....???... allí si tengo que configuarar el tris????
2.) por lo menos si quiero usar un lazo de If, y quiero preguntar por el bit de un puerto...? por ejemplo el bit 3 del puerto B? como escribo eso en la sentencia...???
if(???? =1); que escribo?? ......... así If(puerto_b,3=1); ????
Atte: Enigma... La llanerita de Guayana :-)