Tutorial Proton Ide Plus Part 1

Embed Size (px)

Citation preview

TUTORIAL PARA PROGRAMACION EN PROTON IDE PLUS

Qu es un microcontrolador? Es un circuito integrado programable que acepta un listado de instrucciones y contiene todos los componentes de un computador. Se utilizan para realizar determinadas tareas o para gobernar dispositivos, debido a su reducido tamao, suele ir incorporado en el propio dispositivo que gobierna. El microcontrolador es un dispositivo dedicado. En su memoria solo reside un programa destinado a gobernar una aplicacin determinada, sus lneas de entradas y salidas (I/O) permiten la conexin de sensores y relay. Una vez programado y configurado el microcontrolador solamente sirve para gobernar la tarea asignada.

Figura 1.1 Diagrama en bloque de un Microcontrolador

Un microcontrolador dispone normalmente de los siguientes componentes: Procesador o UCP (Unidad Central de Proceso). Memoria RAM para Contener los datos. Memoria para el programa tipo ROM/PROM/EPROM/EEPROM & FLASH. Lneas de (entrada / salida) para comunicarse con el exterior. Diversos mdulos para el control de perifricos (temporizadores, Puertos Serie y Paralelo, A/D y D/A, etc.). Generador de impulsos de reloj que sincronizan el funcionamiento de todo el sistema.

Evidentemente, el corazn del microcontrolador es un microprocesador, pero cabe recordar que el microcontrolador es para una aplicacin concreta y no es universal como el microprocesador. El microcontrolador es en definitiva un circuito integrado que incluye todos los componentes de un computador. Debido a su reducido tamao es posible montar el controlador en el propio dispositivo al que gobierna. En este caso el controlador recibe el nombre de controlador empotrado (embedded controller). Diferencia entre microprocesadores y Microcontroladores? El microprocesador es un circuito integrado que contiene la Unidad Central de Proceso (CPU), tambin llamado procesador, de un computador. El CPU est formado por la Unidad de Control, que interpreta las instrucciones, y el BUS de Datos, que los ejecuta. Los pines de un microprocesador sacan al exterior las lneas de sus buses de direcciones, datos y control, para permitir conectarle con la Memoria y los Mdulos de (ENTRADA / SALIDA) E/S y configurar un computador implementado por varios circuitos integrados. Se dice que un microprocesador es un sistema abierto porque su configuracin es variable de acuerdo con la aplicacin a la que se destine. El microcontrolador es un sistema cerrado. Todas las partes del computador estn contenidas en su interior y slo salen al exterior las lneas que gobiernan los perifricos. Usted podra pensar que las caractersticas de un sistema cerrado representan una desventaja con relacin a los Microprocesadores, pero en la prctica cada fabricante de microcontroladores oferta un elevado nmero de modelos diferentes, desde los ms sencillos hasta los ms poderosos. Es difcil no encontrar uno que se adapte a nuestros requerimientos del momento. Es posible seleccionar la capacidad de las memorias, el nmero de lneas de (ENTRADA / SALIDA) E/S, la cantidad y potencia de los elementos auxiliares, la velocidad de funcionamiento, etc. Por todo ello, un aspecto muy destacado del diseo es la seleccin del microcontrolador a utilizar. Podemos concluir con que la diferencia fundamental entre un Microprocesador y un Microcontrolador: es que el Microprocesador es un sistema abierto con el que se puede

