• Lunes 7 de Julio de 2025, 04:58

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.


Temas - Ingeniero

Páginas: [1]
1
Microcontroladores ATMEL / Bus I2c
« en: Sábado 8 de Marzo de 2008, 11:47 »
Hola

Tengo un peuqeño problema y no se porque, a ver si alguno da con la respuesta, xd

la cuestión es que yo tengo el sensor AD7416 que posee comunicación i2c, sabiendo que el sensor esta bien, el programa del micro tambíen esta bien, que pongo resistencias de pull up en el bus, la lectura de la temperatura me la hace mal dando datos muy dispares,

 mi pregunta es si podria ser que necesite poner algun tiempo de retardo en la lectura del bus??

He detectado un error pero no se si ese es el motivo, puede ser que si pero necesito que alguin más entendido me de su opinion,

yo trabajo con un clock de 8Mhz y he configurado todo com si trabajara a esa velocidad, pero a la hora de programar el micro con el programa  lo he programado como si trabajara a 7,3Mhz,  

ese error puede influir en la comunicacion i2c????

gracias

2
C/C++ / Conversion Integer A Char
« en: Martes 15 de Enero de 2008, 23:26 »
Hola

Quiero utilizar la comunicacion Rs232 para comunicarme con un programa en labview, y necesito enviar los datos en forma de caracteres, pero yo trabajo un integer en el micro,
como puedo realizar dicha conversion para poder enviarla por la rs232 desde el micro al labview y viceversa como puedo transformar un caracter en un integer para poder trabajar en el micro.

gracias y saludos

porcierto utilizo el codevision

Tema solucionado, basta con utilizar lasfunciones atoi, puts, gets y alguna otra y ya esta

si no hay nada com odespejarse la cabeza para que vuelvas a ver el camino,xd

3
Microcontroladores ATMEL / Clock De Los Micros
« en: Jueves 29 de Noviembre de 2007, 13:11 »
Hola

quiero crear un circuito con un micro y me lio con el clock.

hay 4 patillas, XTAL1, XTAL2, TOSC1,TOSC2 del micro atmega16, que me lian

yo quiero que el micro trabaje a 7.328 Mhz pero no se en que patillas debo poner el critasl, no entiendo muy bien ingles y por mas que miro el datasheet me lio mas, si alguien me puede echar una mano se lo agradeceria

4
Microcontroladores / Interrupciones
« en: Viernes 5 de Octubre de 2007, 20:32 »
el problema que tengo es que la interrupcion la realiza "bien" ya que pone el flag de aviso a 1 pero no me salta a la rutina de interrupcion y por tanto no hace la interrupcion

5
Microcontroladores / Lcd
« en: Viernes 5 de Octubre de 2007, 13:35 »
Hola

alguien sabe( o me puede indicar ) si el lcd lm016  y el LCD jm161 son dos lcd compatibles??

por mas que busco no encuentro informacion

saludos

6
Microcontroladores / Control De Programa
« en: Sábado 29 de Septiembre de 2007, 15:51 »
Hola

Alguien sabe como puedo solucionar la perdida del control de programa,?, lo que me pasa es lo siguiente, se empieza a ejecutar bien, pero en una interrupcion, se me pierde el control del programa, es decir no vuelve a la direccion guardad en la pila sino a la guardada en el PCL.

saludos

7
Microcontroladores / Directiva De Tiempo
« en: Jueves 27 de Septiembre de 2007, 12:12 »
Hola otra vez

lo que me pasa es lo siguiente, yo tengo un programa que a 2MHZ funciona bien, pero quiero que trabaje a 4MHZ, cuando lo pongo a simular en proteus a 4MHz no hace nada, no se ve nada de nada, solo corre pero no presenta nada de los mensajes que deberia presentar, debo poner alguna directiva en el programa que le indique que trabaja  4MH? ¿como la pongo?

gracias

8
Microcontroladores / Problema En Mplab
« en: Miércoles 26 de Septiembre de 2007, 20:08 »
pues tengo un problema con el Mplab y es el siguiente,

el programa al compilarlo con el mplab, este se mete en una biblioteca que no deberia hacerlo, es decir si alguien utiliza las bibliotecas del libro microcontroladores pic16f84, concretamente las de retardos y las del bus i2c, pues bien yo cuando utilizo la del retardo (uan de ellas) se me mete directamnete a la del busi2c, y no se com solucionar eso ya que no hay ninguna llamada a busi2c,
a alguien mas le a pasado??

9
Microcontroladores / Pregunta
« en: Jueves 20 de Septiembre de 2007, 21:32 »
necesito alguna idea de como hacer lo siguiente

yo tengo un boton que si no esta pulsado quiero que haga un interrupcion pero si esta pulsado quiero que haga otro interrupcion

¿alguien me podria dar alguna idea?

10
Microcontroladores / Mplab
« en: Jueves 20 de Septiembre de 2007, 19:34 »
¿como se puede introducir un estimulo( cambiar una variable) cuadno estoy en un proceso de ejecutado??
yo cada vez que ejecuto y necesito cambiar un estado tengo que volver a compilar el programa para que haga ese efecto, hay alguan forma de hacerlo sin tener que compilarlo?

