09-06-2012 02:52 AM - modifié 09-06-2012 03:00 AM
je voulais savoir comment faire pour envoyer un bit par labview sur le pic , j'ai réalisé le programme en mikroc et il marche correctement , le probléme en labview :
voila mon prog en mikroc
#include"USBdsc.c"
unsigned char read_buff[64] absolute 0x500;
unsigned char write_buff[64] absolute 0x540;
GET_Digital_Data();
GET_Analog_Data();
LCD_Write();
void interrupt(){
USB_Interrupt_Proc(); // USB servicing is done inside the interrupt
}
void main(){
CMCON = 0x07; // Disable comparators
TRISD=0x00; TRISB=0xFF; PORTD=0x00; TRISE=0x0F;
HID_Enable(&read_buff,&write_buff); // Enable HID communication
while(1){
//Read From USB
HID_Read();
PORTD=read_buff[0];
LCD_Write();
//Write To USB
GET_Digital_Data();
GET_Analog_Data();
HID_Write(&write_buff,17);
delay_ms(1);
//End Communication
if(!RE3_bit)HID_disable();
}
}
GET_Analog_Data(){ //ADC is 10 bit resloution
write_buff[0] = ADC_Read(0); //Read First 8 Bit(1Byte)
write_buff[1] = ADC_Read(0)>>8; //Read Last 2 Bit(2Byte)
write_buff[2] = ADC_Read(1);
write_buff[3] = ADC_Read(1)>>8;
write_buff[4] = ADC_Read(2);
write_buff[5] = ADC_Read(2)>>8;
write_buff[6] = ADC_Read(3);
write_buff[7] = ADC_Read(3)>>8;
write_buff[8] = ADC_Read(4);
write_buff[9] = ADC_Read(4)>>8;
write_buff[10]= ADC_Read(5);
write_buff[11]= ADC_Read(5)>>8;
write_buff[12]= ADC_Read(6);
write_buff[13]= ADC_Read(6)>>8;
write_buff[14]= ADC_Read(7);
write_buff[15]= ADC_Read(7)>>8;
}
GET_Digital_Data(){ //Binary Represntation of Switches Value
write_buff[16]= PORTB ; //0->255 decimal Value(1 Byte)
}
le 09-07-2012 08:43 AM
Bonjour,
Merci d'avoir posté sur le forum NI.
Vous trouverez sur ce lien une discussion sur la communication entre LabVIEW et un PIC qui pourra certainement vous aider.
Cordialement,
Nicolas M.
National Instruments France
Journées Techniques LabVIEW 2012 : du 27 septembre au 22 novembre
2 sessions en parallèle : Débuter avec LabVIEW - Développer avec LabVIEW
le 09-07-2012 10:12 AM
Merci Nicolas.M pour la réponse, mais vraiment il n'ya pa de chose pratique 🙂 , espérons d'avoir d'autres réponses plus détaillés et qui peut m'élaircir le phénoméne 🙂 ....une autre fois Merci infiniément Mr Nicolas.M 🙂
le 09-15-2012 05:51 AM
merci pour les réponses,mon microcontrôleur est le 18F4550 , pour developper mon application je veux utiliser le pilote USB Ni VISA
mon problème comment envoyer à microcontrôleur 1 logique dans le bit approprié