construirse un computador con las caractersticas que se desee, acoplndole los mdulos necesarios. Un Microcontrolador es un sistema cerrado que contiene un computador completo y de presentaciones limitadas que no se pueden modificar. Sistemas numricos Realmente somos educados bajo el sistema numrico decimal. Un numero decimal como 5249 representa una cantidad igual a 5 millares, ms 2 centenas, ms 4 decenas, ms 9 unidades. Los millares, centenas, decenas y unidades, son potencia de 10 implicadas por la posicin de los coeficientes. Para ser ms exactos, 5249 debe escribirse como: 5x103 + 2x102 + 4x101 + 9x100 5x1000 + 2x100 + 4x10 + 9x1 5000 + 200 + 40 + 9 5249 El sistema de nmero decimales se dice que es de base, o raz 10 debido a que usa 10 smbolos y los coeficientes se multiplican por potencia de 10. A parte del sistema decimal existen otros sistemas numricos como son el sistema binario, el sistema octal y el sistema hexadecimal. Realmente los microcontroladores manejan el sistema binario; pero en la programacin el ms conveniente es el hexadecimal y para clculos matemticos el decimal. En la siguiente tabla vea la conversin equivalente entre el sistema decimal, hexadecimal y binario.

El sistema decimal est compuesto por 10 smbolos (09), el sistema hexadecimal est compuesto por 16 smbolos (0-9, A, B, C, D, E, F) y el sistema binario est compuesto por dos smbolos (0-1). Cualquier sistema numrico es infinito, mientras el sistema contenga mayor cantidad de smbolos su representacin ser ms abreviada; como es el caso del sistema hexadecimal. Para convertir de un sistema numrico a otro usted puede auxiliarse de una calculadora cientfica o de la calculadora incluida en el sistema operativo Windows. Los Basic los microcontroladores trabajan con el sistema binario, decimal y hexadecimal. No son necesarias las conversiones de un sistema a otro. Pero sin embargo necesitan un formato de representacin para que el PIC BASIC pueda reconocerlos. Por ejemplo suponga que se tiene el siguiente valor decimal: Mil Ciento Diez (1110): Este valor se puede interpretar: En binario (1110): Decimal 14 En hexadecimal (1110): Decimal 4368 La misma representacin puede interpretarse como 3 valores diferentes. El Basic distingue las cantidades decimales de forma natural y las hexadecimales y binarias por smbolos a la izquierda de la cifra a representar. Lgica Binaria o de 2 estados La lgica binaria trata con variables que toman dos valores distantes y con operaciones que tienen significado lgico. Los dos valores que toman las variables pueden designarse con nombres diferentes (verdadero y falso, si y no, true y false, 0 y 1, etc.), pero para este propsito no es conveniente pensar en trminos de BITS y asignarles los valores de 1 y 0. La lgica binaria se usa para describir, en forma matemtica, la manipulacin y el proceso de la informacin binaria. Existe una analoga directa entre las seales binarias, los elementos de circuito binario y digito binario. Un nmero binario de n dgitos, por ejemplo puede representarse por n elementos de nmeros binarios, cada uno con una seal de salida equivalente a 0 o al 1. Los sistemas digitales representan y manipulan no slo nmeros binarios, sino tambin otro muchos elementos discretos de informacin. Un BIT, por definicin, es un digito binario. Cuando se usa junto con un cdigo binario, es mejor considerarlo como si denotara una cantidad binaria igual a 0 o 1. Para representar un grupo de 2n elementos distintos en un cdigo binario, se requiere un mnimo de n BITS. Esto se debe a que es posible ordenar n BITS en 2n formas distintas. Por ejemplo un grupo de 16 elementos puede representarse mediante un cdigo de 4 BITS. 24 = 16 elementos. Durante todo el contenido de este material usted deber estar familiarizado con los trminos (1) lgico, (0) lgico, seal alta, seal baja, HIGH, LOW, 0 y 1. Cuando se dice que una seal es alta quiere decir que mide +5 Voltios con relacin a tierra, cuando una seal es baja mide +0 Voltios con relacin a tierra. Los BS2 trabajan con

la lgica TTL, esta opera con +5 Voltios como fuente de alimentacin. Las seales se fundamentan entre +0 Voltios y +5 Voltios. Esto es aplicable tanto para las entradas como para las salidas, en la siguiente tabla se puede apreciar los diferentes trminos para referirse a la lgica binaria.