11
Microcontroladores / Problema Con Rutina
« en: Miércoles 19 de Septiembre de 2007, 14:58 »
tengo problemas con esta rutina de multiplicación y no se porque no funciona, los numeros los carga bien pero el producto no lo hace, la suma de las unidades tambien lo hace bien, alguien podria echarme un amano??

Arit_BCD_Operacion ;Realiza la operacion:(10 * Resultado Anterior + W)
   movfw   Arit_Decenas
   movwf   Arit_Multiplicando ;(Resultado Anterior) -->(Multiplicando)
   clrf   Arit_Multiplicador   ; Carga el multiplicador con 10.
   movlw   .10
   movwf   Arit_Multiplicador

Arit_Multiplica_8Bit      ; En principio el resultado es cero.
   clrf   Arit_Producto   ;obtengo un resultado de 16 bit (2 REG de 8bit)
   movlw   .8         ; Carga el contador de 8 bits.
   movwf   Arit_ContadorBits
   movf   Arit_Multiplicando,W   ; Carga el multiplicando.
   
Arit_MultiplicaBit8
   bcf      STATUS,C
   rrf      Arit_Multiplicador,1   ; Va a comprobar el siguiente bit del multiplicador.
   btfsc   STATUS,C      ; Si el bit del multiplicador es "1"
   addwf   Arit_Producto,1   ; suma el resultado parcial anterior más el multiplicando.
   rrf      Arit_Producto,1   ; Desplaza el resultado parcial un lugar hacia la
                     ; derecha, introduciendo un "0" por la izquierda.
   decfsz   Arit_ContadorBits,1   ; ¿Ha multiplicado los 8 bits?
   goto   Arit_MultiplicaBit8   ; Repite la operación.
   movf   Arit_Unidades,W
   addwf   Arit_Producto,1   ; (10 * Resultado Anterior + W)
   return


es una rutina de cogida de la pagina de microchip

gracias

12
Microcontroladores / Bus I2c
« en: Domingo 16 de Septiembre de 2007, 20:09 »
Bueno estoy intentano comprobar si el bus i2c me funciona bien y creo que no lo hace,
estos son los datos que quiero enviar
Dato   EQU b'00000000'
Dato2 EQU    b'00000001'
Dato3 EQU    b'00001100'

pero cuadno los transpaso a unos displays de 7 segmentos a traves del i2c me dan caracteres diferentes a los que me deberian dar

subo el programa

13
Microcontroladores / Interrupciones
« en: Domingo 16 de Septiembre de 2007, 19:42 »
Bueno, siguiendo con mi proyecto, despues de ver que funcionaba el lcd y el teclado, me toca meterme con las interrupciones  :unsure:  :unsure:

yo quiero activar las interrupciones de desbordamiento del timer y de cambio del puerto RB para lo que utilizo

movlw   b'10101000'   
movwf   INTCON   

despues en el servicio de interrupcion, miro quien me proboca esa interrupcion

btfsc   INTCON,RBIF   
call   INTERRUPCION_TECLADO
btfsc   INTCON,T0IF
call   INTERRUPCION_TIMER

lo que pasa es  que solo se me activa la del timer continuamente, y esa solo quiero que se active cuando no este pulsado el boton de 'modo teclado'

el timer debe actuar cada 2sg.

no se como solucionarlo, he probado de todo pero nada, siempre que se activa las interrupciones es la misma, alguien me echa una mano??

subo el programa

14
Microcontroladores / Problema Con Teclado
« en: Jueves 13 de Septiembre de 2007, 20:59 »
quiero implementar el teclado en el puerto D del pic16f877, segun el datasheet, debo poner PSPMODE a cero, para poder configurar los pines d D como quiera,  

deberia poner esto, pero si lo pongo me interfiere con el lcd y el boton

bsf   STATUS,RP0      
movlw   0x00
movwf   TRISE
movlw   b'11110000'      
movwf   PORTD
bcf        STATUS,RP0


subo el circuito y el programa

15
Microcontroladores / Lcd Y Teclado
« en: Jueves 13 de Septiembre de 2007, 11:58 »
alguien me podria hechar un amanno par uqe me funcione el LCD y el teclado

dejo todo el programa pero sólo me quiero centar en hacer funcionar el teclado y el LCD

trabajo con un pic16f877

16
Microcontroladores / Leer Pin
« en: Jueves 13 de Septiembre de 2007, 01:29 »
bueno os dejo un programa para ver si alguien le puede echar un vistazo, ya que a mi no me funciona, lo que quiero que haga es que encienda un lez conectada ala patilla D0 del micro siempre que el boton conectado a la ra3 este pulsado.

__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC   ;
LIST P=16F877               ;
INCLUDE <P16f877.INC>             
   
ORG      0                  
   
INICIO
   bsf    STATUS,RP0   ;banco 1
   bsf   TRISA,3      ;pin 3 de A como entrada
   bcf   TRISD,0      ;pin 0 de D como salida
   bcf     STATUS,RP0   ; banco 0
   goto    Leer_Tecla
