• Sábado 4 de Mayo de 2024, 11:57

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Huguen_aus_Tirol

Páginas: 1 [2] 3 4 ... 13
26
Microcontroladores / Re: Ayudaa!! Sensores!!
« en: Martes 22 de Mayo de 2007, 08:04 »
Hola! Hace ya bastante habia utilizado el LM35. Estuve buscando el programa, pero no lo encuentro... de cualquier manera algo me acuerdo.
En primer lugar, recuerdo que habia amplificado la senal del sensor por 2; el sensor entrega 10mV/°C y multiplicando por 2 tenemos 20 mV/°C, ya mucho mas cerca de los  19mV por bit del conversor. Use un OP07, de bajo offset. Esto simplifica un poco las cosas en el programa. Tambien es bueno un buen filtrado.
En cuanto al programa, habia hecho varias mediciones y promediar. Con algo de trabajo se puede conseguir una indicacion en decimas de grado; pero en asembler es algo complicado (no imposible)
Como experiencia, tambien puedo agregar que con estos sensores (LM335/LM35) es bueno observar las indicaciones del fabricante y mantenerse dentro de las caracteristicas (voltage, corrientes, etc) y filtrado!!
Si encuentro la rutina te la envio...
Pero con senales analogicas fijate bien, a veces (por lo general) te da mas trabajo hacer un hardware que el programa ;)

Saludos

27
Microcontroladores / Re: Consulta Pic-usb
« en: Sábado 5 de Mayo de 2007, 21:51 »
Gracias Lalo! Ya estaré viendo los links que has dejado!
Veré un poco en teoría el tema y luego me largo a lo práctico... ya les iré comentando.
Nuevamente, muchísimas gracias por la ayuda!

Que pasen un buen fín de semana!!

28
Microcontroladores / Consulta Pic-usb
« en: Sábado 5 de Mayo de 2007, 01:17 »
Hola a todos!
Bueno, desde hace tiempo tengo una gran curiosidad con respecto a los PIC con puerto USB.
Estuve buscando en la red, y encontré bastante... pero igual siguen las cosas algo confusas. Si alguien sería tan amable de indicarme el camino, le estaría enormemente agradecido!
No es un tema urgente, pero he decidido a encararlo. Mi situación es la siguiente:

*Tengo los data sheet, como suelen aconsejar en este foro (quién será!?)
*En lo posible, la programación del micro en C (PCW)
*Por el lado de la PC, me defiendo mejor en VisualBasic; se que no es lo mejor que hay, pero hasta el momento me ha servido...
*De lo que es USB, solo se conectar el cable... :(
*No es urgente, pero me gustaría hacer algo antes de que el USB pase a la historia (o yo, que es lo más probable, jeje!!)

No quiero una solución en concreto, es decir que alguien me escriba el programa, y listo... Con los pasos a seguir, links, consejos, es más que suficiente...
En cuanto aclare las dudas, encargo el micro y me pongo manos a la obra!

Desde ya las gracias, y recuerden, primero a disfrutar del fin de semana, y luego el resto! ;)

29
Microcontroladores / Re: Ayuda Con Pic16f877
« en: Jueves 3 de Mayo de 2007, 00:46 »
Hola Marcelita, y bienvenida!
Me suena a trabajo práctico de escuela o facultad... estás empezando, y es algo bastante simple, pero no te lo voy a resolver, jeje!!
De cualquier manera, te doy una mano! En primer lugar, como siempre digo, consigue la hoja de datos, o data sheet; la encontraras en la página de Microchip...
El stopwatch del Mplab no te sirve de ninguna manera para generar o simular ningún retardo... sí te sirve para ver cuánto tarda el micro en realizar determinada tarea; eso debería saberlo el profe!
Para el retardo tienes dos opciones: un lazo, o un timer (temporizador), yo suelo usar el timer0 para estos retardos (ver el data sheet), pero si estás empezando, y para conformar al profe, hazlo con un lazo...
Configurar el puerto como salida... que difícil de explicar!! Si te fijas, verás que existen unos registros llamados TRISx, donde "x" puede ser A, B, ... , según puertos tenga el micro (data sheet!) Cada bit de ese registro está asociado a un respectivo pin del micro. Alguna vez viste que un 0 se parece a la letra O?, y que el 1 se parece a la letra I? Entonces si quieres que el pin sea salida, escribes un 0 ("O"utput), y si quieres que el pin sea entrada, escribes un 1 ("I"nput). Otra vez, data sheet!!
Intentalo!!, ya verás que es simple... y por supuesto, nos cuentas!! asi aprendemos todos ;)
Saludos, y aca estamos...

