Picsimlab un simulador de Pic muy interesante.

PICSIMLAB

Picsimlab es una serie de entrenadores para simular los microcontroladores de la familia Microchip y en concreto el 16F62816F877 y el 18F452.
Es muy interesante este programa y por eso lo quiero poner aqui.
Esta pet la cree hace poco y la aloje en el servidor.

picsimlab0.5.0.pet 

Vamos a trabajar car con e

l y con Gputil, y vamos hacer varias simulaciones.
Tendremos que tener en cuenta los esqu

emas que como dije están alojados en
/usr/share/picsim/lab/doc
Vamos a trabajar con el entrenador o Board 1 a 4 Mhz según vemos en en la imagen.

11_board0

Bueno el esquema correspondiente a esta placa como vemos en en el directorio que esta mas arriba es el siguiente:

board1

 

Esto lo podreis ver en vuestro directorio que se instala por defecto y bueno vamos hacer ahora un programita que encienda el  LED 1 y que va como vemos en el esquema a la patita RB0.

Tambien podemos ver que el pulsador S3 esta conectado a la patita RA4, con todo esto hacemos el siguiente codigo.

Tener en cuenta dejar un espacio  al principio de  __CONFIG por que si no da un error. 

Aconsejo bajarselo el archivo como esta tal cual en el enlace mas abajo.

primero.asm

  processor pic16f628a
include “p16f628a.inc”

__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _HS_OSC

org 0x00 ;
goto Inicio
org 0x05 ; Origen del codigo
Inicio
bsf STATUS,RP0 ; Pasamos a Banco 1
movlw b’11111110′
movwf TRISB  ; Hacemos todo el puerto A entradas menos la patita RB0 salida
movlw b’11111′ ; Se hace todo el puerto A entradas
movwf TRISA ; Se carga W en TRISA
bcf STATUS,RP0 ; Se pasa del Banco 1 al Banco 0
bcf PORTB,0 ; Volvemosa al Baanco 0

Bucle
btfss PORTA,4 ; Mira a ver si hemos pulsado S3 pulsador y si es asi apaga led
goto Apagar ; Si esta en 1 logico, se apaga el led
bsf PORTB,0 ; Si esta en 0 logico, se enciende el led
goto Bucle ; se verifica la condicion del  Pulsador.-

Apagar
bcf PORTB,0 ; Se apagar el led
goto Bucle

end

 Tenemos que tener instaldo  Gputils que esta en este mismo blob.

 Una vez bajado el archivo ” primero.asm ”  yo lo que hize es colocarlo en el directorio de  examples de picsim   en  : /usr/share/picsim/examples
 y aqui creo un directorio  /EJERCICIOS queando /usr/share/picsim/examples/EJERCICIOS.

Bueno una vez colocado este archivo ahi lo compilo de la siguiente forma:

 

gpasm  -c primero.asm

 

Y entre los archivos que me salen sale uno del objeto   primero.o  y lo enlazo de la siguiente forma para crear el hexadecimal.

gplink -o primero.hex primero.o 

Con esto ya hemos creado nuestro fichero Hex   primero.hex

 Nos saldra un mensaje parecido a este:

message: using default linker script: /usr/local/share/gputils/lkr/16f628_g.lkr
pero esto es normal.

Ahora solo lo que tenemos que cargar este hexadecimal en el simulador que estamos trabajando y en el directorio donde este nuestro archivo hex y apretamos en la placa del simulador el encendido mientras el interruptor  PWR y veremos que se nos enciende el Led de RB0 segun el programa que le metimos y si apretamos el pusador  RA4 pues el Led se nos

 apagara  tal como lo habia programado . 

Ejercicio 2 de picsimlab para la Placa 4

 Muestra como se enciende un display y cuenta la numeracion:

http://www.mediafire.com/download/d77b5xt948ixt2x/segundo_picsimlab_P4.tar.gz

Para que el Display vaya mar rápido o bien variamos los retardos del programa o incrementamos la velocidad del PIc en la placa.

Bueno pues aquí tenemos el entrenador funcionado y todo bajo Linux.
Tenéis un montón de ejemplos en el entrenador pero yo iré poniendo mas.
Espero que os guste y si es así dejéis vuestra opinión….. Nos vemos.

 

 

 

 

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s