Autor Tema: Comenzando con Mikrobasic  (Leído 234593 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Moyin

  • PIC16
  • ***
  • Mensajes: 102
Re: Comenzando con Mikrobasic
« Respuesta #120 en: 04 de Octubre de 2006, 11:58:12 »
Hol amigos revisando sus comentarios y consejos me doy cuenta de que es mucho más práctico programar en Lenguaje de alto nivel que en ensamblador, tengo el PICBASIC y acabo de bajar la versión de prueba del MIKROBASIC y con respecto a este último es mi pregunta, realicé algunos ejemplos en MKB  y en un principio compiló pero al siguiente día hice modificaciones y me señala que no reconoce el "main" que va en el programa  aparece el siguiente comentario"Routine not found". Y hice las pruebas con otros programas y a veces compila y en otras marca este comentario, gracias de antemano

Saludos
Sonrie Cristo te ama

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Comenzando con Mikrobasic
« Respuesta #121 en: 04 de Octubre de 2006, 13:41:47 »
Si el MKB trae muchos bugs, no eres al unico que le pasa eso, a veces a mi no me deja copiar y pegar codigo pero si lo tecleas todo vuelve a jalar, pequeños inconvenientes
« Última modificación: 05 de Octubre de 2006, 01:47:39 por navaismo »
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado Moyin

  • PIC16
  • ***
  • Mensajes: 102
Re: Comenzando con Mikrobasic
« Respuesta #122 en: 04 de Octubre de 2006, 19:36:18 »
 :)Gracias Navaismo como lo mencionas es......... curiosamente habia copiado los códigos de esos programas de ejemplos que halle en el foro y los pegaba y trataba de compilar dándome ese error, tecle todo el programa como lo señalas y ¡sorpresa funciono!, :-/ gracias por compartir esos detalles que te hacen casi abandonarlo todo. Y emocionado por el logro abusando de tus aportaciones, ¿como se puede saber la longitud de tu programa ya que la capacidad de en esta versión de prueba es de 2K?

Saludos
Sonrie Cristo te ama

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Comenzando con Mikrobasic
« Respuesta #123 en: 05 de Octubre de 2006, 01:46:30 »
creo que son 20 lineas o algo asi
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Comenzando con Mikrobasic
« Respuesta #124 en: 05 de Octubre de 2006, 12:31:10 »
Hola:

En el MKB no son el numero de lineas, depende de las instrucciones que utilices, si no utilizas unas muy "complejas" el programa tendra mas lines, pero para programas mas complejos (GLCD por ejemplo) las lineas de programa seran menores.

Desconectado Moyin

  • PIC16
  • ***
  • Mensajes: 102
Re: Comenzando con Mikrobasic
« Respuesta #125 en: 06 de Octubre de 2006, 02:23:07 »
 :shock:Corrijanme porfavor si estoy equivocado, al momento de abrir el archivo en hexadecimal con el ICPROG por ejemplo aparece toda la codificación, mi duda es esta: puedo conocer mediante las direcciones que ocupa el programa su longitud?

Otra cosa ya que comento sobre el ICPROG al momento de programar un 16F870 si dejo activado el PWRT y el WDT no me trabaja bien el circuito programado y si desactivo todas los bits de configuración trabaja bien, qué está pasando?

Disculpen si esta pregunta no cabe en este foro

Gracias y un saludo
Sonrie Cristo te ama

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18269
    • MicroPIC
Re: Comenzando con Mikrobasic
« Respuesta #126 en: 07 de Octubre de 2006, 04:55:18 »
He colgado las Miniguías del maestro Navaismo en la zona de Descargas de El Rebujito, para facilitar su descarga y que no caduquen.

Las tenéis aquí: Miniguías de MikroBasic

Desconectado ANIMAL

  • PIC10
  • *
  • Mensajes: 6
Re: Comenzando con Mikrobasic
« Respuesta #127 en: 07 de Octubre de 2006, 12:58:39 »
Buenas:

