PBASIC es una versión de BASIC basada en microcontrolador creada por Parallax, Inc. en 1992. [ 1 ]
PBASIC se creó para facilitar el uso de microcontroladores y procesadores embebidos . Se utiliza para escribir código para los microcontroladores BASIC Stamp . Una vez escrito el código, se tokeniza y se carga en una memoria EEPROM del microcontrolador. Estos tokens son recuperados por el microcontrolador y utilizados para generar instrucciones para el procesador.
Sintaxis
Al iniciar un archivo PBASIC, el programador define la versión del BASIC Stamp y la versión de PBASIC que se utilizará. Las variables y constantes generalmente se declaran al principio del programa. Los bucles DO LOOP y FOR NEXT, IF y ENDIF, y algunos comandos estándar de BASIC forman parte del lenguaje, pero muchos comandos como PULSOUT, HIGH, LOW, DEBUG y FREQOUT son propios de PBASIC y se utilizan para propósitos especiales que no están disponibles en BASIC tradicional (como hacer sonar un altavoz piezoeléctrico con el Basic Stamp , por ejemplo).
Programación
En el Editor de sellos, el entorno de desarrollo integrado (IDE) de PBASIC que se ejecuta en un PC (Windows), el programador tiene que seleccionar 1 de 7 sellos básicos diferentes, BS1, BS2, BS2E, BS2SX, BS2P, BS2PE y BS2PX, lo que se hace utilizando uno de estos comandos:
' {$STAMP BS1} ' {$STAMP BS2} ' {$STAMP BS2e} ' {$STAMP BS2sx} ' {$STAMP BS2p} ' {$STAMP BS2pe} ' {$STAMP BS2px} El programador también debe seleccionar qué versión de PBASIC utilizar, lo cual puede expresar con comandos como estos:
' {$PBASIC 1.0} ' utiliza la sintaxis de la versión 1.0 (solo BS1) ' {$PBASIC 2.0} ' utiliza la sintaxis de la versión 2.0 ' {$PBASIC 2.5} ' usar la sintaxis de la versión 2.5 Un ejemplo de un programa que utiliza HIGH y LOW para hacer parpadear un LED , junto con un bucle DO...LOOP, sería:
HACER ALTO 1 'encender el LED pin de E/S 1 ' PAUSA 1000 'mantenerlo encendido durante 1 segundo BAJO 1 'apagarlo PAUSA 500 'manténgalo apagado durante 500 ms BUCLE 'repetir para siempre'
Un ejemplo de programa que utiliza HIGH y LOW junto con el bucle FOR NEXT sería:
contador VAR Byte 'establece la variable "contador" PARA contador = 1 a 5 ALTO 1 'poner el pin 1 en nivel lógico alto (5 V)' PAUSA 1000 'mantenerlo encendido durante 1000 ms BAJO 1 'apagarlo PAUSA 500 'manténgalo apagado durante 500 ms SIGUIENTE redirige al inicio cuatro veces más FIN 'fin del programa'
Los comentarios en el código van precedidos de un apóstrofo ('). El microcontrolador ignora el resto de la línea y continúa con la siguiente cada vez que encuentra un comentario. Los códigos PBASIC pueden ser simplemente una lista de instrucciones:
HIGH 1 'enciende el LED del pin 1 PAUSE 1000 'pausa de un segundo LOW 1 'apaga el LED del pin 1 END 'finaliza el programaSi el programador selecciona "Ejecutar" en el menú del IDE, el programa se tokeniza y se carga en el Basic Stamp mediante un cable RS232 o USB, almacenándose en la EEPROM del Stamp como tokens de longitud variable no alineados por bytes y comprimidos con Huffman , para ejecutarse inmediatamente. [ 2 ] Por ejemplo, una instrucción GOSUB utiliza 20 bits, incluyendo 11 bits de direccionamiento orientados a bits para la dirección de la subrutina. Dado que las instrucciones no están alineadas por bytes, una subrutina puede comenzar en cualquier bit de cualquier byte de la EEPROM. [ 3 ]
Otros chips
El microcontrolador PICAXE utiliza una versión de Basic similar a la que se usa para programar el Basic Stamp I.
Referencias
- ↑ ¿Qué es un microcontrolador?, versión 1.9 (para el primer "experimento") , Guía del estudiante para los experimentos n.° 1 al n.° 6, Parallax, Inc., página 3 (prefacio) ...El negocio creció lentamente hasta 1992, cuando Parallax lanzó el primer BASIC Stamp...
- ↑ Scott Edwards, "Explorando la EEPROM BS1" . The Nuts and Volts of BASIC Stamps (Volumen 1), julio de 1996.
- ↑ Chuck McManis, "Decodificando el sello BASIC" Enlace obsoleto archivado el 15/04/2013 en archive.today , 1994.
Enlaces externos
- "Comparación de las estructuras de control de PBASIC 2.5 con las del antiguo PBASIC" – Por Tracy Allen, EME Systems, 2003
- Parallax, Inc. – Sitio web corporativo
- Sistemas embebidos
- Productos de Parallax, Inc.
- Lenguaje de programación BASIC