Compartelo en facebook

Menú del sitio
Noticias
Inicio » Artículos » Electrónica » Microcontroladores

Tutorial Protón IDE
El PROTON PLUS IDE es un entorno de programación basado en un BASIC estructurado orientado a entrada y salida de señales. La utilización de sencillas instrucciones de alto nivel, permite programar los Microcontroladores para controlar cualquier aplicación llevada a cabo por un proceso. Las instrucciones de PBASIC PROTON PLUS IDE permiten controlar las líneas de (entrada /salida), realizar temporizaciones, realizar trasmisiones serie asincrónica, utilizar el protocolo SPI, programar pantallas LCD, capturar señales analógicas, emitir sonidos, etc. y todo ello en un sencillo entorno de programación que facilita la creación de estructuras condicionales y repetitivas con instrucciones como IF...THEN o FOR...NEXT y la creación de etiquetas de referencia.

Algunas aplicaciones de los Microcontroladores

La única limitante de los Microcontroladores es su imaginación. La facilidad de un puerto abierto de (entrada / salida), la capacidad de evaluación de señales para luego decidir una acción y poder controlar dispositivos externos. Hacen que el microcontrolador sea el cerebro de los equipos. Estos son algunos ejemplos de áreas de aplicaciones:

• Electrónica Industrial (Automatizaciones)
• Comunicaciones e interfase con otros equipos (RS-232)
• Interfase con otros Microcontroladores
• Equipos de Mediciones
• Equipos de Diagnósticos
• Equipos de Adquisición de Datos
• Robótica (Servo mecanismos)
• Proyectos musicales
• Proyectos de Física
• Proyectos donde se requiera automatizar procesos artísticos
• Programación de otros microcontroladores
• Interfase con otros dispositivos de lógica TTL:

1. Teclado
2. Pantallas LCD
3. Protocolo de comunicación: RS232, I2, SPI
4. Sensores
5. Memorias
6. Real Time Clock (RTC)
7. A/D, D/A, Potenciómetros Digitales

E/S de los Microcontroladores

La dirección de entrada y salida de un contacto dado está enteramente bajo el control de su programa. Cuando un contacto es declarado como una entrada de información, tiene muy poco efecto en los circuitos conectados con él, con menos de 1 microamperio (uA) de consumo interno.

Hay dos propósitos para poner un pin en modo de entrada de información: (1) leer en modo pasivo el estado (1 o 0) de un circuito externo, o (2) para desconectar las salidas que manejan el pin. Para que el consumo de corriente sea él más bajo posible, las entradas de información deben siempre estar cerca de +5 voltios o cercano a la tierra. Los pines no utilizados en sus proyectos no se deben dejar libres en modo de entrada. Los pines no usados deben ser declarados como salida aunque no estén conectados; esto es para evitar que las entradas estén interpretando el ruido externo como señales lógicas.

Cuando un pin esta en modo de salida, internamente está conectado a la tierra o +5 voltios a través de un interruptor muy eficiente del circuito CMOS. Si se carga ligeramente (< 1mA), el voltaje de la salida estará dentro de algunos mili voltios cercanos de la fuente de alimentación (tierra para 0; +5V para 1). Cada pin puede manejar unos 25 mA. Pero Cada puerto de 8 pines no debe exceder de los 50 mA con el regulador externo; los pines de RB0 al RB7 conforman un Puerto B de 8 BITS del PIC 16f877A como ejemplo.

Una vez seleccionado el pic con el que se va a trabajar aparecerá en la sección de Code Explorer la carpeta con sus características de operación obteniendo información cuando se abre la carpeta del pic seleccionado esto es aplicable para todos.

Device 16F877A
Device 16F84A
Device 18F2550


Configuración del oscilador: Para operar con un oscilador externo se utiliza el comando XTAL=x, siendo x el rango de trabajo del oscilador por ejemplo:

XTAL=4 ; Oscilador de 4 MHZ
XTAL=8 ; Oscilador de 8 MHZ