Operaciones lgica bsicas Existen 3 operaciones lgicas llamadas: AND, OR y NOT. 1. AND esta funcin es verdadera cuando todas sus entradas son verdaderas. Y es falso cuando cualquiera de sus entradas es falsa. Se interpreta como la multiplicacin binaria. 2. OR esta funcin 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 negacin del resultado si es verdadero lo convierte en falso. Si es falso lo convierte en verdadero.

Estas son las 3 operaciones fundamentales en la lgica binaria, a partir de estas funciones se derivan otras ms que son las combinaciones de las 3 funciones bsicas.

Software Protn

Ejecute el entorno PROTON haciendo click en el cono creado en el escritorio por el programa de instalacin o a travs del men Inicio\todos los programas\Protn\ProtonDEMO.exe, como aparece en la figura:

Esta es la ventanilla lista para crear los programas en el icono ayuda encontrara todo lo referente a la funcin de cada uno de los iconos.

PROGRAMACION DE MICROCONTROLADORES PIC EN PROTON IDE PLUS

BASIC es un simple y fcil lenguaje de programacin. Tiene slo unas pocas normas y el control de estructuras que definen su gramtica. En este tutorial vamos a aprender acerca de algunos principios bsicos de este gran lenguaje de programacin. Los cdigos presentados aqu no pretenden ser programados en el microcontrolador, como tal, sino que se dan para explicar el tema. Una vez que haya pasado por esta introduccin al lenguaje de BASIC, slo entonces se puede ir a las reas especficas de su inters. Lo que se presenta aqu se repite muchas veces a travs de los siguientes captulos del tutorial. Estructura del programa en Pic Basic Un programa bsico consta de: Programa de cabecera Declaraciones Explicacin de los signos e identificadores Declaraciones y comandos

Adems de estas estructuras de base, algunos compiladores tambin permiten programacin orientada a objetos, as como procedimientos y funciones. Sin embargo Protn IDE no permite los procedimientos y funciones en el verdadero sentido, as como no es compatible con los objetos. Tiene enfoque orientado hacia el simple y sencillo llamado de instrucciones. La programacin comienza en la parte superior, y la contina hacia abajo. Sin embargo permite las repeticiones. Las primeras lneas del programa BASIC, difieren en la memoria de los microcontroladores, EEPROM, nmero de puertos y registros, etc., es necesario informar al compilador sobre el microcontrolador que se utilizar. En segundo lugar la velocidad de procesamiento depende de la frecuencia del cristal. Por lo tanto, a fin de calcular con precisin el calendario de funciones de retraso tambin es necesario informar al compilador de la frecuencia del cristal. Los programas de lenguaje BASIC usualmente comienzan as: Device = 16F877A XTAL = 4

La primera lnea indica el procesador y la segunda lnea dice que el hardware utiliza 20MHz de cristal. Declaraciones Son instrucciones especiales sobre los diversos dispositivos a utilizar, esto ayuda al compilador a generar instrucciones especficas. Por ejemplo, si estamos usando una pantalla LCD y se conecta en PORTD, entonces tenemos que informar las conexiones de nuestro LCD. Vamos a declarar este tipo de configuracin generalmente despus de la seccin de encabezado utilizando los comandos: Declare LCD_DTPIN PORTD.0 Hay un nmero de declaraciones, sin embargo, slo las necesarias en el proyecto actual se fijan normalmente.... Identificadores Los identificadores son smbolos de texto especial que se utiliza para representar algo. Pueden ser utilizados como etiquetas para marcar ciertos lugares en el programa, de modo que el programa se puede hacer para ir a las etiquetas y luego continuar con el programa a partir de entonces. Del mismo modo los identificadores pueden usarse para nombrar algunas ubicaciones de memoria. Estos son por lo general variables llamadas, y son los identificadores ms importantes en la programacin. Los identificadores tambin se pueden utilizar como alias en cierto texto, de modo que en lugar de escribir el texto concerniente del identificador, el compilador inserta el texto pertinente en su lugar. Las declaraciones y comandos Hay tres tipos de declaraciones: Comparacin y declaraciones condicionales Repeticin y declaraciones de bucle Biblioteca de comandos Comparacin y sentencias condicionales nos permiten comparar dos o ms variables, los puertos, los pines del puerto o registros de funciones especiales y luego tomar la decisin de ejecutar un conjunto de instrucciones o de otro conjunto. Considerando la importancia de estas declaraciones, el lenguaje BASIC prev diferentes construcciones de esto. Vamos a explorar estas a continuacin. La repeticin y de bucle es una de las mayores ventajas de los microprocesadores. Podemos encargar al microcontrolador repetir continuamente ciertas instrucciones, ya sea indefinidamente, o hasta que una determinada condicin existe.