¿Mikrobasic realiza operaciones con coma flotante?
El animal más peligroso es el hombre

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Comenzando con Mikrobasic
« Respuesta #128 en: 07 de Octubre de 2006, 13:59:38 »
Hola:

Si lo realiza, mira en la ayuda en el tema Math Library.

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Comenzando con Mikrobasic
« Respuesta #129 en: 07 de Octubre de 2006, 18:33:15 »
Muchas gracias Nocturno y nada de maestro aun soy un probre diablillo
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado Moyin

  • PIC16
  • ***
  • Mensajes: 102
Re: Comenzando con Mikrobasic
« Respuesta #130 en: 08 de Octubre de 2006, 01:30:22 »
Auí nuevamente con una duda, me estoy dando cuenta del lo práctico del MKB y estoy realizando los ejemplos que los buenos amigos han publicado, alguien me puede decir como puedo leer el bit de un puerto en MKB, por ejemplo una entrada de un sensor o un interruptor y que esta sea registrada, estoy tratando de hacer un programa y no puedo encontrar nada en el HELP del programa...........Gracias
Sonrie Cristo te ama

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Comenzando con Mikrobasic
« Respuesta #131 en: 08 de Octubre de 2006, 01:37:29 »
Pues puedes poner Variable=PORTX.X, si es una entrada analogica con el ejemplo del ADC te quedaria mas que claro, pero comentanos mas, ¿es un adc, un simple 1 o 0, seria un pin para transmision o recepcion serie? cuentanos....
« Última modificación: 08 de Octubre de 2006, 03:18:42 por navaismo »
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado Moyin

  • PIC16
  • ***
  • Mensajes: 102
Re: Comenzando con Mikrobasic
« Respuesta #132 en: 09 de Octubre de 2006, 22:46:13 »
Navaismo la idea es hacer una maqueta de un taladro automatico o uns sistema parecido que va emplear 4 motores que pienso controlar con dos bits para cada uno a través del puerto B de un 870 y empleando entradas digitales de interruptores de fin de carrera o detectores ópticos que me entreguen niveles altos o bajos cuando el recorrido es terminado este será el puerto A y parte del puerto C ya que llego a 8 entradasrelicé un programa que estoy viendo y lo estoy checando por partes y he encontrado algunos detalles solo los dos primeros pasos hace y después de aloca con estados generados sin que se den las entradas, si tienen un código en MKB les agradecería me lo facilitarán ya que pretendo hacer en el mismso programa una rutina para un motor siempre y cuando sea posible, anexo el programa que hice, no tengo experiencia en esto pero lo hago por el gusto de hacerlo y aprender,

program Automatismo
main:  'Aquí comienza el programa principal
ADCON1= %00000111  'PUERTA COMO DIGITAL
TRISA = %11111111  'PUERTA COMO ENTRADA
TRISB = %00000000  'PUERTB COMO SALIDA
TRISC = %00000111  'PARTE BAJA ENTRADA ALTA SALIDA

PORTA = 0
PORTB = 0
PORTC = 0

MOV_1:
CLRWDT
IF (PORTA.0=1)AND(PORTA.1=1) THEN
DELAY_MS(500)    'DAMOS PAUSA QUE RETARDA LA ACCION DE LA SALIDA
PORTB = $03
ELSE
GOTO MOV_1
END IF

MOV_2:
CLRWDT
IF (PORTA.2=1)AND(PORTA.3=1) THEN
DELAY_MS(500)       'IGUAL QUE ANTES, SI NO SE PONE LA PAUSA ENTRA INSTANTANEO
PORTB = $0C
ELSE
GOTO MOV_2
END IF

MOV_3:
CLRWDT
IF (PORTA.4=1)AND(PORTA.5=1) THEN
DELAY_MS(500)       'IGUAL QUE ANTES, SI NO SE PONE LA PAUSA ENTRA INSTANTANEO
PORTB = $30
ELSE
GOTO MOV_3
END IF

