TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: black_flowers en 15 de Julio de 2007, 14:33:20
-
otra duda que tengo (esta vez con el ccs) es: Veo que al principio del fichero de cabecera (16f84a.h por ejemplo) se definen los símbolos entre ellos los pines de los puertos así:
#define PIN_A0 40
...
Pero no entiendo cómo funciona esto exactamente ya que el PORTA está en la dirección 0x05 es decir en la dirección 5 (en decimal) y no 40 como define para el pin 0 del PORTA.
¿qué explicación hay?
SALUDO.S!! :D :-) :D :-)
-
En la ayuda de ccs te ponen el porque se ese numero leelo:
Pins are defined in the devices .h file. The actual value is a bit address. For example, port a (byte 5) bit 3 would have a value of 5*8+3 or 43. This is defined as follows: #define PIN_A3 43. The PIN could also be a variable. The variable must have a value equal to one of the constants (like PIN_A1) to work properly. The tristate register is updated unless the FAST_I0 mode is set on port A. Note that doing I/0 with a variable instead of a constant will take much longer time.
-
gracias, por tu ayuda jdaniels, era una simple curiosidad, para entender mejor el compilador..
saludos.
-
Hola,
tambien puedes ponerlo de la siguiente forma
#byte portb = 0x06
#bit P1 = portb.0
con lo que mapeas en PIN_B0 y le pones el nombre que quieras, asi es mas intuitivo en tus aplicaciones