Por ejemplo, para mantener un LED, hasta que la temperatura es alta desde un punto de ajuste. Biblioteca de Comandos, no son propiamente los comandos del lenguaje BASIC, pero son proporcionados por el fabricante del compilador para hacer las tareas comunes. Por ejemplo, un comando de biblioteca para mostrar algunos datos sobre la LCD o para leer los datos analgicos de un pin de entrada. Etiquetas Para marcar las declaraciones que el programa podra hacer referencia con los comandos Goto, Call o Gosub, PROTON utiliza las etiquetas de lnea. A diferencia de los antiguos BASICS, PROTON no permite o exige a los nmeros de lnea y no requiere que se etiquete cada lnea. En cambio, cualquier lnea puede comenzar con una etiqueta de lnea, que es simplemente un identificador seguido de dos puntos (:). LAB: PRINT "Hola Mundo" GOTO LAB Los nombres de etiqueta pueden ser de hasta 32 caracteres de longitud y puede contener cualquier carcter alfanumrico, pero no debe comenzar con un valor numrico. Por ejemplo: Label1: Es perfectamente vlido, sin embargo: 1LABEL: Se producir un error de sintaxis porque las etiquetas se inician con el valor 1. Una etiqueta que contenga ms de 32 caracteres producir un error de sintaxis sealando la etiqueta de reincidencia. Tambin se permite caracteres como parte de la etiqueta. Esto ayuda a crear ms nombres de etiqueta descriptiva. Por ejemplo: THISISALABEL: No tiene la misma claridad de significado como: THIS_IS_A_LABEL: Variables Las variables se utilizan para almacenar datos temporalmente o para mantener nmeros que se utilizarn en los clculos. El nmero de variables que pueden ser utilizados en un programa depende de la memoria RAM del microcontrolador, la arquitectura del Microcontrolador, la parte de la memoria RAM, la memoria del programa.

