Ir al contenido principal

PRIMER PROGRAMA MICROCODE-PBP [2, PIC]

Hola, aquí les traigo la parte 2 de estos pequeños tutoriales de como aprender a programar un PIC en MicroCode Studio - PICBASIC PRO. Recordando en el anterior entrada, solo fue un poco de teoría para que estén familiarizados un poco de todos los comandos y su uso, ahora ya es tiempo de que prueben su primer programa que solo consistiera en prender un led.

(Si se dan cuenta es el mismo codigo fuente que la entrada anterior)

----------------------------------------------------------------------------------------------------------

'Aprendiendo a hacer tu primer programa en MicroCode
'Como habras notado, para colocar mensajes se debe colocar    '
'Ahora bien primeramente uno debe escoger el PIC que usara para programar
'Es escoge en la siguiente sección, escoges el que mas te agrade
'Empecemos 

INCLUDE "bs2defs.bas" 'es la libreria mas usada y que siempre usaremos para lso programas

DEFINE osc 4 'Definimos que el crital de cuarzo a usar sera de 4MHz


'Fusibles
@ DEVICE pic16F628A, INTRC_OSC_NOCLKOUT
@ DEVICE pic16F628A, WDT_OFF
@ DEVICE pic16F628A, PWRT_ON
@ DEVICE pic16F628A, BOD_ON
@ DEVICE pic16F628A, MCLR_OFF
@ DEVICE pic16F628A, LVP_OFF
@ DEVICE pic16F628A, CPD_OFF
@ DEVICE pic16F628A, PROTECT_ON


'Variables

LED1 VAR PORTB.0  'Colocamos nombres a cada uno de los puertos por comodidad, aunque se puede omitir
LED2 VAR PORTB.1
LED3 VAR PORTB.2

'Ahora definiremos que puertos serán de entradas o salidas por medio de los TRIS

TRISA = %11111111 'El uno significa entrada y el % es que es numero binario
TRISB = 000000  'Todo el puerto B será salida

'Programa principal

INICIO:   'es necesariamente poner : para que sepa que es una etiqueta

'Prenderemos LED's

LED1 = 1 ' colocar = 1 es poner ese PIN con un 1 logico
HIGH LED2  ' es otra manera de colocar un 1 lógico
LED3 = 3

PAUSE 1000 ' pause significa el tiempo de retardo que estaran prendidos, cada 1000 es 1 seg por tener un cristal de 4 Mhz

'Ahora apagaremos los led's

LED1 = 0 ' colocara en este pin un 0 logico
Pause 500
LOW LED2 ' Otra manera de colocar un 0 logico
PAUSE 500
LED3 = 0
PAUSE 500



    


GOTO INICIO ' Será el ciclo infinito para que se ejecute el programa siempre que este conectado

END

'Ahora a compilarlo, debemos escoger el compilador y guardar primeramente el programa con la extención .pbp
'Buscaremos el compilador,
'Ahora a compilarlo, sino ocurrieron errores nos aparecera en la esquina inferior derecha que lo hemos hecho bien :D 

------------------------------------------------------------------------------------------------------------------------------------------------------------------

Una vez visto esto si gustan pueden abrir MicroCode y pegar el codigo fuente anterior, y antes de compilarlo recuerden lo siguiente:


  • Deben seleccionar el dispositivo en el cual se programara, el PIC
  • Salvar en archivo con una extensión .PBP (PICBASIC PRO FILE) o . bas (BASIC FILE), no existe inconveniente por guardarlo con cualquiera de las 2 extensiones pero es recomendado aquí guardarlo con un .PBP
  • Una vez hecho lo anterior solo queda compilarlo, si es la primera vez que se compila se tardara un poco por estar buscando el compilador. Aquí tienen 2 opciones esperar a que el busque el compilador o buscarlos ustedes mismos. Si escogen la segunda opción deberán hacer lo sig:
  • Hay que darle click en View y en la opción Compile and Program Options otro click y se nos abrirá la una ventana donde nos darán las opciones para buscar el compilador de forma manual o automáticamente, si es manual solo deben buscar la carpeta donde guardaron el programa  de MicroCode y ahí la carpeta pbp247 o solo pueden darle en la carpeta donde guardaron el programa de MicroCode y el programa se encargará del resto una vez hecho esto hay que darle en el OK.
  • Para comprobar que lo que hicieron esta bien deben dar click en la opción Compile y si todo esta bien en la parte inferior izquierda mostrara y nos creará un archivo .hex que posteriormente lo utilizaremos. Si no es así nos marcará algunos errores.


----------------------------------------------------------------------------------------------------------------------------------------------------------------
OK, depues de haber hecho todo esto solo queda corroborarlo existen dos opciones armar el circuito en un proto board y programar con algún dispositivo como Wellon, Volnia o Pickit y ver como se prende o apaga un led.

Pero que pasa para las personas que no cuentan con un PIC o estos dispositivos para programar, pues existen diferentes programas que son básicamente simuladores que sirven para eso simular el codigo que hicimos en la parte de arriba.

El programa que yo utilizo es Proteus. 
Proteus es una compilación de programas de diseño y simulación electrónica, desarrollado por Labcenter Electronics que consta de los dos programas principales: Ares e Isis, y los módulos VSM y Electra.
Y el que nos interesa es ISIS

El Programa ISIS, Intelligent Schematic Input System (Sistema de Enrutado de Esquemas Inteligente) permite diseñar el plano eléctrico del circuito que se desea realizar con componentes muy variados, desde simples resistencias, hasta alguno que otro microprocesador o microcontrolador, incluyendo fuentes de alimentación, generadores de señales y muchos otros componentes con prestaciones diferentes. Los diseños realizados en Isis pueden ser simulados en tiempo real, mediante el módulo VSM, asociado directamente con ISIS.

