Implementación de tarjeta para adquisición de datos con PIC

Ahí en el código tienes la respuesta.
La variable "nivel" adquiere los datos del conversor, pero "temperatura" no.
Debería ser:
temperatura = (valor * 100) / 255;
 
cierto set_tris_a(1) no me percate de eso lo que pasa es que inicialmente la habia utilizado para una sola señal analogica .

porque dices que la variable temp no esta adquiriendo datos ?

if (comando==0x03)
{
set_adc_channel(2);
valor=read_adc();
nivel= (valor*100)/255;
printf(" Su temperatura es C : ");
printf("%u\r\n",temperatura);
delay_ms(1000);

alli le estoy indicando que tome los valores del puerto AN2 no es asi ?
Mensaje automáticamente combinado:


listooo ya loo vii en vez temperatura habia colocado nivell ..
ahora sii las tres variables me trabajan perfectamente .. muchass graciass dejo el archivo adjunto del codigo .. ahora paso a la siguiente etapa que es transmitir datos desde la pc a traves de labview para que mi pic detecte o complemente sus salidas digitales para el control de dichas variables. dicho de otra manera enviar intrucciones al pic desde la pc y ver como ingreso un set point a cada una de estas variables
Mensaje automáticamente combinado:

josemanuel, fíjate que tienes un botón en la caja de edición de mensajes, donde puedes poner el código fuente. Así, es más fácil de leer.
josemanuel, fíjate que tienes un botón en la caja de edición de mensajes, donde puedes poner el código fuente. Así, es más fácil de leer.
ya logre enviarlos con winrar pero cual es ese boton que me indicas ? quiza sea mas practico como dices .. es bueno saber de las dos maneras
Mensaje automáticamente combinado:

ahora paso a la siguiente etapa que es transmitir datos desde la pc a traves de labview para que mi pic detecte o complemente sus salidas digitales para el control de dichas variables. dicho de otra manera enviar intrucciones al pic desde la pc y ver como ingreso un set point a cada una de estas variables
 

Adjuntos

  • 4 ADC.rar
    537 bytes · Visitas: 12
Última edición:
Buenas tardes colegas como les va ? Bueno ya descargué la aplicación de labview 2013 y también le active su modulo VISA para la adquisición de datos, realicé el codigo en PIC C para la lectura de una entrada analógica, . realicé el circuito en proteus y por ultimo desarrollé el programa de adquisición en el entorno labview,

Resulta que al correr la aplicación de labview me genera pantalla azul lo cual hace que se me reinicie la pc, tengo otro circuito que lo que hace es transmitir un caracter al pic para encender un led y allí si me trabaja bien, pero cuando abro el otro archivo de labview, es decir, el que me lee una entrada analógica del pic , entonces allí no me trabaja y reinicia la pc. Alguien antes ha tenido éste problema con labview ? Con solo correr el labview me reinicia la pc, incluso sin haber corrido el programa de proteus

original.jpg

Éste es el pantallazo azul que me arroja la pc al correr el programa de labview en el cual estaría recibiendo datos a través del puerto serial rs232, ojo éste es un puerto virtual creado por el programa virtual serial port.

37043074_10209302435876959_576849056001687552_n.jpg
 
Última edición por un moderador:
buenas noches muchachoss resueltoo el problema .. del pantallazo azul . resulta que me hacia falta el bloque bits at port que va entre el visa y el visa read ... ahora si me lee la variable analogica pero no me la actualiza automaticamente el valor cuando regulo el potenciometro en proteus . en el terminal virtual de proteus si lo hace pero en labview no .. alguien sabra como refrescar los valores leidos a traves de labview ?
 
Buenas tardes, por aqui me encuentro para solicitar ayuda con la lectura de tres variables analógicas de acuerdo a la señal que me sea enviada desde labview . He logrado recibir los caracteres desde labview pero al transmitir las señales analógicas solo envia los valores 49 para nivel , 50 para presion y 51 para temperatura y no he logrado identificar porqué no me indica los valores de 0 a 100 como lo tengo establecido en la interfaz, aquí dejo adjunto los archivos ( proteus, labview, codigo y el hex)

proteus.png

ccs.png

labview.png

Probando a cambiar el código se logra obtener los valores de cada una de las señales analógicas pero al seleccionar cada uno de los canales el primer dato que envia es muy alto .. (116) y luego estabiliza al valor que tengo, gracias por su atencion.

Por casualidad alguien tiene algo de conocimiento de labview ?
 

Adjuntos

  • Nueva carpeta.rar
    42.8 KB · Visitas: 10
Última edición por un moderador:
Buenas tardes amigos por aqui me encuentro solicitando su ayuda para controlar este proceso el cual ya le hice su interfaz en labiew y ahora me toca hacer el control estableciendo un set point el cual sera enviado a traves del protocolo rs232 hacia el pic . pero estoy algo confundido al respecto ya que me encuentro enviando caracteres para el control manual y automatico pero no sabria como guardar el valor del set point establecido por el operador . como transmito estos datos. como guardar y modificarlos cada ves que asi se requiera . dejo adjunta la interfaz. el set point lo debo establecer desde el labview asi como los niveles minimos y maximos .. son muchos datos y se me ha complicado un poco INTERFAZ GRAFICA PERSONALIZADA 30 AGO.png
 
Atrás
Arriba