Mensajes recientes

Páginas: [1] 2 3 ... 10
1
Circuiteca, la biblioteca de circuitos y proyectos de uControl / Re: El Relojito
« Último mensaje por apollo2019 en Agosto 06, 2020, 07:19:57 pm »
no es igual basic que ccs
basic amplia mas la forma de construir el codigo, ccs lo simplifica
la mecánica del code es la misma. la forma de confeccionarlo es totalmente diferente en un lenguaje y en el otro.
otra cosa que note y me llevo mucho a confusion es la forma en como se declararon los puertos en el ejemplo del reloj.
en la primer revista aparece:
//y asignamos cada pin como E/S según corresponda
PORTA_TRIS = 0b00000000;  //1 = entrada 0 = salida
PORTB_TRIS = 0b11110001; //  idem arriba

de ese modo el compilador ccs vive tirando error de sintaxis

yo los seteo de esta forma y quedo bien
SET_TRIS_A (0b00000000);
SET_TRIS_B (0b11110001);

yo lo que no entiendo, si se supone que es un ejemplo para que los que estamos aprendiendo y entendamos como es.
por que lo ponen de esa forma, al fin y al cabo uno se termina confundiendo.

yo voy a confeccionar todo lo que tengo en ccs y después veré como sigue, me gustaría la ayuda de ustedes que son los que saben mucho del tema, particularmente a mi me confundió mucho la forma de declarar los puertos como figura en las primeras 3 revistas.
mi finalidad es aprender no enojarme.
2
Circuiteca, la biblioteca de circuitos y proyectos de uControl / Re: El Relojito
« Último mensaje por Leon Pic en Agosto 03, 2020, 02:01:17 pm »
Si bien está en CCS, ahí explica como son los pasos. Entendiendo los pasos, puedes hacer lo mismo pero en basic.
3
Circuiteca, la biblioteca de circuitos y proyectos de uControl / Re: El Relojito
« Último mensaje por apollo2019 en Agosto 02, 2020, 08:00:40 pm »
hola buenas noches.
voy a leer el articulo completo y voy a ir construyendo las rutinas.
lo dificil es hacerlo en basic en ccs hay mucha mas informacion sobre el bus i2c. si hay una forma distinta de armar la comunicacion entre ambos me gustaria saber asi aprendo. voy a armar el codigo solo del ds1307 con lo que tengo y por privado puedo ir subiendolo y me vas corrigiendo. te parece?
4
Circuiteca, la biblioteca de circuitos y proyectos de uControl / Re: El Relojito
« Último mensaje por Leon Pic en Agosto 02, 2020, 12:00:09 pm »
Yo de basic no se nada; y no tengo un manual para ello.

buen dia como estan
resolvi el tema de los botones y la grafica del dispplay, solo me falta iniciar el ds1307 si me dan alguna idea se los voy a agradecer.
gracias

En el datasheet del ds1307 está como es la comunicación. Mucho lo tenes resuelto ya que vas a trabajar con el módulo I2c, así que los tiempos de transmisión de bit, no te tenes que preocupar. Lo que si, debes armarte los datos a enviar.
Para leer, también tienes un orden para recibir los datos.

Te sugiero el siguiente link http://www.todopic.com.ar/foros/index.php?topic=13282.0 Es de un foro amigo, así que no hay problema en ponerlo aquí.
5
Circuiteca, la biblioteca de circuitos y proyectos de uControl / Re: El Relojito
« Último mensaje por apollo2019 en Julio 30, 2020, 10:52:05 am »
Hola!
Lamento no poder ayudarte, no tengo Proteus :P

Saludos!

buen dia, no no esta el protocolo de comunicacion i2c. usted lo pudo resolver?
6
Circuiteca, la biblioteca de circuitos y proyectos de uControl / Re: El Relojito
« Último mensaje por apollo2019 en Julio 29, 2020, 10:24:08 am »
Lamento infinitamente no poder ayudarte porque no tengo ni idea de programar ni en CCS ni en ningun otro lenguaje, si que es cierto que desde hace un año que empece con el relojito he ido aprendiendo algo, sobre todo en basic, pero muy lejos de poder hacerlo por mis propios medios, sigo insistiendo en mi empeño, pero aun no me funciona al 100%, si que he hecho algunas modificaciones sobre el codigo de prueba, pero de momento es lo que tengo, te pongo el archivo .hex con los arreglos que he hecho para que puedas comparar las diferencias, pero insisto esta en Basic.
Saludos

buen dia como estas. se que hace tiempo escribiste el post pero todavia tenes el codigo en basic del reloj. por que yo lo estoy haciendo y me falta iniciar el ds1307 y creo que lo tendira listo para armar.
si tenes el codigo te lo voy a agradecer.
7
Circuiteca, la biblioteca de circuitos y proyectos de uControl / Re: El Relojito
« Último mensaje por apollo2019 en Julio 29, 2020, 10:17:05 am »
buen dia como estan
resolvi el tema de los botones y la grafica del dispplay, solo me falta iniciar el ds1307 si me dan alguna idea se los voy a agradecer.
gracias
8
Circuiteca, la biblioteca de circuitos y proyectos de uControl / Re: El Relojito
« Último mensaje por apollo2019 en Julio 24, 2020, 11:16:16 am »
si por ahora basic pero el desafio va a ser ccs
lo que no entiendo es como agregar las interrupciones para poner en hora el reloj
9
Circuiteca, la biblioteca de circuitos y proyectos de uControl / Re: El Relojito
« Último mensaje por apollo2019 en Julio 24, 2020, 10:19:28 am »
buen dia. como estas
lo estoy haciendo en pic basic pro. el error de los ":" lo encontre, faltaba una rutina
lo que si me desconciertan son los botones o la forma de programar los mismos. se claramete que el razonamiento seria pulsador1 que en este caso seria trisb.4 tiene que incrementar las horas y el sub siguiente pulsador los minutos.
lo que no se me ocurre es como haerlo
gracias por la respuesta