PASOS PARA SIMULAR EN ISIS (PROTEUS)
  1. Primeramente ya tener instalado PROTEUS, sino es cuestión de comprarlo o descargarlo, para ya ejecutar ISIS.
  2. Una vez abierto ISIS esta será su interfaz.
  3.  Agregar todos los elementos a utilizar (PIC, led's, resistencias, etc.)
     Para esto se debe dar clik en la barra lateral izquierda a Componenet Mode (tiene forma de un amplificador operacional), y si nos vamos un poquito a la derecha estará otra barra lateral donde están la opciones P, L y dirá devices, ahí click en la letra P ahí nos abrirá un pestaña para seleccionar todos los componentes necesarios(lo único es que se tienen que escribir por su matricula o en ingles). 
  4. Unir los componentes de forma correcta. A lo que me refiero es que como en el programa seleccionamos 3 puestos para poner led's en los mismos puertos de deben colocar esos dispositivos. y para colocar GND(tierra) deben ir a la opción Terminal Mode y ahí aparecerá la opción
  5. Ahora solo queda seleccionar la ubicación de nuestro programa, para eso solo hay que dar dos click en el PIC y nos abrirá una ventana donde podremos agregar la ubicación de programa .hex, y tambien cambiar de 1 Mhz a 4 Mhz el cristal de cuarzo.
  6. Solo resta darle click al símbolo de play y ver como se prende o apagan los leds si todo salió bien, sino pues no se ejecutará el programa.
Bueno eso es todo espero les ayude en algo, y recuerden pueden cambiar el dispositivo utilizado pero si lo hacen también cambian los fusibles fuera de ahí es muy similar la forma de utilizar el codigo. Hasta luego.



Comentarios

  1. muy bueno, podrás hacer un tutorial de matriz led en pbp ? te lo agradecería mucho

    ResponderEliminar
  2. muy bueno. me gustaria mas ejemplos de programacion.

    ResponderEliminar
  3. muy bueno. me gustaria mas ejemplos de programacion.

    ResponderEliminar
  4. Bien continua con mas tutoriales

    ResponderEliminar
  5. Hola!. Te hago una consulta. Estoy queriendo pasar un programa que esta hecho con el pic12f683 al 12f675 tengo problemas en un vector de word que en el 12f675 no lo toma aparentemente no se banca el tamaño. Podrías sugerirme algo?

    ResponderEliminar
  6. Muy bueno puedes explicar el uso de interrupciones RBI con el PIC 16F877A

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

PROGRAMAR EN MICROCODE (PIC BASIC PRO)[PIC]

Hola, aquí les traigo un pequeño manual de como programar un PIC en MICROCODE. Pero antes de empezar con el ejemplo les dejare un poco de teoría para que se familiaricen un poco acerca de que trata este programador. Microcóde es un lenguaje de instrucciones a nivel de hardware o estructuras de datos que intervienen en la ejecución de instrucciones de código máquina de nivel superior en las unidades centrales de procesamiento, y en la implementación de la lógica interna de muchos controladores de canal, los controladores de disco, controladores de interfaz de red, procesadores de red, unidades de procesamiento de gráficos, y otros equipos. Reside en especial de memoria de alta velocidad y traduce las instrucciones de la máquina en secuencias de operaciones detalladas a nivel de circuito. Se ayuda a separar las instrucciones de la máquina de la electrónica subyacentes de modo que las instrucciones pueden ser diseñados y alterados más libremente. También hace que sea factible constr

PROGRAMAR EN PIC C COMPILER [CCS - PIC - C]

Para las personas que están un poco más familiarizadas a hacer programas en lenguaje C o sus derivados, en esta sección les traigo un manual de como programar un PIC usando el lenguaje C, pero como siempre un poco de teoría para que estén familiarizados un poco. PIC C Compiler  es un compilador C que contienen operadores estándar del lenguaje C y funciones incorporados en bibliotecas que son específicas a los registros de PIC, proporcionando a los desarrolladores una herramienta poderosa para el acceso al hardware las funciones del dispositivo desde el nivel de lenguaje C.  El compilador de CCS (Custom Computer Services) contiene más de 307 funciones integradas que simplifiquen el acceso al hardware, mientras que la producción eficiente y altamente optimizado código. Se incluyen funciones de hardware del dispositivo de características tales como: * Temporizadores y módulos PWM  * Convertidores A / D  * de datos on-chip EEPROM  * LCD controladores  * Memoria externa

STRUCTURE DECK - FREEZING CHAINS (Yu-Gi-Oh!)

En el 2020 se realizó el  Structure Deck Voting Contest OCG para elegir el nuevo deck de estructura que se lanzaría en el 2021. Y el ganador fue el arquetipo Ice-Barrier. En el siguiente video se muestran con realidad aumentada los modelos 3D de las cartas que se pueden encontrar. Continuando con la misma temática del 2019 Konami realizó una votación para elegir el próximo Structure Deck OCG, que posteriormente se llegaría también a TCG. Se enlistaran los arquetipos participantes del que obtuvo más votos al de menos: Ice Barrier Cyber Style Gusto Trickstar Morphotronic Kuriboh Kaiju Star Seraph Tour Guide Superheavy Samurai El Structure Deck: Freezing Chains fue lanzado el 19 de febrero del 2021, incluye 46 cartas (Deck Principal de 41 cartas + Deck Extra de 5 cartas): 37 Comunes 3 Súper Raras 6 Ultra Raras 1 Tapete de Juego  El regreso de Trishula A medida que el invierno se hace más crudo, la Prisión Helada es incapaz de contener la creciente tormenta en su interior, anunciando el re