30
Soluciones de Hard y Soft / Re: Interfaz Entre 90 Sensores Y 30 Reles
« en: Lunes 30 de Abril de 2007, 19:49 »
La opción más rápida y comercial es con un PLC, hay algunas marcas buenas y no muy caras, pero con esa cantidad de entradas y salidas, necesitarás algunos módulos extra, lo que hará subir el precio...

Si prefieres hacer algo tu mismo, con seguridad que económicamente te saldrá más barato, pero te llevará más tiempo (que también es dinero!). Desde ya tendrás que pensar en un microcontrolador, y ver cual te conviene.
Lo más aconsejable, según mí, es comunicarte por el puerto serie. Es lo más simple, y te ahorras unas cuantas patas del micro.

Una pregunta: los 90 sensores, son digitales o analógicos?

Saludos!

31
Microcontroladores / Re: Diferencia Entre Mpasm Y Mplab
« en: Lunes 23 de Abril de 2007, 06:29 »
Hola!
El MPasm es el compilador, y se usa cada vez que quieras convertir tu código a hexadecimal. En cuanto al MPLab, es todo un entorno de desarrollo que ofrece Microchip; alli puedes editar, simular, compilar, etc tu programa, y hasta cargarlo en el micro (necesitas el grabador adecuado) Al compilar, el entorno lo que hace es llamar al MPasm...
Puedes escribir tu programa con cualquier editor de text, por ejemplo con notepad, y luego compilarlo con el MPasm.
Para el compilador solo hay que saber que parámetros o modificadores hay que pasarle al compilar, en la página de Microchip encontraras un pequeño pdf con esta información, solo busca por el MPasm y lo encontrarás. Si compilas desde el MPLab, no debes preocuparte mucho por estos modificadores...
Allí también encontrarás algo de info sobre el MPLab, está todo en inglés.

Saludos

32
Hola!
Me fije los dos primeros links... <_<
Segun mi punto de vista, si quieres gastar dinero comprando uno ya armado, gasta un poco más y te compras directamente de Microchip, creo que uno que soporta todos los dispositivos esta entorno a los €300. Y no es ningún clon...
La otra es armar alguno de los que estan por aqui, te llevará una hora y te costará muchísimo menos que U$20!! Yo tengo hace ya mucho tiempo el que publiqué aquí y me funciona de maravillas... ni siquiera pienso en comprar alguno!
Bueno, saludos... y piensalo bien! Te llevará más tiempo salir a comprarlo que armarlo tu mismo

33
Microcontroladores / Re: Convertidor De Protocolo (urgente)
« en: Viernes 13 de Abril de 2007, 00:39 »
Hola!
Bueno, hay micros de Microchip que tienen dos puertos serie; si bien no tengo la experiencia, sí he leído que cada puerto es independiente.
En cuanto al bit de paridad, los micros como el 876, disponen de un noveno bit que se puede usar como paridad o para direccionar varios dispositivo (común en RS485). De cualquier forma, la paridad la debes determinar por programa.
En la hoja de datos (www.microchip.com) encontrarás la información muy detallada; pero es posible hacerlo...
Bueno, espero que estas pocas líneas te sirvan de algo!
Saludos, y suerte en tu proyecto...

34
Microcontroladores / Re: Ayuda Con Bootloader
« en: Viernes 30 de Marzo de 2007, 16:21 »
No has pensado programar el PIC en ICSP? Yo siempre hago asi, no necesito estar cambiando el micro de la aplicación al programador, dispongo de toda la flash, y tambien tengo libre el puerto serie ;)
En este foro encontraras algun circuito para programar en ICSP... solo es cuestión de que lo busques...

Saludos

