EasyManuals Logo
Home>Agilent Technologies>Multimeter>34401A

Agilent Technologies 34401A User Manual

Agilent Technologies 34401A
242 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #201 background imageLoading...
Page #201 background image
printf("\nEnter command string:\n");
gets(command); strcat(command,"\n"); /* SCPI requires line feed */
if(command[0] == 0x19) send_ctlc(); /* If ^Y then send ^C */
else if(command[0] != q’) {
for(i=0; i<strlen(command); i++) {
/* Wait for DSR and transmitter hold register empty */
while(!(inportb(LSR) & inportb(MSR) & 0x20)) ;
outportb(THR,command[i]); /* Send character */
}
}
if(strpbrk(command,"?")) { /* If query then get response */
c = 0;
do {
while(int_buf_count && !kbhit()) {
putch(c = *int_buf_out++); int_buf_count--;
if(int_buf_out >= int_buf + INT_BUF_size) int_buf_out = int_buf;
}
if(kbhit()) {
if(getch() == 0x19) send_ctlc(); /* if ^Y then send ^C */
c = 0xa; /* Terminate loop */
}
}
while(c != 0xa);
} /* End if */
}
while(command[0] != ’q’); /* ’q’ to quit program */
outportb(IER,inportb(IER) & 0xfe); /* Disable UART interrupt */
outportb(MCR,0x1); /* Disable IRQ buffer, DTR = 1 */
/* Disable IRQ4 in 8259 interrupt controller register */
outportb(INT_controller+1,inportb(INT_controller+1) | ~IRQ4_enab);
setvect(IRQ4_int,oldvect); /* Restore old interrupt vector */
return(0);
}
RS-232 Operation Using Turbo C (continued)
Continued on next page >
6
Chapter 6 Application Programs
RS-232 Operation Using Turbo C
195

Table of Contents

Other manuals for Agilent Technologies 34401A

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the Agilent Technologies 34401A and is the answer not in the manual?

Agilent Technologies 34401A Specifications

General IconGeneral
BrandAgilent Technologies
Model34401A
CategoryMultimeter
LanguageEnglish

Related product manuals