Haz una pregunta
  Foros de Electrónica » Temas de Interés » Telemática y Comunicaciones
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

04/05/2012 #1


Comunicación serial con labview
buenas tardes a todos, soy estudiante de ing electrónica soy nuevo en labview y debo usar la comunicación serial con max232 y un pic18f452, debo usar una interface con labview para ver la grafica de temperatura y presión. solo se que hay que usar el visa serial pero no se mas agradezco quien me pueda orientar
04/05/2012 #2

Avatar de lpnavy

primeramente tienes que hacer que tu pic haga una comunicacion perfecta en tu pc lo puedes hacer desde proteus usando el emulador de puerto seria COMPIN para que se comunique al hiperterminal, si el envio de datos es bien procedes a diseñar tu interfaz en labview, usando el VISA, aqui hay una forma basica de como hacer la conexion.
17/11/2016 #3

Avatar de ruben90

Hola, voy a exhumar este tema. Realice la comunicación de un microcontrolador PIC a mi Laptop mediante comunicación RS232-USB (adaptador). Utilizo el LabVIEW para graficar la temperatura de un componente durante una hora, todo perfecto hasta aquí.

Estoy utilizando lo típico, un sensor LM35 y el módulo ADC del uC. Pero ahora debo monitorear dos temperaturas diferentes con sus respectivas gráficas. Por el momento solo tengo los diagramas y códigos para un sensor ya que no encuentro la lógica para adjuntar el otro.

Alguien tendrá una idea o documentación para cumplir mi cometido, gracias.

Diagrama LabVIEW para graficar un sensor LM35,

Diagrama en PROTEUS 8,


Código en MikroC,
Código:
unsigned int adc_value = 0;
unsigned int      ms_1 = 0;
unsigned short    temp = 0;
unsigned short  second = 0;
char error = 3;

float resolution = 0.0;
float temp_value = 0.0;

void interrupt(void) { //Delay de 1ms con TMR0
if(T0IF_bit == 1) {
TMR0 = 0x06;
     ms_1++;
if(ms_1 >= 1000) {
   second++;
   ms_1 = 0;
} T0IF_bit = 0;
}
}

void temperature() {
ADON_bit = 1;
delay_us(40);
  GO_bit = 1;
while(GO_bit == 1) {
} adc_value = (ADRESH << 8)
             + ADRESL + error;
       resolution = 2.5/10.23;
       temp_value = resolution * adc_value;
temp = temp_value;
}

void main(void) {
PORTA = 0;
PORTB = 0;
PORTC = 0;
TRISA = 0x09;
TRISB = 0;
ANSEL = 0x09;

ADCON0 = 0x80;
ADCON1 = 0x90;
ANSELH = 0;

   SPBRG = 12; //Velocidad de 9600 bps
SPEN_bit = 1;
TXEN_bit = 1;

  ms_1 = 0; //Resetea Delay
second = 0;

OPTION_REG = 0xD2;
    INTCON = 0xA0;

while(1) {
temperature(); //Calcula temperatura...

if(TRMT == 1 && second >= 1) { //Cada 1 seg envía inf.
TXREG = temp;
  second = 0;
} while(!TRMT);

}
}
18/11/2016 #4

Avatar de ruben90

Bueno, encontré la solución. Aquí lo dejo por si alguien lo requiere,

Código:
unsigned int adc_value = 0;
unsigned int    mseg_1 = 0;
unsigned short temp,second;

char error = 3;
char text [20];
float resolution = 0.0;
float temp_value = 0.0;

bit letra;

void interrupt(void) {
if(T0IF_bit == 1) {
TMR0 = 0x06;
   mseg_1++;
if(mseg_1 >= 1000){
   second++;
 mseg_1 = 0;
}  T0IF_bit = 0;
}
}

void temperature(void) {
ADON_bit = 1;
delay_us(40);
  GO_bit = 1;
while(GO_bit == 1) {
} adc_value = (ADRESH << 8)
             + ADRESL + error;
       resolution = 2.5/10.23;
       temp_value = resolution * adc_value;
temp = temp_value;
}

void main(void) {
PORTA = 0;
PORTB = 0;
PORTC = 0;
TRISA = 0x0B;
TRISB = 0;
ANSEL = 0x0B;

ADCON0 = 0x80;
ADCON1 = 0x90;
ANSELH = 0;

   SPBRG = 12;
SPEN_bit = 1;
TXEN_bit = 1;

OPTION_REG = 0xD2;
    INTCON = 0xA0;

while(1) {
temperature();
ByteToStr(temp, text);

if(TRMT == 1 && second >= 1) {
        UART1_Write_Text(text);
if(!letra) { UART1_Write(0x41);
             CHS0_bit = 1;
    } else { UART1_Write(0x42);
             CHS0_bit = 0;
} TXREG = 0x0D;
       letra++;
 second = 0x00;
} while(!TRMT);
  delay_us(10);
}
}
Imágenes Adjuntas
Tipo de Archivo: jpg Sin título.jpg (37,1 KB (Kilobytes), 9 visitas)
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Telemática y Comunicaciones

Todo lo relacionado con los Sistemas de Telecomunicación, la Transmisión de Datos y las Redes de Computadores.

Cerrar
Foros de Electrónica » Temas de Interés » Telemática y Comunicaciones

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.