Autor Tema: introducir variable por hardware  (Leído 2947 veces)

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

Desconectado er_clemen

  • PIC10
  • *
  • Mensajes: 42
introducir variable por hardware
« en: 30 de Julio de 2003, 21:07:00 »
¿Como podria introducir el valor de una variable entre 0 y al menos 250, por hardware con resolución de 1? He pensado en usar un microswitch de 8 pines e introducirlo en codigo binario, pero gasto 8 entradas (demasiadas).

¿Como podria hacerlo de forma economica y con menos entradas?

GRACIAS

Desconectado Elena2000

  • PIC24F
  • *****
  • Mensajes: 722
RE: introducir variable por hardware
« Respuesta #1 en: 31 de Julio de 2003, 06:20:00 »
Hola er_clemen

A ver... te cuento lo que yo pienso.
Lo que está claro es que para conseguir saltos de uno en uno de 0 a 250 te hace falta el microswitch de 8 pines. Ahora bien, sino quieres gastar las ocho líneas que
necesitas, puedes colocar un conversor digital/analógico y gastar una entrada analógica del PIC, y luego el PIC con el conversor analógico/digital que tiene dentro que lo desconvierta de nuevo a digital. Está claro que
para que obtengas la misma resolución el conversor del PIC tendrá que tener al menos 8 bits de resolución, obviamente.... No se si me explico...


Por cierto... qué PIC estás utilizando?...

Un saludo
Elena

Desconectado Sispic

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1700
    • winpic800
RE: introducir variable por hardware
« Respuesta #2 en: 31 de Julio de 2003, 11:27:00 »

tambien con un pcf8574 y lees el valor de sus entradas por I2c. usando solo 2 pines del pic.

salu2 .




Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
RE: introducir variable por hardware
« Respuesta #3 en: 31 de Julio de 2003, 22:24:00 »
Tambien puedes comunicarlo en serie, y empleas solo un pin!!!!
hay programas en asembler en www.todopic.com.ar

Suerte!
Norberto
Firmat - Santa Fe - Argentina

www.TodoPic.net

Solo se tiran piedras, al arbol que tiene frutos...

Desconectado er_clemen

  • PIC10
  • *
  • Mensajes: 42
RE: introducir variable por hardware
« Respuesta #4 en: 01 de Agosto de 2003, 00:29:00 »
Gracias a todos por responder:

¿QUE ES UN pcf8574?

Para comunicar los datos serie, a parte de utilizar los comandos de soft oportunos, a nivel de hard

¿no deberia utilizar (a parte del microswitch) un C.I. convertidor paralelo / serie o algo asi y utilizar su salida serie para enlazarla con un pin del PIC?

En ese caso, no gastaría entradas del PIC, pero si un dispositivo mas.

Os animo a seguir enviando mas ideas.

UN MONTON DE GRACIAS.

Desconectado pocher

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 2569
RE: introducir variable por hardware
« Respuesta #5 en: 01 de Agosto de 2003, 01:01:00 »
El PCF8574 es un integrado que hace las funciones de puerto de E/S de 8 bits y está basado en el protocolo I2C ¡¡¡ Se emplean solo 2 líneas del PIC: RC3/SCL y RC4/SDA !!!

Un saludo

Desconectado pocher

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 2569
RE: introducir variable por hardware
« Respuesta #6 en: 01 de Agosto de 2003, 06:23:00 »
Otro método: mediante un registro de desplazamiento paralelo-serie (por ejemplo 74LS165). Se utilizan 3 pines del PIC: uno como salida para controlar la carga en paralelo del registro, otro como salida para mandarle pulsos a la entrada de reloj del registro y el último pin como entrada de datos en serie que seran asignadas a una posición de memoria. Empalmando varios registros en serie se pueden meter en el PIC un montón de entradas. La velocidad de proceso en la toma de datos también es muy rápida ya que el registro puede trabajar con cloks de microsegundos.

Un saludo

Desconectado er_clemen

  • PIC10
  • *
  • Mensajes: 42
RE: introducir variable por hardware
« Respuesta #7 en: 05 de Agosto de 2003, 21:39:00 »
Hola amiguetes:

Gracias a todos por responder. Me quedo con el método del PCF8574. Un par decositas:

En el puerto I/O del PCF8574 irá conectado un Microswitch, en él pondré el código binario de 8 bits correspondiente a un número decimal. Este número será posteriormente asignado a una variable que utilizará el programa para operar con ella y preferiblemente guardada en la EEPROM interna del PIC (por si falla el suministro eléctrico).

De manera que tengo leer los 8 bits del Microswich conectado al PCF8574, enviarlos en serie, convertirlos a decimal y asignar este valor a una variable guardada en la EEPROM, que utilizará el programa.

He revisado los comandos I2CREAD y I2CWRITE, y los ejemplos txt, pero no termino de aclararme, sobretodo con el código "Control" de estos 2 comandos. ¿Alguna idea a cerca del código a emplear o donde puedo encontrar información?


 

anything