Definición de salidas: Se utiliza el comando Symbol precedido del alias y del pin del pic a utilizar por ejemplo:

Symbol LED=PORTD.0
Symbol SW1 = PORTB.4

Retardos: Esta función realiza retardos según el número de ciclos de instrucción especificado en los valores posibles van desde 1 a 255. Un ciclo de instrucción es igual a cuatro periodos de reloj.

DelayMS time

Esta función realiza retardos del valor especificado en time. Dicho valor de tiempo es en milisegundos y el rango es 0-65535 sirve para obtener retardos más largos así como retardos ‘variables’.

Ejemplos:

DelayMS 500 ' Esperar 500ms
DelayMS 1000 ' Esperar 1segundo


DelayUS time

Esta función realiza retardos del valor especificado en time. Dicho valor es en microsegundos y el rango va desde 0 a 65535.

Ejemplos:

DelayUS 500 ' Esperar 500Us
DelayUS 1000 ' Esperar 1ms

High: Sirve para colocar el pin a uno lógico es decir en ON, ejemplo:

High LED
High PORTD.0

LOW: Sirve para colocar el pin a uno cero lógicos es decir en OFF, Ejemplo:


Low LED
Low PORTD.0


GoTo: comando para crear un bucle cerrado y continuación del programa

Nuestro primer programa quedaria asi:
titilar un led por el puerto D del pic 16f877A cada 500 msg

Device 16F877A
XTAL=4 ; Oscilador de 4 MHZ
Symbol LED=PORTD.0
INICIO:
High LED
DelayMS 500
Low LED
DelayMS 500
GoTo INICIO

Bien vamos con el segundo proyecto en proton con el comando:

ALL_DIGITAL = True ' Coloca todo los pines como digitales

tambien de utilizan los condicionales de pbp IF , THEN , ELSE , ENDIF

IF ...THEN
IF Comp { AND/OR Comp ... } THEN Label
IF Comp { AND/OR Comp ... } THEN
Declaración
ELSE
Declaración
ENDIF

Efectúa una ó más comparaciones .Cada término Comp puede relacionar una variable con una constante ú otra variable e incluye uno de los operadores listados anteriormente .


IF ... THEN evalúa la comparación en términos de CIERTO o FALSO .Si lo considera cierto , se ejecuta la operación posterior al THEN . Si lo considera falso , no se ejecuta la operación posterior al THEN .Las comparaciones que dan 0 se consideran falso .Cualquier otro valor es cierto .Asegurese de usar paréntesis para especificar el orden en que se deben realizar las operaciones .De otra manera , la prioridad de los operadores lo determina y el resultado puede no ser el esperado .

IF..THEN puede operar de dos maneras. De una forma, el THEN en un IF..THEN es esencialmente un
GOTO. Si la condición es cierta, el programa irá hacia la etiqueta que sigue al THEN. Si la condición es falsa, el programa va a continuar hacia la próxima línea después del IF..THEN. Otra declaración no puede ser puesta después del THEN; sino que debe ser una etiqueta.

If LED = 1 Then alarma

‘ si el LED esta a uno logico(1), salta a la etiqueta alarma

En la segunda forma, IF..THEN puede ejecutar condicionalmente un grupo de declaraciones que sigan al THEN. Las declaraciones deben estar seguidas por un ELSE o un ENDIF para completar la estructura.

If LED_1 = 0 Then ' Chequea estado del Led
LED_1 = 1 'Invierte estado del Led
Else
LED_1 = 0
EndIf

si el valor de LED no es cero logico entonces establecer y terminar el concicional .

Operaciones lógicas básicas

Existen 3 operaciones lógicas llamadas: AND, OR y NOT.

1. AND esta función es verdadera cuando todas sus entradas son verdaderas. Y es falso cuando cualquiera de sus entradas son falsas. Se interpreta como la multiplicación binaria.
2. OR esta función es falsa cuando todas sus entradas son falsas. Y es verdadera cuando cualquiera de sus entradas sea verdadera. Se interpreta como la suma binaria.
3. NOT es la negación del resultado si es verdadero lo convierte en falso. Si es falso lo convierte en verdadero.