MOV_4:
CLRWDT
IF (PORTC.0=1)AND(PORTC.1=1) THEN
DELAY_MS(500)       'IGUAL QUE ANTES, SI NO SE PONE LA PAUSA ENTRA INSTANTANEO
PORTB = $C0
ELSE
GOTO MOV_4
END IF

MOV_5:
CLRWDT
IF (PORTC.2=1)THEN
DELAY_MS(500)       'IGUAL QUE ANTES, SI NO SE PONE LA PAUSA ENTRA INSTANTANEO
PORTB = $02
ELSE
GOTO MOV_5
END IF

MOV_6:
CLRWDT
IF (PORTA.1=1)THEN
DELAY_MS(500)       'IGUAL QUE ANTES, SI NO SE PONE LA PAUSA ENTRA INSTANTANEO
PORTB = $10
ELSE
GOTO MOV_6
END IF

MOV_7:
CLRWDT
IF (PORTA.5=1)THEN
DELAY_MS(500)       'IGUAL QUE ANTES, SI NO SE PONE LA PAUSA ENTRA INSTANTANEO
PORTB = $20
ELSE
GOTO MOV_7
END IF

MOV_8:
CLRWDT
IF (PORTA.3=1)THEN
DELAY_MS(500)       'IGUAL QUE ANTES, SI NO SE PONE LA PAUSA ENTRA INSTANTANEO
PORTB = $40
ELSE
GOTO MOV_8
END IF

MOV_9:
CLRWDT
IF (PORTC.1=1)THEN
DELAY_MS(50)       'IGUAL QUE ANTES, SI NO SE PONE LA PAUSA ENTRA INSTANTANEO
PORTB = $00
ELSE
GOTO MOV_9
END IF
GOTO MOV_1
END.

tal vez no sea la forma más práctica de hacerlo pero estoy a disposición de realizar cambios que me puedan señalar, un saludo ..........Gracias


 
Sonrie Cristo te ama

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Comenzando con Mikrobasic
« Respuesta #133 en: 10 de Octubre de 2006, 00:05:35 »
Hola no entiendo bien bien lo que quieres hacer y apartir de que, pero viendo tu programa podrias usar un select case y mandar llamar lo que deseas. por ejemplo:
Código: [Seleccionar]

select case PORTA
  case 3  ' o lo que es %00000011
   Gosub Mov_1
  case 12 ' o lo que es %00001100
   Gosub Mov_2

......................' y asi para cada caso definiendo que es lo que pasa cuando nada es apretado
end select

Mov_1:
' tus sentencias
return

Bueno es un ejemplo, insisto no entiendo bien que es lo que quieras hacer pero puedes darte una idea. El codigo anterioir es solo de apoyo no cheque lo que hace tu programa.


"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado Moyin

  • PIC16
  • ***
  • Mensajes: 102
Re: Comenzando con Mikrobasic
« Respuesta #134 en: 10 de Octubre de 2006, 21:11:31 »
Gracias Navaismo nuevamente por tu respuesta, he revisado el comentario pero no me queda claro la utilidad de la sentencia Select Case, que ventajas me trae sobre la otra forma de declaración, he visto algunos ejemplos pero no capto la idea , una pregunta más se va cumpliendo en forma secuencial cada "case", tiene que terminarse la secuencia, lei la ayuda pero me quedo igual.

El proyecto que pretendo hacer tiene como fin mover varios motores cuando estos en sus movimiento desplacen piezas o bandas transportadoras u otro artefacto que al llegar a un punto determinado accione interruptores de fin de carrera que pararían al motor y darán la pauta para que empíece otro con un movimiento diferente, estos movimientos los controlo con los niveles de salida del puerto que maneja dos bits de control por cada motor. El diseño debe cumplir un ciclo de trabajo y después retornar al inicio, situación en la cual mediante un botón de inicio el proceso puedade comenzar nuevamente, el programa que presenté es el que pretendo implementar pero trae detalles, espero haberme dado a entender.....Gracias :)
Sonrie Cristo te ama