Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

16/11/2010 #1


Como hacer reloj en mikrobasic
Un saludo a todos quienes conforman esta página, no se si alguien tiene el programa para hacer un reloj en mikrobasic ocurre que soy nuevo en el tema. Estaría muy agradecido por la ayuda gracias...
16/11/2010 #2


Debes ser mas Especifico en la parte de los componentes que PIC utilizas y como deseas mostrar tu Reloj
16/11/2010 #3

Avatar de Yobtox

hola a todos bueno no se si algen tiene un programa para controlar un timer con tiempos de variables con el pic 16f877a o 16f88a

m podej pasar tu programa pa controlar el timer
16/11/2010 #4


Claro el pic con el que quiero trabajar es el 16f877a y quiero hacerlo en un lcd de 16x2 y como lo había mencionado antes no tengo claro las sentencias para hacer el reloj y gracias por la ayuda.
17/11/2010 #5

Avatar de Nano24

Espero que te pueda servir de base esto, es una programacion que hice para un reloj usando un PIC16F84A me resulto mas facil con ese microcontralador y disponia de pulsadores para ajustar el tiempo, otra cosa es en lenguaje PicBasic pero creo yo que tiene algunas similitudes con Mikrobasic verdad, utiliza un LCD 16X2 el programa que hice, aqui te lo paso, ahh ten en cuenta la pausa en la subrutina de tiempo que la coloque a 1360 ms pero fue porque yo use un oscilador de 6 Mhz en esa parte pues te tocaria a ti ajustar bien los segundos haciendo prueba.




;************************************************* ****************************
; Reloj con el PIC16F84A ;
; y LCD 16X2 ;
;************************************************* ****************************

;********************** Definiendo Oscilador y Bits del LCD *******************;

DEFINE OSC 4 ;Usar oscilador a 4Mhz
DEFINE LCD_DREG PORTB ;Usar el puerto B del Pic como envio de bits
DEFINE LCD_DBIT 4 ;Bits desde el puerto B4 hasta B7
DEFINE LCD_RSREG PORTB ;Pata RS del LCD
DEFINE LCD_RSBIT 3 ;RS conectado al Pin B3 del Pic
DEFINE LCD_EREG PORTB ;Pata E del LCD
DEFINE LCD_EBIT 2 ;E conectado al Pin B2 del Pic

;********************* Dar valores a las variables a utilizar *****************;

HORAS VAR BYTE ;HORAS con peso de byte 255
HORAS=0 ;HORAS la igualamos a 0 para su inicio

MINUTOS VAR BYTE ;MINUTOS con peso de byte 255
MINUTOS=0 ;MINUTOS la igualamos a 0 para su inicio

SEGUNDOS VAR BYTE ;SEGUNDOS con peso de byte 255
SEGUNDOS=0 ;SEGUNDOS la igualamos a 0 para su inicio

;************************************************* ****************************

;****************************** Botones de Control ****************************;

SubirHoras var PORTA.1 ;Puerto A1 para incrementar horas
BajarHoras var PORTA.2 ;Puerto A2 para disminuir

SubirMinutos var PORTA.3 ;Puerto A3 para incrementar minutos
BajarMinutos VAR PORTA.4 ;Puerto A4 para disminuir

;************************************************* ****************************

PAUSE 2000 ;Pausar a 2 segundos para iniciar el programa
LCDOUT $FE,1 ;Limpiar el LCD antes de empezar

INICIO:

LCDOUT $FE,1,"-- Reloj PIC16F84 --" ;Mostrar texto en la primera line del LCD
LCDOUT $FE,$C0,DEC2 HORAS,":",DEC2 MINUTOS,":",DEC2 SEGUNDOS ;Situar lugar para horas,minutos,segundos en el LCD

IF SubirHoras=1 then ;Condicional IF si se cumple la funcion entonces
HORAS=HORAS+1 ;Sumar un 1 a HORAS
IF HORAS>23 THEN HORAS=0 ;Si es mayor a 23 pasa a 0
ELSE ;ELSE sino se cumple la funcion
GOSUB TIEMPO ;Ir a Subrutina TIEMPO
ENDIF ;Finalizar si "un condicional"

IF BajarHoras=1 then ;Condicional IF si se cumple la funcion entonces
HORAS=HORAS-1 ;Restarle un 1 a HORAS
IF HORAS<0 THEN HORAS=23 ;Si es menor a 0 pasa a 23
ELSE ;ELSE sino se cumple la funcion
GOSUB TIEMPO ;Ir a Subrutina TIEMPO
ENDIF ;Finalizar si "un condicional"

IF SubirMinutos=1 then ;Condicional IF si se cumple la funcion entonces
minutos=MINUTOS+1 ;Sumar un 1 a MINUTOS
IF MINUTOS>59 THEN MINUTOS=0 ;Si es mayor a 59 pasa a 0
ELSE ;ELSE sino se cumple la funcion
GOSUB TIEMPO ;Ir a Subrutina TIEMPO
ENDIF ;Finalizar si "un condicional"

