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

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

Desconectado AKENAFAB

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3022
    • Automation Media Lab
Re: Comenzando con Mikrobasic
« Respuesta #150 en: 12 de Febrero de 2007, 17:14:05 »
HOla

Saludos!!!

Solo para decirles que esta muy padre para comenzar con mickrobasic, buenos ejemplos .

Esta padre el programa!!!

hasta luego!!

Desconectado ivan braga

  • PIC12
  • **
  • Mensajes: 74
Re: Comenzando con Mikrobasic
« Respuesta #151 en: 28 de Febrero de 2007, 03:48:58 »
Esse é meu 3º post no FORUM (FORO) , então para aqueles que ainda não me conhecem,  sou brasileiro, então acho que a compreensão entre os idiomas sejá facil. Por isso escrevo em portugues,  aqui no Brasil há poucos forum iguais a este. Com tantas informações.

Estou tentando todos os programas em Basic , MIKROBASIC, PROTUES, PICBASIC, e verificando a parte boa e ruiim de cada um, porem tenho uma duvida, sei que este espaço é para MIKROBASIC, porem tenho uma duvida que é como configura o oscilador interno em todos os 3 software.

Desde já agradeço a ajuda.  (GRACIAS) :mrgreen:

Ivan Braga
"Mesmo o objeto mais inanimado tem movimento suficiente para ficar na sua frente e provocar um acidente."
"Incluso el objeto más inanimado tiene suficiente movimiento para interponerse en su camino y provocar un accidente."
"Even the most inanimate object has enough movement to stand in your way and cause an accident."

Desconectado rasec_1984

  • PIC10
  • *
  • Mensajes: 29
Re: Comenzando con Mikrobasic
« Respuesta #152 en: 10 de Marzo de 2007, 17:43:28 »
Hola!!  q tal foro, soy nuevo aqui,y he encontrado muy bueno este material, ademas me di cuenta que estan ocupando MKB, q es el compilador que yo utilizo desde hac una semana (recien comence hace una semana con  esto). Pero ya tengo unos problemillas, hay un prograna que en el simulador proteus me arroja un error, y al pasarlo al micro no funciona como debe, este es el codigo:

program secuancial2

'Circuito secencuancial con control start/stop

main:

trisb=%00000000  'Puerto B como salida
portb=%00000000  'Todas los pines del puerto B los llevamos a 0
trisa.0=1  'Puerto A como entrada, interesa A.0

while true

portb = %00000001
delay_ms(250)
 while porta.0 = 1
 delay_ms(50)
 wend

portb = %00000010
delay_ms(250)
 while porta.0 = 1
 delay_ms(50)
 wend

portb = %00000100
delay_ms(250)
 while porta.0 = 1
 delay_ms(50)
 wend

portb = %00001000
delay_ms(250)
 while porta.0 = 1
 delay_ms(50)
 wend
 
portb = %00010000
delay_ms(250)
 while porta.0 = 1
 delay_ms(50)
 wend

portb = %00100000
delay_ms(250)
 while porta.0=1
 delay_ms(50)
 wend

portb = %01000000
delay_ms(250)
 while porta.0=1
 delay_ms(50)
 wend

portb = %10000000
delay_ms(250)
 while porta.0=1
 delay_ms(50)
 wend

wend

end.


Este programita lo que debe hacer es un secuencial de luces, pero al precionar un pulsador conectado a la entrada A.0 deberia detenerse, y quedar encendido ese led, hasta que se suele el pulsador, ya que ahi seguira la secuencia de forma normal. Cuando lo paso al pic funciona el secuencial, pero puedo detenerlo con el pulsador en A.0......creo que puedo estar definiendo mal las entradas, pero lo hice como en un ejemplo, asiq ue no se que sera.......si me hechan una manito s elos agradeceria ;) y ahi les cuento......saludos :-)
........Los grandes espíritus siempre han encontrado una violenta oposición de parte de mentes mediocres.....

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Comenzando con Mikrobasic
« Respuesta #153 en: 11 de Marzo de 2007, 00:58:37 »
Hola yo usaria un programa mas bien tipo SELECT CASE, donde sin apretar el porta se esten barriendo los puertos del PORTB algo asi:


main:

trisb=0
trisa.0=1

 init:
  select case PORTA
     Case 0
          for i=0 to 7
              portb.i=1
              delay_ms(250)
              portb.i=0
               c=i
              delay_ms(250)
         next i
     Case 1
        delay_ms(250)
   end select