35
Microcontroladores / Re: 16f877a Y Ds1307
« en: Martes 27 de Marzo de 2007, 06:42 »
Hola!
Conectaste las resistencias de pull-up en SDA y SCL?

36
Microcontroladores / Re: Longitud
« en: Lunes 26 de Marzo de 2007, 18:13 »
El estándar 232 es algo limitado, algunos dicen 15 metros, otros 3 metros. Yo tenia (me lo olvide el otro día en una turbina :( ) un cable de unos 5 metros para comunicar la PC con los PLC por el puerto serie, y nunca tuve problemas.
La verdad que no escuché de repetidores RS232, pero sí hay conversores a RS422/485 y viceversa. Según mi experiencia, el 485 es la mejor opción en cuanto a distancia y simplicidad. También existe el CAN bus, pero es algo más complicado el protocolo...
Otra cosa, cualquier opción te da más velocidad que el RS232 ;)
Saludos!

37
Microcontroladores / Re: Tamaño Maximo De Memoria I2c Para Pics
« en: Viernes 16 de Marzo de 2007, 19:33 »
Hola Pagasux!
Muy bueno el link que has dejado, ya esta en mis favoritos! :kicking:
El zócalo para las memorias se consigue aquí, y cuesta apenas casi €3.00 (+ impuestos) :D Ahora estoy corto de tiempo, pero es un tema pendiente, así que apenas me libere un poco refloto un viejo proyecto...
Nos cuentas como te va en tu proyecto?
Nuevamente las gracias!

Saludos :hola:

38
Microcontroladores / Re: Escribir/leer En La E2prom
« en: Viernes 16 de Marzo de 2007, 12:37 »
Hola!
En la hoja de datos del micro encontraras en detalle como se hace, ejemplo incluido (solo tienes que copiar el código)

Saludos

39
Microcontroladores / Re: Tamaño Maximo De Memoria I2c Para Pics
« en: Martes 13 de Marzo de 2007, 23:24 »
Hola Pegasux! Perdón por el comentario, te confundí con otro compañero :whistling:
Sí, a mi también me interesa el tema de ampliar la memoria, tengo pendiente algo que tiene que ver con la captura de datos... y según mi punto de vista lo mejor sería una SD ; son baratas (memoria y zócalo :) ), y por lo que vi no tan complicadas de manejar. A lo mejor se complique con eso de las FAT... ya lo veremos! Usan interfaz SPI.
Se que hay unas librerías para implementar I2C en micros que no tienen el modulo, incluso ya lo he hecho en un 16F84; pero lo mejor es usar un micro que ya tenga el modulo.
Una vez encontré algo en una página de internet, pero mirando ahora no veo nada... quizá tengas algo más de tiempo... aquí te dejo el link

microchipc

Era algo relacionado con las memorias SD; se que esta, o estaba, en esta dirección, pero ahora no encontré nada (me fije rápidamente)

Nuevamente te pido disculpas... a veces me pierdo y necesito un reset :D

Saludos :hola:

40
Microcontroladores / Re: Tamaño Maximo De Memoria I2c Para Pics
« en: Martes 13 de Marzo de 2007, 19:51 »
Hola de nuevo :D
Que el micro sea de 8 bits o de 16 bits no tiene tanta importancia... pero si te aconsejaría mirar otro distinto al 16F84.
Las memorias que dices son I2C, así que busca uno que tenga incorporado este modulo para empezar. Mi consejo: la familia 18F...
La opción de la SD me parece buena, quizá la mejor; nunca lo he hecho, pero se que se puede con un PIC.

Otro consejo: recién estás empezando en el mundo de los micros, como a muchos de los que estamos acá nos ha pasado... tómate primero un tiempo hasta juntar un poco de experiencia y conocer mejor a los micros, y luego encara problemas como este ;)

Saludos