Estas son las 3 operaciones fundamentales en la lógica binaria, a partir de estas funciones se derivan otras más que son las combinaciones de las 3 funciones básicas.

Formato de conversión numérica del PROTON PLUS IDE

El editor PROTON PLUS IDE utiliza símbolos para identificar los distintos sistemas numéricos. Los números hexadecimales se representan con el signo de moneda ($), los números binarios con el símbolo de porcentaje (%), los caracteres ASCII encerrados entre comillas (") y los números decimales de forma directa. Vea el siguiente ejemplo:

75 ‘Decimal
%01001 ‘Binario
$65 ‘Hexadecimal
"A” ‘ASCII "

Las 3 instrucciones siguientes contienen el mismo significado:

PORTB = 14
PORTB = $E
PORTB = %1110

Manejo de lcd con proton plus ide

Device = 16F877
XTAL = 4
LCD_DTPIN = PORTD.4
LCD_RSPIN = PORTD.2
LCD_ENPIN = PORTD.3
LCD_INTERFACE = 4
LCD_LINES = 2
LCD_TYPE = 0
ALL_DIGITAL = True

DelayMS 150
Cls

Main:

Print At 1,1, "TUTO PROTON PLUS"

While 1=1
Wend

CONFIGURACION OSCILADOR EXTERNO EN PIC BASIC DEL PIC 16F88

El primer paso es elegir en PIC SIMULATOR IDE, desde el menú "Opciones" -> "Select Microcontroller", el microcontrolador PIC16F88. Luego, debemos configurar los bits correspondientes. Lo destacable por ahora de esta configuración es que estamos dejando la memoria (FLASH y EEPROM) sin protección, que el pin RESET se va a comportar como I/O y que usaremos como oscilador el oscilador interno INTRC. En el caso que nos atañe utilizaremos el oscilador interno de este PIC ya que es muy completo y estable. Cuando digo completo es porque nos permite trabajar a varias frecuencias distintas entre ellas a 4Mhz y 8Mhz. Y lo mismo que para el WDT, hay que terminar de configurarlo desde nuestro código fuente.

REGISTRO PARA CONFIGURAR OSCILADOR INTERNO DEL PIC 16f88

Para configurar la frecuencia de trabajo del Oscilador Interno del PIC 16f88 solo hay que cambiar los bits 4, 5 y 6 del registro OSCCON. Se deben cambiar los bits que corresponden por el valor al que se quiera hacer trabajar al oscilador interno, por cierto se pueden poner en hex. O en binario (%01000110). Además se tienen que configurar los bits en Options- Configure Bits del PIC simulador ide., y poner que se va a trabajar con el oscilador interno: OSCILLATOR SELECTION: INTOSC. En documento anexo PDF esta la explicación de los Bits del registro OSCCON.

Un ejemplo de un programa de parpadeo de un led, configurando el oscilador interno.

AllDigital
OSCCON = %%01100110 'Se configura reloj interno a 4Mhz
TRISB = 0

inicio:

PORTB.0 = 1
WaitMs 500
PORTB.0 = 0
WaitMs 500

Goto inicio

Eso es todo por ahora.


Fuente: http://www.forosdeelectronica.com/f24/tutorial-manejo-proton-ide-27932/
Categoría: Microcontroladores | Ha añadido: Patariki (2012-08-07) W
Visiones: 8146 | Comentarios: 5 | Tags: microcontrolador, pic, proton IDE, programación, codigo | Ranking: 5.0/1
Total de comentarios: 3
3  
muy facil y entendible

2  
me parece muy importante

1  
facil y muy útil

Solamente los usuarios registrados pueden añadir los comentarios.
[ Registrarse | Entrada ]
Estadística

Total en línea: 1
Invitados: 1
Usuarios: 0
Sponsors



   

Búsqueda
Copyright Patariki © 2017Crear un sitio web gratis con uCoz