Tecla
   movf         PORTA,W      ;copio lo de A en w
   movwf   PORTD       ;copio W en D
Leer_Tecla
   btfsc    PORTA, 3   ; si aprieto el boton ejecuto tecla
   goto    Tecla
   goto    Leer_Tecla    ;bucle
   END      


ya se que es facil pero por algo se empieza, xd

17
Microcontroladores / Clock en Proteus
« en: Jueves 13 de Septiembre de 2007, 01:04 »
yo quiero simular un programa a 4MHZ pero en proteus para poder ver algo debo bajar la frecuencia del reloj a la mitad, como puede solucinar esto??

18
Microcontroladores / Proteus
« en: Jueves 13 de Septiembre de 2007, 00:10 »
estoy simulando con proteus y algunas veces las patillas del micro (o cualquier otra) cuando lo simulo se quedan en gris, esto porque puede ser?

19
Microcontroladores / Lcd
« en: Jueves 13 de Septiembre de 2007, 00:06 »
alguien me podria decir si el LCD lm016l y el jm161a utilizan el controlador de hitachi para su funcionamiento, porque si utilizan el mismo, un alibreria hecha para el lm16l valdria para el jm160a no??

20
Microcontroladores / Librerias
« en: Miércoles 12 de Septiembre de 2007, 20:54 »
¿se pueden utilizar las librerias del libro "microcontroladores pic16f84 para programar un pic16f877??

21
Microcontroladores / Preguntas????
« en: Jueves 19 de Abril de 2007, 20:51 »
Hola a tod@s

Necesito asentar mi cabeza un poco, xd por eso os hago unas preguntas y comentarios

.- no podrias poner algun programa completo ya hecho, es para empezar a tener una idea de como hacer un programa

.- tengo informacion de las rutinas para controlar un LCD, un teclado, i2c, rs232, pero no se como enlazarlo todo????

.- tengo un sensor de temperatura y no se como hacer, habilito un interrupcion cada x segundos para pedir el dato de conversion de la temperatura o lo hago en el programa principal???

.- tb necesito enviar una serie de datos al sensor, habia pensado en hacerlo con una de las teclas que al pulsarse enviara los datos al sensor a taves del i2c

.- com puedo juntar rutinas en ensamblador con rutinas en C??

Gracias de antemano

22
Microcontroladores / Eleccion Del Pic Adecuado
« en: Lunes 2 de Abril de 2007, 20:37 »
Hola de nuevo a tod@s

Quiero controlar un sensor de temperatura, un lcd, un teclado y dotarle de un acomunicacion RS-232, el problema que tengo es que no se cual PIC elejir,¿alguien me podria echar una mano?

Gracias por todo!!!

23
Microcontroladores ATMEL / Controlar Sensor De Temperatura
« en: Lunes 5 de Marzo de 2007, 21:16 »
Hola a tod@s,

Soy un estudiante de ingenieria electronica y tengo  problemas con el software del proyecto.

Quiero controlar el sensor de temperatura AD7416, y cambiar una serie de parametros, para ello voy a utilizar un Atmega16, por un puerto le conecto el teclado, que lo utilizare para introducir los diferentes parametros, por otro puerto saldra el LCD.
El sensor utiliza la comunicacion I2C por lo que utilizare las patillas de SDA y SCL

para compilar utilizo el codevision.

me surguen muchas dudas de como hacerlo, por eso agradeceria a alguien que me guiara el como poder terminar el proyecto.

yo he creado dos funciones de la comunicacion i2c,pero no se si estaran bien, y no se como comprobarlo.

uc--> unsigned char

uc i2c_getchar (uc dir) // leer dato y generar Nack
 {
     uc u; // variable auxiliar
     i2c_start(); //genera el start
     i2c_write /dir|1); //scribi la direccion +RD (supuestamente lo hace esta              funcion  de codevision)
     u= i2c_read(0); // lee el dato y genera el nack
     i2c_stop (); // genera el stop
     return u; // devuelve el valor
}

void i2c_putchar (uc dir, uc, dato, uc reg) // escribir el dato
 {
     i2c_start(); //genera start
     i2c_write(dir&0xFE); //genera start
     i2c_write(reg); //add pointer
     i2c_write(dato);// escribir dato
     i2c_stop();  // gener el stop
}

void main (void)
{  
  variable= i2c_getchar (dir);
  registro=0x00;//reg. temperatura
  i2c_putchar(dir,dato, registro)
}


este es el programa que e hecho para poder leer los datos del sensor, si alguien podria echarle un vistazo se lo agardeceria.

tambien tengo problemas con el teclado o con el lcd que no me presenta nada en pantalla   y no se si es porque no me lee el teclado o porque no me presenta el LCD.

voy a seguir trabajando en esto a ver si consiguo que me funcione

tb utilizo el proteus para simularlo, cosa que aveces consigo que funcione y otras veces no

Gracias de antemano

Un saludo

Páginas: [1]