Beruflich Dokumente
Kultur Dokumente
El compilador mikroBasic PRO for PIC instalado en la PC, incluye una lista de los microcontroladores PIC soportados, con todos los registros, sus direcciones exactas y los nombres de bits. El compilador le permite acceder a los bits individuales de estos registros por sus nombres, sin especificar sus posiciones (el compilador ya las conoce). Hay muchas formas de acceder y modificar a un bit individual dentro de un registro. Por ejemplo, vamos a acceder al bit GIE (Global Interrupt Enable - Habilitacin global de interrupciones) por ejemplo. Es el sptimo bit del registro INTCON. A este bit se le puede acceder por su nombre, al escribir lo siguiente:
INTCON.B0 = 0 ' Poner a cero el bit 0 del registro INTCON ADCON0.5 = 1 ' Poner a uno el bit 5 del registro ADCON0 i = 5 STATUS.(i+1) = 1 ' Poner a uno el bit 6 del registro STATUS
Por fin, a un bit deseado se le puede acceder al utilizar un nombre alias. En este caso, es el GIE_bit:
dim Nombre_de_bit as sbit at Nombre_de_registro.Posicin_de_bit program MyProgram ' Mdulo principal ... dim Output1 as sbit at PORTB.0 ' Variable Output1 es de tipo sbit ... Output1 = 1 ' Pin del puerto PORTB.0 est a uno (5V)
Si una variable de tipo sbit no est definida en el mismo mdulo donde se utiliza, la palabra clave external debe ser utilizada. Adems, el especificador de memoria apropiado se debe aadir:
dim nombre_de_bit as sbit sfr external module MyModule ' Esto no es el mdulo principal y el bit Output1 ... ' no est definido aqu dim Output1 as sbit sfr external ... Output1 = 1 ' Pin PORTB.0 (definido en el ejemplo anterior como Output1) est a uno (5V)
TIPO BIT
El compilador mikroBasic PRO for PIC proporciona un tipo de dato bit que se puede utilizar para declarar las variables.
dim bf as bit
A diferencia de variables de tipo sbit, solo el nombre de bit est declarado aqu, mientras que el compilador almacena una variable bit en algunos de los registros libres de la RAM. Como se puede ver, no es necesario especificar un bit de algn registro especfico. La localidad exacta de la variable de tipo bit es desconocida al usuario.
No pueden ser utilizados para las listas de argumentos y como valores devueltos de funciones No pueden ser utilizados como un miembro de estructuras No pueden ser utilizados como elementos de matrices No pueden ser inicializados No se puede apuntar a ellos Sus direcciones no se pueden leer, por eso el operador unitario @ no se puede utilizar con variable de este tipo
dim ptr as ^bit ' invlido dim arr as array[5] of bit ' invlido