mas o menos asi si no con un IF, en teoria prendes el boton con un uno el del porta entonces cuando no esta apretado en el portb se barren sus puertos con un uno cuando aprietas el porta.0 el valor del PORTA cambia  1 y ahi hace una pausa como se supone que el micro se sale del CASE 0  se debe quedar encendido el LED. solo que cuando regrese al case 0 volvera desde el inicio.

Bueno es un pequeño empujon quisiera dar mas pero el tiempo no me lo permite.  Saludos


PD: si usas un pic con ADC asegurate de tener el porta digital
         
         




« Última modificación: 11 de Marzo de 2007, 01:05:33 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 navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Comenzando con Mikrobasic
« Respuesta #154 en: 11 de Marzo de 2007, 01:04:12 »
Esse é meu 3º post no FORUM (FORO) , então para aqueles que ainda não me conhecem,  sou brasileiro, então acho que a compreensão entre os idiomas sejá facil. Por isso escrevo em portugues,  aqui no Brasil há poucos forum iguais a este. Com tantas informações.

Estou tentando todos os programas em Basic , MIKROBASIC, PROTUES, PICBASIC, e verificando a parte boa e ruiim de cada um, porem tenho uma duvida, sei que este espaço é para MIKROBASIC, porem tenho uma duvida que é como configura o oscilador interno em todos os 3 software.

Desde já agradeço a ajuda.  (GRACIAS) :mrgreen:

Ivan Braga

Hola IVan en MKB cuando creas un proyecto te sale una ventana donde puedes habilitar los FUSES del PIC que estes usando.

En PBP tienes que añadir una linea al inicio del programa algo  como esto : @ DEVICE INTRC_OSC lo cual activa el oscilador interno del PIC

y en PROTON es con la palabra CONFIG
"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 rasec_1984

  • PIC10
  • *
  • Mensajes: 29
Re: Comenzando con Mikrobasic
« Respuesta #155 en: 11 de Marzo de 2007, 23:03:57 »
Gracias navaisimo....asiq ueda muy cortito, q buena idea ;) lo probare y te cuento

aunque de todas formas me gustaria saber que error cometi en mi programa, para asi no volver a cometerlo, de seguro es de sintaxis, pero no se que sera.....si alguien me ayuda se lo agradeceria.....saludos :-)....ah y otra cosa, yo utilizo el 16f628, no tiene entrada analogica, solo entrada para comparadores, esas entradas tambien las debo definir como entradas digitales para que me funcionen? solo eso....saludos
........Los grandes espíritus siempre han encontrado una violenta oposición de parte de mentes mediocres.....

Desconectado rasec_1984

  • PIC10
  • *
  • Mensajes: 29
Re: Comenzando con Mikrobasic
« Respuesta #156 en: 12 de Marzo de 2007, 04:40:31 »
uuhmmm no se que pasa.....definitivamente no puedo hacer funcionar las entradas. Hice el programita asi:

program secconled


main:

dim i as byte
trisb=0
trisa.0=1

 init:
  select case PORTA
     Case 0
          for i=0 to 7
              portb.i=1
              delay_ms(250)
              portb.i=0
              delay_ms(250)
         next i
     Case 1
        delay_ms(250)
   end select
  goto init
end.

suced que los led del puerto B hacen bien la secuencia, pero  no sucede nada con la entrada A.0, osea la llevo a 1 (5V) y no se detiene el loop (ose a las luces siguen con la secuencia) y si lo pongo a cero es lo mismo, osea, no tienen ningun efecto.......a lo mejor algun FUSE ( o fusible creoq ue le dicen) lo estoy activando o desactivando y no corresponde hacerlo......yo solo actico el MCLR para poder resetearlo, nada mas, alguien sabe si eso esta bien?....bueno, esperoq ue me ayuden a encontrar el error....adios ;)
........Los grandes espíritus siempre han encontrado una violenta oposición de parte de mentes mediocres.....

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Comenzando con Mikrobasic
« Respuesta #157 en: 12 de Marzo de 2007, 20:50:52 »
Si hay que desatcivar los comparadores, es con cmcon como desactivarlos  viene en el datasheet. si tengo un tiempito checo tu programa saludos.
"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 rasec_1984

  • PIC10
  • *
  • Mensajes: 29
Re: Comenzando con Mikrobasic
« Respuesta #158 en: 13 de Marzo de 2007, 09:42:15 »
Ok, le hechare un vistazo a eso y te cuento.......y muchas gracias nuevamente......y si alguien tiene otra sugerencia sera muy bienvenida......saludos  8)
........Los grandes espíritus siempre han encontrado una violenta oposición de parte de mentes mediocres.....