Por lo tanto, si usted tiene 16K de la memoria del programa y 256 bytes de memoria RAM, no se puede utilizar la memoria de programa libre para almacenar datos. Variables Por lo tanto, nada ms que bytes de memoria. Para facilitar este trabajo, el compilador le permite dar a estos los nombres en lugares de la memoria, llamados nombres de variables. Las variables existentes en la memoria RAM, como una secuencia de bytes, pueden ser agrupados juntos para hacer ms grande las organizaciones de distintos tipos de datos, que pueden ser manipulados por nuestro compilador. Los compiladores de diferentes fabricantes difieren en este servicio, sin embargo algunos tipos de datos estndar son apoyados por todos. Las variables son declaradas mediante una instruccin Dim, seguida del nombre de variable y su tipo de datos. La declaracin Dim puede aparecer en cualquier lugar sin embargo es una buena prctica de programacin ubicar todas las declaraciones Dim en la parte superior del programa.... Dim Dog As Byte ' Crea una variable de 8-bit (0 to 255) Dim Cat As Bit ' Crea una variable de un bit (0 or 1) Dim Rat As Word ' Crea una variable 16-bit (0 to 65535) Dim Large_Rat As DWord ' Crea una variable 32-bit (-2147483647 to +2147483647) Dim Pointy_Rat As Float ' Cre una variable floating point de 32-bit Dim ST As STRING * 20 ' Crea una variable STRING de capacidad de 20 Caracteres Los tipos de datos como bit, byte, WORD, DWORD, float y string definen el nmero de bytes reservados para la variable, tambin definen el rango de nmero, que puede ser almacenada, as como la naturaleza del nmero almacenado. Los nmeros almacenados pueden ser firmados o no-firmados, as como que pueden contener un punto decimal. Una cadena por otra parte, que es una coleccin de bytes de tamao variables, para mantener los datos de carcter. El compilador usar parte de la memoria para almacenar las variables internas. La cantidad de RAM usada por compilador depende de la complejidad del programa. Como hay estructuras de control y de bucles, el compilador utilizara ms la RAM. Los nombres de variables siguen las mismas lneas de gua general como identificadores. Sin embargo, hay ciertas palabras que no pueden ser utilizados como nombres de variables. Consulte la ayuda de PRORON para obtener detalles de reserva palabras.

Acceso a la parte de una variable Muchas veces una parte de una variable se debe acceder, ya sea para lectura o escritura. La mayora de las veces en un Bytes de tamao variable un poco particular, se debe acceder. Un byte consta de 8 bits numerados del 0 al 7. 0 es el menos significativo y el bit 7, el ms importante. Un bit individual de una variable se accede por un punto seguido por el nmero de bits en un nombre de variable. As, si tenemos x como un byte de tamao variable, su bit menos significativo se puede acceder por X.0 y bit ms significativo por X.7. Dim x As Byte Dim y As Byte x.0 = 1 y.7 = x.0 End En este ejemplo, X e Y son de bytes de tamao variables, x.0 = 1 establece el bit 0 de x como de alta, y y.7 = X.0 lee el valor de la X.0 y la transfiere en y.0 En el caso de la palabra DWord , se puede hacer al byte de orden alto y byte de orden bajo, o Byte0, Byte1, etc Byte2 por separado. DIM DWD as DWORD ' Declare la variable DWD a 32-bit DIM PART1 as DWD.WORD0 'PART1 a la palabra baja de DWD DIM PART2 as DWD.WORD1 'PART2 a la palabra alta de DWD Smbolos Los smbolos son en realidad una manera de simplificar las cosas. Se asigna a un alias o un registro, una variable o un valor constante. El alias se utilizar en el programa, el compilador reemplazar el alias con los datos reales, antes de compilacin Symbol LED = PORTB.0 High LED En este ejemplo, un smbolo de LED se ha definido para el PORTB.0. Por lo tanto cada vez que usamos la palabra LED en nuestro programa significara PORTB.0 este programa es ms fcil de entender, y ms lgico. Matrices Matriz es una estructura comn utilizada en la programacin. El concepto es utilizar mltiples variables, con el mismo nombre, pero que tengan un nmero de ndice que los refiera. Dado que un nmero de ndice en s mismo puede ser una variable, es ms fcil caminar a travs de un arsenal enorme de variables, cambiando simplemente el ndice. Para declarar una variable como una matriz, tenemos que mencionar su longitud.

Dim Temp[20] As Byte Dim x As Byte For x=0 To 19 Temp[x]=0 Next x En este ejemplo, una variable denominada Temp ha sido declarada como una matriz de 20 variables, siendo cada uno un byte de tamao. El nmero de ndice de estas 20 variables sern 0 a 19. As, para acceder al primer elemento de la matriz, que utilizar temp [0] en lugar de Temp. El nmero de ndice en s puede ser una variable.