41
Microcontroladores / Re: Instrucciones Para Seleccionar Banco De Memoria
« en: Martes 13 de Marzo de 2007, 19:37 »
Hola!
Bueno, el 873 dispone de 4 bancos de memoria RAM, que debemos seleccionar adecuadamente para tener acceso a los registros que queremos. Esto se logra con los bits RP0 y RP1 del registro STATUS. Y como puedes ver (en el Data Sheet!) este registro está en los cuatro bancos...
Al seleccionar un banco, los otros quedan "no" direccionados, por decirlo de alguna forma.
Esto es así, porque al direccionar de formar directa alguna posición de RAM el "opcode" contiene los 7 bits de menor peso de la dirección, en tanto que los otros 2 bits de mayor peso están contenidos en los bits RPx (2^9 = 512 posiciones RAM) En caso del direccionamiento indirecto, es algo distinto, pero dejémoslo así...
Una mejor explicación encontrarás en la hoja de datos, sección 2.5 ;)
Si, en este micro puedes escribir en la flash. En el Data Sheet encontrarás en detalle como se hace...

Espero haber sido más o menos claro!

Saludos

42
Microcontroladores / Re: Activar Interrupción Pic16f84
« en: Viernes 9 de Marzo de 2007, 11:08 »
Si quieres mediante una senal externa reiniciar tu programa desde 0, no te olvides que el micro tiene una pata de reset... este pin esta ahi para usarlo cuando se quiera ;)
Hay unas banderas que te indican que tipo de reset fue el mas reciente.
Creo que podrias buscar por ese lado la solucion a tu problema...

Tengo que rectificar algo... la instruccion GOTO ocupa una direccion de memoria, necesita dos ciclos para ejecutarse... perdon por la equivocacion :whistling:

Saludos

43
Microcontroladores / Re: Activar Interrupción Pic16f84
« en: Viernes 9 de Marzo de 2007, 00:01 »
Hola Tania! Estabamos escribiendo al mismo tiempo!! :D
Un detalle: usas ORG 0x0 para el inicio del programa (vector de reset), luego usas un ORG 0x4 para las interrupciones, con un GOTO a algún lado... luego ORG 0x5.
La instrucción GOTO ocupa más de una posición de memoria, por lo tanto el error de sobreescritura al compilar (overwriting...)
Mi consejo:

ORG 0x0
GOTO main

ORG 0x4
ISR
;salvo STATUS y W (atención!! salvar registros sin modificar STATUS!! solución en microchip.com)
;veo que interrupción es y salto según cual sea con un CALL...
;retorno a la linea que sigue:
ISR_END
;repongo los valores de STATUS y W (sin modificar STATUS!! solución en...)
RETFIE

;y sin poner otro ORG...
main
;programa principal....

El compilador se las arreglará...
Espero haber sido claro..., y si no, siempre podemos hacer un reset y goto main... :P

Saludos :hola:

44
Microcontroladores / Re: Activar Interrupción Pic16f84
« en: Jueves 8 de Marzo de 2007, 23:43 »
Hola!
Me mareo un poco tu programa... programas en asembler o en C? :unsure:
Si lo haces en C, por lo general no deberías preocuparte de que las rutinas de interrupción se inicien en la dirección 0x4; el compilador lo hace automáticamente. Claro, debes indicar de que se trata de una interrupción...
Si lo haces en asembler, si debes indicar la dirección 0x4 (org 0x4). Al entrar a la interrupción (en asm) es importante guardar los registros STATUS y W, y restaurarlos al salir (Encontrarás un buen ejemplo en la hoja de datos del micro!).
Al inicio del programa, no importa que sea C o asm, debes habilitar individualmente las interrupciones y, por último, globalmente (activar GIE)
Para salir de una interrupción (asm) usas RETFIE, que es un RETURN más re-habilitar las interrupciones.
Mi consejo es que practiques un poco en asembler, prueba el clásico "hacer parpadear un led", con y sin interrupciones. Asembler te permitirá conocer un poco más al micro, y después encaras el C.
En lo posible, prueba sobre un PIC real, y no con el simulador; no porque sea más lindo  ver parpadear un led, sino por una cuestión de tiempo real ;)
Bueno, sigue probando que ya lo lograrás, y no olvides que aqui estamos para cualquier consulta...

Saludos

45
Microcontroladores / Re: Driver Max6960 Con Pic
« en: Lunes 5 de Marzo de 2007, 00:11 »
Hola Mikes! No es que te haya ignorado, vi tu mensaje ya el otro día... es que simplemente, en lo personal, no conozco estos max :(
Tampoco ando con demasiado tiempo en la semana, pero veré si puedo darte una mano.
De cualquier manera no desesperes, aquí hay mucha gente, digamos que todos los participantes avituáles, dispuestos a darte una mano en la medida que puedan :)

