Pic Simulator Ide lenguaje

#1
Hola a todos, por favor si alguien me puede responder esta duda, de antemano las gracias:

Estoy trabajando con el Pic Simulator Ide, hice un programa en donde uso una VARIABLE al cual le puse de tipo LONG, el cual casi al final de mi programa lo lo mando al LCD (2x16) todo esta listo para compilar al hex, pero me califica un error de declaración de variable en la variable de tipo Long. PERO si no lo enviare al LCD en mi programa si lo compila.

En un resumen, mi pregunta: como hago para enviar una variable de tipo LONG al LCD en mi programa.

Ejempo:

DIM total AS LONG
total = total*10
Loop:
LCDOUT #total
END
 
#2
mmm temo que no puedes solamente te deja enviar constantes de tipo byte o word

detodos modos intenta esto

TRISA = %11111111
TRISB = %00000000


Lcdinit 1


Dim total As Word
total = 0
total = total * 10
loop:
Lcdcmdout LcdLine1Home
Lcdout #total
Goto loop
End


o si quieres una variable long intenta esto


TRISA = %11111111
TRISB = %00000000


Lcdinit 1


Dim total As long
total = 0
total = total * 10
loop:
Lcdcmdout LcdLine1Home
Lcdout total
Goto loop
End
 
#3
Saludos.
Para poder utilizar una variable long debes adquirir el modulo adiccional para utilizarlo, el cual tiene un costo de aprox. 22 euros.
Si llegas a conseguirlo en la web, te agradeceria si lo publicas aqui
 
#4
Hola:

Usando un PIC16F877A a XT de 4 MHz con el PIC simulator IDE.

Pin RA0 como salida para encender un Led.
Pin RB0 como entrada de un pulsador, no interruptor.

Lo que quiero hacer es lo siguiente, no tengo idea de estelenguaje pero quiero verlo como curiosidad de una vista rápida.

Al pulsar el pulsador, el Led se queda encendido durante 1 minuto, luego se apaga. Solo quiero hacer eso. ¿Cómo es el código?

Intenté hacer esta chapuza pero no va.
Código:
AllDigital
TRISA = %00000000
TRISD = %00000001

inicio:
If PORTB.0 = 1 Then  '¿Pulsador en 1? (Sin pulsar).
Goto motor  'Se cumple esta condición al motor.
Else  'En caso contrario.
PORTB.0 = 0  'Motor apagado.
Endif
Goto inicio  'Vuelve a escanear el pulsador.

motor:
PORTD.0 = 1  'Activa el motor.
WaitMs 250  '15 es un segundos.
PORTD.0 = 0  'Se apaga elmotor.
Goto inicio  'Vuelve a escanear o leer el pulsador.
End
Un cordial saludo.

Edito:

Para hacerlo más complejo. Por el pin
RB0 = Entrada digital, pulsador.
RB1 = Igual.
RB2 = Igual.
RB3 = Detiene el tiempo. Stop.

RD0 = Motor encendido que puede ser de 5, 10 o 20 minutos.
RD1 = Led encendido durante 5 minutos con el motor RD0. Los demás Led apgados.
RD2 = Lo mismo pero a 10 minutos.
RD3 = Lo mimso pero en 20 minutos.

El esquema es parecido a este pero con el PIC16F877A.

Como es un lenguaje que no conozco, me cuesta muchísimo coger el hilo. ;)
 
#5
Hola Meta... es un dejavu? me parece conocido el proyecto jeje...

Ya hace tiempo igual solo probé este compilador... el lenguaje es basic similar al PicBasicPro y al Proton IDE.
Sobre el código está raro... dices que usas RB0 para el pulsador pero también con el motor? ahí hay una confusión...

Solo tengo entendido que al simulador le lleva horas realizar retardos... prueba con microsegundos... pero para el real, coloca el tiempo correcto o simula en proteus.

Para 1 minuto sin que el PIC no haga más nada... hace falta bucles y contadores o interrupción ya que no hay instrucción para eso...

Aquí están todas las instrucciones que soporta + ejemplos... está en ingles.

Saludos.
 
#6
Pensé que era más fácil.

No usaré los retardos. Si el motor se queda encendido, pues pulsar el reset para deternerlo y ya está, tampoco me quiero complicar la vida. JEjejee.
 
Arriba