Cadenas Las cadenas son una serie de datos alfanumricos. Para ejemplo, su nombre, pas, direccin estn configurados como cadenas. Las cadenas son ms que matrices de bytes. Sin embargo cuando las matrices son utilizados como cadenas, el ltimo byte de datos debe contener un 0. Dim String1[5] As Byte ' Crear una matrix de 5 elementos Dim String2[5] As Byte ' Crear otra matrix de 5 elementos Str String1 = "ABCD" , 0 'llena la matrix con ASCII Y NULL determinado Str String2 = "EFGH" , 0 ' llena la matrix con ASCII Y NULL determinado Str String1 = Str String2 ' Copiar String2 a String1 Print Str String1 ' Mostrar el string El uso de un prefijo Str. le dice al compilador que se tratar la matriz como una cadena. Representacin numrica de los nmeros Como ya hemos comentado, el mismo nmero puede ser representado como formato decimal, binario o hexadecimal. Sin embargo, se hace anteponiendo la cantidad numrica con ciertos smbolos. Binario es el prefijo%. Es decir, 0101% Hexadecimal es el prefijo $. Es decir, $ 0A Byte de caracteres est rodeado de comillas. Es decir, "A" representa un valor de 97 Los valores decimales no necesitan de ningn prefijo, se crean utilizando un punto decimal. Es decir, 8,14. Acceso a los puertos y registros Son estructuras especiales internas del microcontrolador. Los puertos han sido nombrados como PORTA, PORTB, PORTC, etc. Todos los puertos son bidireccionales, es decir, que pueden ser utilizados para leer el estado del PIN o establecer el estado del PIN. La mayora de los puertos son de 8 bits, pero algunos son de menos salidas. Los

puertos y sus bits se pueden acceder de la misma manera que las variables. Tambin se puede utilizar en las expresiones matemticas. Adems de los puertos hay una serie de registros internos con funciones especficas, que se asignan a los bits especficos de estos registros. A pesar que estos registros tienen una direccin especial, en la memoria y estas direcciones se utilizan para acceder a ellos. BASIC PROTON hace que sea ms fcil acceder a estos registros por sus nombres para luego tratarlos como cualquier otra variable. Estos nombres estn predefinidos, y varan de acuerdo con el microcontrolador a utilizar. El compilador Basic de PROTON sabe que los puertos y los registros estn disponibles en el microcontrolador seleccionado.... PORTA = %01010101 ' escribir el valor binario en PORTA VAR1 = WRD * PORTA ' Multiplica variable WRD con el contenido de PORTA TMR0=0 ' ajustar el Timer a 0 RCSTA.5=1 ' Establecer el bit 5 del registro RCSTA en valor lgico alto Vamos a hablar de dichos registros en las secciones apropiadas. Aqu slo quiero mencionar que estos registros de funciones especiales pueden ser tratados como variables normales, para establecer o leer sus valores y bits. Toma de decisiones La mayora de los programas requieren algn tipo de toma de decisiones basada en las aportaciones o condiciones. Las decisiones siempre se evalan como verdadero o falso. El programa se ejecuta a ciertos grupos de instrucciones en cada caso. Esto se logra con la Declaracin IF THEN ENDIF. El formato general de IF es tomar una comparacin, y para ejecutar un lote de instrucciones en caso de que la comparacin se evala como verdadera. El fin de la IF se caracteriza por la instruccin ENDIF. Symbol LED PORTC.0 If x > 10 Then High LED End If En caso de que el valor de x no es mayor que 10, el programa saltar a las declaraciones a continuacin End If. En el caso que el valor de x es mayor que 10, har que el LED encienda y luego contina con las declaraciones despus de End If. Otra forma de IF utiliza ELSE. Este formulario tiene dos lotes de instrucciones, una que se ejecuta si la comparacin se evala como verdadera, y otros se ejecuta si la comparacin se evala como falsa. Symbol LED PORTC.0 If x > 10 Then High LED