Desconectado rasec_1984

  • PIC10
  • *
  • Mensajes: 29
Re: Comenzando con Mikrobasic
« Respuesta #159 en: 28 de Marzo de 2007, 02:18:13 »
Toda la razon navaismo, se debe colocar cmcon=7 , asi se desactivan los comparadores, y el puerto A pasa a ser un puerto digital. Esto lo comprobe poruqe hice un programita con una entrada y una salida en el puerto A, si la entrada es 1, entonces la salida es 1, si la entrada es cero, entonces la salida es cero. Sin el cmcon=7 no funcionaba, pero al ponerlo, funciono muy bien. El problema es que al programita que puse mas arriba, aun cuando le pongo el cmcon=7, la secuancia de los led no se detiene, como deberia, ni usando el case, como me dijiste navaisimo......no se que sucede, podria jurar que el codigo esta bien, pero no se que pasa, si alguien le puede hacer un vistasito se lo agradeceria, ya que esto no me deja seguir aprendiendo......y muchas gracias navaisimo, me fue muy util tu dato ;).
........Los grandes espíritus siempre han encontrado una violenta oposición de parte de mentes mediocres.....

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Comenzando con Mikrobasic
« Respuesta #160 en: 28 de Marzo de 2007, 11:43:12 »
Antes de modificar  tu programa ya que tambien lo veo bien inserta dentro del for y antes del next un IF

        for i=0 to 7
              portb.i=1
              delay_ms(250)
              portb.i=0
              delay_ms(250)
         IF porta.0=1 then
             goto init
         endif
         next i


con eso debe de sacarlo del ciclo y si aun no queda cambiemos instrucciones.

Intenta con WHILE

Saludos
"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 Mazinyerz

  • PIC10
  • *
  • Mensajes: 15
Re: Comenzando con Mikrobasic
« Respuesta #161 en: 31 de Marzo de 2007, 00:23:12 »
Amigos tengo experiencia Programando microcontroladores PIC en Assembler y desde hace poco tiempo me ha interesado la programacion de estos micro en Basic, he trabajado un poco con el PBP, pero instale el Mikrobasic y me parece que tiene un buen ambiente de trabajo, pero vi algunas diferencias en cuanto a las instrucciones que con el PBP.

Quisiera aprender sobre el Mikrobasic por lo que quisiera que por favor me ayuden enviandome o diciendome donde puedo encontrar un Manual de este compilador y de sus instrucciones y algunos programas sencillos de ejemplo.

Muchas gracias...

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Comenzando con Mikrobasic
« Respuesta #162 en: 31 de Marzo de 2007, 12:17:16 »
El manual viene en la ayuda, una pequeña traduccion la encontraras en el www.elrebujito.es en la zona de descargas. No inlcuye los comandos eso aun me falta. Para ejemplos esta el Hilo de Ejemplitos MKB y Proteus aqui mis mo en le foro.

Saludos
"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 rasec_1984

  • PIC10
  • *
  • Mensajes: 29
Re: Comenzando con Mikrobasic
« Respuesta #163 en: 31 de Marzo de 2007, 18:00:22 »
Nvaismo, toda la razon, el programa ya me funciono, solo faltaba el cmcon=7, al parecer ese dia tenia mucho sueño y cometi un error en el programa, pero ya esta todo OK. Muchas gracias por el datito y los consejos, sin tu ayuda no hubiese podido avanzar en mi aprendisaje. Saludos;)
........Los grandes espíritus siempre han encontrado una violenta oposición de parte de mentes mediocres.....

Desconectado enricar883

  • PIC10
  • *
  • Mensajes: 18
Re: Comenzando con Mikrobasic
« Respuesta #164 en: 17 de Abril de 2007, 14:59:31 »
Hola a todos,

Estoy empezando a programar con el Mikrobasic, vengo del PBP. La primera pega en la frente. Tengo una placa diseñada con una conexion a una pantalla LCD. La conexion la hago con 8 bit. Los puertos que se utilizan son los puertos B para las 8 lineas de datos y el Puerto A para RS,RW,E.

¿Pregunta? ¿Como puedo modificar en Mikrobasic los puertos para utilizar la placa? porque en el manual viene solo LCD8_Init para configurar con con los datos a los puertos D y las señales de control a los puertos B.

Gracias a todos

Saludos

 


 

anything