Código: [Seleccionar]
'Xtal 4MHz, Sin reset, sin WDT

'PIC16f628A-4MHz





'-----CONFIGURO PUERTOS----------

AllDigital



'Configuro el portA:

TRISA.0 = 0  'DATA Segundero

TRISA.1 = 0  'CLOCK Segundero

TRISA.2 = 0  'DATA HH:MM

TRISA.3 = 0  'CLOCK HH:MM

TRISA.4 = 0  'Salida

TRISA.5 = 0  'DS1820



'Configuro el portB:

TRISB.0 = 1  'Entrada pulsos del DS1307

TRISB.1 = 0  'Salida, LEDs : en HH:MM

TRISB.2 = 0  'Salida SCA del DS1307

TRISB.3 = 0  'Salida SCL del DS1307

TRISB.4 = 1  'Entrada Pusador

TRISB.5 = 1  'Entrada Pusador

TRISB.6 = 1  'Entrada Pusador

TRISB.7 = 1  'Entrada Pusador



'------VARIABLES------------------

Dim i As Byte  'Variable auxiliar

Dim aux1 As Byte  'Variable auxiliar



Dim hhmmaux As Byte  'Variables auxiliares p/armar HH:MM

Dim hh As Word

Dim mm As Word



Dim col As Byte



Dim auxword1 As Word  'Variable auxiliar uso gral (WORD)

Dim aux As Word  'Variable auxiliar uso gral (WORD)

Dim aux1820 As Word  'Variable auxiliar

Dim comando As Byte  'Comando a enviar al DS1820

Dim tempe As Word  'Temperatura leida

Dim tempe1 As Byte  'PArte entera de la temperatura a mostrar

Dim tempe2 As Byte  'Decimales de la tempertatura a mostrar



Dim hora As Byte

Dim minu As Byte

Dim segu As Byte

Dim mile As Word  'milesimas de segundo

Dim flagseg As Byte

Dim flagmin As Byte







flagseg = 1

flagmin = 1

hora = 23

minu = 58

segu = 0

mile = 0



'-----CONSTANTES -----------------

Symbol ds1820pin = PORTA.5  'Puerto en que se conecta el DS1820

Symbol ds1820rw = TRISA.5  '1=Leer DS1820 / 0=Escribir DS1820



Symbol clock = PORTA.1

Symbol data = PORTA.0

Symbol clock7 = PORTA.3

Symbol data7 = PORTA.2

Symbol dospuntos = PORTB.1









For i = 1 To 80

data = 0

clock = 0

clock = 1

flagseg = 0

Next i



'--Inicializo interrupciones----

OPTION_REG.T0CS = 0

INTCON.T0IE = 1

Enable



'----Bucle principal del programa ---

loop:

'Muestro HH:MM



If flagmin = 1 Then  'una vez por minuto

Gosub muestrohhmm



For i = 1 To 80

data = 0

clock = 0

clock = 1

Next i

flagmin = 0

Endif



If flagseg = 1 Then

'escribo un uno en los segundos

data = 1

clock = 0

clock = 1

flagseg = 0

Endif



Goto loop



End                                               



On Interrupt

Save System

'Sumo una milesima de segundo

mile = mile + 1



'Si llegue a mil, incremento variables del reloj

If mile = 1000 Then  '3993 Then

mile = 0

segu = segu + 1

flagseg = 1



If segu > 59 Then

segu = 0

minu = minu + 1

flagmin = 1



If minu > 59 Then

minu = 0

hora = hora + 1

If hora > 23 Then

hora = 0

Endif

Endif

Endif

Endif



INTCON.T0IF = 0

Resume                                           









escribo7:

For col = 1 To 16

If aux.0 = 0 Then

data7 = 0

clock7 = 0

clock7 = 1

Else

data7 = 1

clock7 = 0

clock7 = 1

Endif

aux = ShiftRight(aux, 1)

Next col

Return                                           



'Esta rutina muestra HH:MM

muestrohhmm:

hhmmaux = hora / 10

aux1 = LookUp(175, 40, 157, 188, 58, 182, 183, 46, 191, 190), hhmmaux

hh.LB = aux1



hhmmaux = hora - (hora / 10) * 10

aux1 = LookUp(175, 40, 157, 188, 58, 182, 183, 46, 191, 190), hhmmaux

hh.HB = aux1



hhmmaux = minu / 10

aux1 = LookUp(175, 40, 157, 188, 58, 182, 183, 46, 191, 190), hhmmaux

mm.LB = aux1



hhmmaux = minu - (minu / 10) * 10

aux1 = LookUp(175, 40, 157, 188, 58, 182, 183, 46, 191, 190), hhmmaux

mm.HB = aux1



aux = hh

Gosub escribo7

aux = mm

Gosub escribo7



Return

Editado para Insertar el código.
HJ
10
Circuiteca, la biblioteca de circuitos y proyectos de uControl / Re: El Relojito
« Último mensaje por Leon Pic en Julio 24, 2020, 12:34:04 am »
Bueno, vamos por parte.

Creí que lo querías hacer en CCS pero lo vas a hacer en pic basic ¿verdad?

Pon el programa que vas haciendo así vemos donde está el error.
Páginas: [1] 2 3 ... 10