IF bAJARmINUTOS=1 THEN ;Condicional IF si se cumple la funcion entonces
MINUTOS=MINUTOS-1 ;Restarle un 1 a MINUTOS
IF MINUTOS<0 THEN MINUTOS=59 ;Si es menor a 0 pasa a 59
ELSE ;ELSE sino se cumple la funcion
GOSUB TIEMPO ;Ir a Subrutina TIEMPO
ENDIF ;Finalizar si "un condicional"

goto inicio ;Volver al INICIO

TIEMPO: ;Subrutina TIEMPO

LCDOUT $FE,1,"-- Reloj PIC16F84 --" ;Mostrar texto en la primera line del LCD
LCDOUT $FE,$C0,DEC2 HORAS,":",DEC2 MINUTOS,":",DEC2 SEGUNDOS ;Situar lugar para horas,minutos,segundos en el LCD

SEGUNDOS=SEGUNDOS+1
IF SEGUNDOS>59 THEN SEGUNDOS=0:MINUTOS=MINUTOS+1
IF MINUTOS>59 THEN MINUTOS=0:HORAS=HORAS+1
IF HORAS>23 THEN HORAS=0
PAUSE 1360

RETURN
END
17/11/2010 #6


muy agradecido nano24 por tu ayuda me va a servir de mucho y ya lo voy hacer, cualquier resultdo comentare.
17/11/2010 #7

Avatar de Nano24

Holger espero que te sea de ayuda, es algo que hace un tiempo, tambien soy nuevo en el mundo de los microcontroladores... cualquier cosa comenta del caso.
20/11/2010 #8

Avatar de Yobtox

que Va...!
Huao esta rebueno tu programa nano24 pero en mikrobasic es diferente.. pero sirve de ayuda. bueno si algen quiere programas para el pic 16f877a 16f84a tengo algunos programitas sencillos para compartir e iniciarse en el mundo delos pics: como control de motores PAP unipolar y bipolar juego de luces semaforo inteligente, pero lo que no puedo hacer es el timer m resulta dificil controlar los tiempos en las variables. bueno tengo mas dominio en el control del puerto db25 y tambien serial cualquiera cosa tengo programas en Visual basic y net. y porfa si algen tiene el timer en MIkrobasic m lopasa....intentare hacerlo de todos modos gracias nano24.
20/11/2010 #9

Avatar de Nano24

Bueno de nada a los que han agradecido me da gusto saber que les sea de ayuda lo publicado, ahi dejo unas fotos de como quedo mi reloj me esforce por hacerlo bien, un saludo y si alguno sabe como compilar el PIC18F2550 con PicBasic se los agradeceria tambien que me da errores el programa.

No entiendo por que no subio las dos a la vez pero ahi esta la otra!
Imágenes Adjuntas
Tipo de Archivo: jpg 63378_1369403484645_1518464495_30820626_5088023_n.jpg (94,1 KB (Kilobytes), 75 visitas)
Tipo de Archivo: jpg 34399_1369404004658_1518464495_30820628_7450157_n.jpg (61,7 KB (Kilobytes), 67 visitas)
23/11/2010 #10

Avatar de Yobtox

algen tiene temporizador en mikrobasic
19/04/2011 #11


Yobtox dijo: Ver Mensaje
Huao esta rebueno tu programa nano24 pero en mikrobasic es diferente.. pero sirve de ayuda. bueno si algen quiere programas para el pic 16f877a 16f84a tengo algunos programitas sencillos para compartir e iniciarse en el mundo delos pics: como control de motores PAP unipolar y bipolar juego de luces semaforo inteligente, pero lo que no puedo hacer es el timer m resulta dificil controlar los tiempos en las variables. bueno tengo mas dominio en el control del puerto db25 y tambien serial cualquiera cosa tengo programas en Visual basic y net. y porfa si algen tiene el timer en MIkrobasic m lopasa....intentare hacerlo de todos modos gracias nano24.
me interesa controlar motores pap bipolares con el pic 16f877a. me puedes ayudar?.
20/04/2011 #12


para que el reloj tenga cierta precision, sino se desfasa varios segundos al dia ya que contar interrupciones no es muy preciso hay que emplear un reloj de tiepo real como el DS1307 o el PFC, si miras la ayuda de mikroe, en los proyectos de usuarios hay sendos ejemplos, estan en mikropascal pero es facil entenderlos para adaptarlos al mikrobasic.
08/06/2011 #13

Avatar de Yobtox

UNICOR:
bueno te mandare los programas para controlar el motor paso unipolar y bipolar en proteus y el codigo fuente en mikro basic para el pic 16f877a. pero con que lo quieres controlar con pic o en visual basic desde el puerto paralelo etc. cuantos motores quieres controlar?
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.