Else Low LED End If La repeticin o bucles Como ya hemos visto que nuestro programa se ejecuta de arriba a abajo. Sin embargo, si un conjunto de instrucciones se tiene que repetir una y otra vez de alguna forma debe haber una declaracin en la parte superior que controle el estado de la instruccin. Esto proceso se denomina un bucle. El bucle ms simple se puede construir mediante el uso de una etiqueta, y luego utilizar una instruccin Goto para saltar a la etiqueta. Device=18F2550 Symbol LED = PORTC.0 Inicio: High LED DelayMS 500 Low LED DelayMS 500 GoTo Inicio En este programa hemos definido una etiqueta, llamada de Inicio, observe los dos puntos despus de ella. Despus de haber realizado la instruccin que queremos transferir, se utiliza el comando Goto, el cual a transfiere el control a la etiqueta de Inicio y el programa continuar. Este ciclo se repite sin cesar. No hay manera de que el programa puede salir de este bucle. La mayora de las veces queremos un bucle de control, en la que el grupo de instrucciones se repita de tal manera que despus de una determinada condicin el bucle se terminara. Esto se puede hacer combinando un caso de declaracin. Por ejemplo, queremos que el LED se active 10 veces y luego continuar con el resto del programa. Device=18F2550 Symbol LED = PORTC.0 Dim x As Byte x=0 Again: If x = 10 Then GoTo Cont End If High LED DelayMS 500 Low LED DelayMS 500 x=x+1

GoTo Again Cont: resto del Programa En este programa, hemos tomado una variable de control, denominada X, y establecido su valor a 0. Durante el bucle, incrementa su valor en 1, en cada ciclo, y comprobara si el valor de x ha alcanzado el 10. Cuando su valor ha llegado a 10, nos enva a una etiqueta para terminar el bucle, y continuar con el resto del programa. Dado que este es un escenario comn, BASIC de PROTON ha introducido una serie de maneras de hacerlo, con la misma ideologa, pero en ms estructurada y controlada. Uno de ellos es el llamado bucle For... Next. Device=18F2550 Symbol LED = PORTC.0 Dim x As Byte For x=0 To 10 High LED DelayMS 500 Low LED DelayMS 500 Next x Aqu est el mismo programa, pero con bucle For. En un bucle, que da un rango a una variable, entre los estados mencionados y la declaracin siguiente se repite, cada vez que el valor de la variable de control se incrementa y cuando la condicin ha alcanzado el lmite superior, el control se transfiere a la lnea debajo de la Instruccin Next. Tambin puede utilizar el valor de la variable de control dentro de su ciclo. Sin embargo, no se puede cambiar el valor por s mismo dentro del cuerpo del bucle. Qu pasa si queremos incrementar el valor del control variable por 2? Slo se menciona el paso 2 de la declaracin. For x=0 To 10 Step 2 Del mismo modo, si queremos disminuir el valor, digamos por 1, 20 a 0: For x=20 To 0 Step -1 Este tipo de bucle es muy usado para inicializar las matrices. Para la siguiente declaracin es til, para repetir las instrucciones un nmero de veces. En algunas ocasiones no se sabe por cunto tiempo las instrucciones tienen que ser repetidas. Por ejemplo, queremos repetir ciertas instrucciones hasta que se pulsa una tecla. No sabemos cundo una tecla se presiona. As que el bucle debe vigilar el estado de la tecla. Device=18F2550 Symbol LED = PORTC.0

Symbol SW3 = PORTE.0 While SW3 0 High LED Wend Low LED Este programa utiliza otro mtodo de reproduccin en bucle, el While y Wend. Se ejecuta el cuerpo del bucle si la condicin es cierta. Este ciclo se repite mientras que la condicin se evala como falsa. Esa fue una introduccin al lenguaje de Basic En PROTON, podr aprender ms acerca de los comandos normas y rdenes durante el tutorial , siendo esto lo mnimo que se debe saber para comenzar.