Saludos

46
Microcontroladores / Re: Problema Con Variable En Mpasm
« en: Sábado 3 de Marzo de 2007, 09:23 »
Hola!
No me había dado cuenta, pensé que usabas el 16F84!!! :whistling:
Para el 84 puedes definir tus variables a partir de la dirección 0x0C; pero para el 876 tienes que empezar desde la dirección 0x20...
Si te fijas, estas escribiendo en registros como p.e. T1CON... Veamos el caso del misterioso PASOF <_<  Lo declaras en la dirección 0x10, pero 0x10 corresponde a T1CON, y en este registro los bits 6 y 7 no están implementados, es decir al leer el registro estos bits están a 0 :rolleyes:
Otra cosa, las interrupciones se vectorizan a la dirección 0x04 (org 0x04)

Bueno, creo que ya está solucionado! Perdón por no haberme fijado antes que micro usabas

Saludos :hola:

47
Microcontroladores / Re: Uso Del Oscilador Interno Del Pic 16f88
« en: Viernes 2 de Marzo de 2007, 22:56 »
De nada, Rasec! Una alegría saber que funcionó... y gracias por hacérnoslo saber :)
Lo que dice Yuliette es más práctico, ya que no tenemos que estar configurándolo cada vez que vamos a grabar el micro.

Saludos :hola:

48
Microcontroladores / Re: Problema Con Variable En Mpasm
« en: Viernes 2 de Marzo de 2007, 18:40 »
Hola!
Estás simulando con el MPLAB y usas estímulos? No se que aconsejarte, ya que nunca use estímulos en la simulación; pero recuerdo que una vez leí algo de que no era muy conveniente <_<
Qué versión usas? Quizá te convenga actualizar a la última...
Eso que pasa es muy extraño, la verdad que no se que podría ser. Tal vez podrías adjuntar el programa, así lo revisamos (aprovecha que tengo algo de tiempo, jeje!!)

La verdad que es extraño...

Saludos

49
Microcontroladores / Re: Problema Con Variable En Mpasm
« en: Viernes 2 de Marzo de 2007, 11:37 »
Hola! en tu programa veo que declaras SENF como byte, y usas una instruccion de manejo de bits.
Deberia ser:

btfss SENF.x

donde x es el bit que quieres verificar

saludos

50
Microcontroladores / Re: Problema Con Variable En Mpasm
« en: Viernes 2 de Marzo de 2007, 08:25 »
Hola!
Bueno,vamos por partes, dijo Jack...
Si vas a usar solo 4 bits de una variable, la declaras como byte, y cada ves antes de usarla la filtras, por ejemplo

ANDLW 0x0F

Entonces, en este caso, eliminas el nibble alto de la variable (lo dejas en 0). Con esto evitas problemas por cualquier "basura" que pueda meterse...

Puedes trabajar con cualquier bit de cualquier byte usando las instrucciones de manejo de bits, incluso leer o (des)activar un pin de un puerto...

En asembler hay que prestar bastante atencion con el manejo de los bancos, ya que no se realiza automaticamente. Microchip tiene unas macros para la seleccion de los bancos, pero es lo mismo, ya que si no la escribimos nosotros mismos, no cambia de banco. Cuando seleccionas un banco, siempre se apunta a los registros de ese banco hasta que se vuelva a cambiar, no es necesario estar seleccionando el banco a cada momento; creo que en tu programa lo haces con frecuencia... Ojo!, no esta mal, pero puedes ahorrarte algo de memoria.
Un tip: si usas interrupciones, es bueno trabajar con las variables en un mismo banco, por ejemplo el 0. Entonces al entrar a la interrupcion, resguardas el registro STATUS, seleccionas el banco 0, y al salir restauras STATUS, volviendo automaticamente al banco en el que se estaba ;) Es mas, si no haces esto, tendras problemas...

Espero haber aclarado algo... ahora sigo con mi trabajo, jeje!!

Saludos

Páginas: 1 [2] 3 4 ... 13