Pièce jointe « capitulo1d.sgml »
Téléchargement<sect1 id="pinio" xreflabel="pinio"> <title>Módulo IO y manipulación de pines</title> <para> Muestra las funciones para poder trabajar con los pines del PIC.</para> <para> <screen> #include <pinio.h> </screen> </para> <sect2 id="outputhighslow" xreflabel="output_high_slow"> <title>output_high_slow</title> <para> Establece un PIN a un estado alto de voltaje. Verifica el estado del <keycap>tris</keycap>. </para> <screen> void output_high_slow( BYTE puerto, BYTE pin); ejemplo: output_high_slow(PIN_B0); </screen> </sect2> <sect2 id="outputhighfast" xreflabel="output_high_fast"> <title>output_high_fast</title> <para> Establece un PIN a un estado alto de voltaje. No verifica el estado del <keycap>tris</keycap>. </para> <screen> void output_high_fast( BYTE puerto, BYTE pin); ejemplo: output_high_fast(PIN_B0); </screen> </sect2> <sect2 id="outputhigh" xreflabel="output_high"> <title>output_high</title> <para> Establece un PIN a un estado alto de voltaje. La verificación del estado del <keycap>tris</keycap> depende de habilitar el macro SLOW_IO como TRUE o FALSE. </para> <para> Por defecto, si no se escribe <keycap>#define SLOW_IO TRUE</keycap> , SLOW_IO tiene el valor de TRUE. </para> <screen> #define SLOW_IO TRUE void output_high( BYTE puerto, BYTE pin); ejemplo: output_high(PIN_B0); </screen> </sect2> <sect2 id="outputlowslow" xreflabel="output_low_slow"> <title>output_low_slow</title> <para> Establece un PIN a un estado bajo de voltaje. Verifica el estado del <keycap>tris</keycap>. </para> <screen> void output_low_slow( BYTE puerto, BYTE pin); ejemplo: output_low_slow(PIN_B0); </screen> </sect2> <sect2 id="outputlowfast" xreflabel="output_low_fast"> <title>output_low_fast</title> <para> Establece un PIN a un estado bajo de voltaje. No verifica el estado del <keycap>tris</keycap>. </para> <screen> void output_low_fast( BYTE puerto, BYTE pin); ejemplo: output_low_fast(PIN_B0); </screen> </sect2> <sect2 id="outputlow" xreflabel="output_low"> <title>output_low</title> <para> Establece un PIN a un estado bajo de voltaje. La verificación del estado del <keycap>tris</keycap> depende de habilitar el macro SLOW_IO como TRUE o FALSE. </para> <para> Por defecto, si no se escribe <keycap>#define SLOW_IO TRUE</keycap> , SLOW_IO tiene el valor de TRUE. </para> <screen> #define SLOW_IO TRUE void output_low( BYTE puerto, BYTE pin); ejemplo: output_low(PIN_B0); </screen> </sect2> <sect2 id="inputslow" xreflabel="input_slow"> <title>input_slow</title> <para> Devuelve el estado de un pin. puede ser <keycap>1</keycap> o <keycap>0</keycap>. Verifica el estado del <keycap>tris</keycap>. </para> <screen> BYTE input_slow( BYTE puerto, BYTE pin); ejemplo: input_slow(PIN_B1); </screen> </sect2> <sect2 id="inputfast" xreflabel="input_fast"> <title>input_fast</title> <para> Devuelve el estado de un pin. puede ser <keycap>1</keycap> o <keycap>0</keycap>. No verifica el estado del <keycap>tris</keycap>. </para> <screen> BYTE input_fast( BYTE puerto, BYTE pin); ejemplo: input_fast(PIN_B1); </screen> </sect2> <sect2 id="input" xreflabel="input"> <title>input</title> <para> Devuelve el estado de un pin. puede ser <keycap>1</keycap> o <keycap>0</keycap>. La verificación del estado del <keycap>tris</keycap> depende de habilitar el macro SLOW_IO como TRUE o FALSE. </para> <para> Por defecto, si no se escribe <keycap>#define SLOW_IO TRUE</keycap> , SLOW_IO tiene el valor de TRUE. </para> <screen> #define SLOW_IO TRUE BYTE input( BYTE puerto, BYTE pin); ejemplo: input(PIN_B1); </screen> </sect2> <sect2 id="setpintoslow" xreflabel="set_pin_to_slow"> <title>set_pin_to_slow</title> <para>Establece el estado de un pin a <keycap>1</keycap> o <keycap>0</keycap>. Verifica el estado del <keycap>tris</keycap>.</para> <screen> void set_pin_to_slow( BYTE puerto, BYTE pin, BYTE X); ejemplo: set_pin_to_slow(PIN_C1,1);//el pin C1 ahora tiene un estado alto set_pin_to_slow(PIN_C1,0);//el pin C1 ahora tiene un estado bajo </screen> </sect2> <sect2 id="setpintofast" xreflabel="set_pin_to_fast"> <title>set_pin_to_fast</title> <para>Establece el estado de un pin a <keycap>1</keycap> o <keycap>0</keycap>. No verifica el estado del <keycap>tris</keycap>.</para> <screen> void set_pin_to_fast( BYTE puerto, BYTE pin, BYTE X); ejemplo: set_pin_to_fast(PIN_C1,1);//el pin C1 ahora tiene un estado alto set_pin_to_fast(PIN_C1,0);//el pin C1 ahora tiene un estado bajo </screen> </sect2> <sect2 id="setpinto" xreflabel="set_pin_to"> <title>set_pin_to</title> <para> Establece el estado de un pin a <keycap>1</keycap> o <keycap>0</keycap>. </para> <para> La verificación del estado del <keycap>tris</keycap> depende de habilitar el macro SLOW_IO como TRUE o FALSE. </para> <para> Por defecto, si no se escribe <keycap>#define SLOW_IO TRUE</keycap> , SLOW_IO tiene el valor de TRUE. </para> <screen> #define SLOW_IO TRUE void set_pin_to( BYTE puerto, BYTE pin, BYTE X); ejemplo: set_pin_to(PIN_C1,1);//el pin C1 ahora tiene un estado alto set_pin_to(PIN_C1,0);//el pin C1 ahora tiene un estado bajo </screen> </sect2> <sect2 id="setpintristo" xreflabel="set_pin_tris_to"> <title>set_pin_tris_to</title> <para>Establece el TRIS de un pin a <keycap>1</keycap> o <keycap>0</keycap>.</para> <screen> void set_pin_tris_to( BYTE puerto, BYTE pin, BYTE X); ejemplo: set_pin_tris_to(PIN_C1,1);//el TRIS C1 ahora tiene un estado alto set_pin_tris_to(PIN_C1,0);//el TRIS C1 ahora tiene un estado bajo </screen> </sect2> <sect2 id="setportaasdigital" xreflabel="set_porta_as_digital"> <title>set_porta_as_digital</title> <para>Establece el puerto A como DIGITAL.</para> <screen> #define set_porta_as_digital() ADCON1=0x06 ejemplo: set_porta_as_digital(); </screen> </sect2> <sect2 id="setpullupportb" xreflabel="set_pullup_portb"> <title>set_pullup_portb</title> <para>Habilita o deshabilita las resistencias de pull-up del puerto B.</para> <para>Para habilitar las resistencias de pull-up X= 1 o TRUE.</para> <para>Para deshabilitar las resistencias de pull-up X= 0 o FALSE.</para> <screen> void set_pullup_portb(BYTE X); </screen> </sect2> <sect2 id="ejemplopinio" xreflabel="Ejemplo PinIO"> <title>Ejemplo de PinIO</title> <para> Para compilar necesitas los siguientes comandos. </para> <para> <screen> Ejemplo de compilacion : ./compila.sh ej_pinio 16f877a </screen> </para> <para> ej_pinio.c </para> <screen> #include <pic/p16f877a.h> #define FOSC_HZ 20000000 #include <pinio.h> #include <delayms.h> int main (void) { delayms(100); while(TRUE) { delayms(50); output_high(PIN_C2); delayms(50); output_low(PIN_C2); if(input(PIN_A4)==1) output_high(PIN_B7); else output_low (PIN_B7); } return 0; } </screen> </sect2> </sect1>
Fichiers joints
Pour vous référer aux pièces jointes d'une page, utilisez attachment:filename, comme indiqué ci-dessous dans la liste de fichiers. N'utilisez pas l'URL du lien [get], car elle peut changer et donc être facilement cassée.Vous n'êtes pas autorisé à joindre un fichier à cette page.