HP 34401A User Manual page 193

Hide thumbs Also See for 34401A:
Table of Contents

Advertisement

Chapter 6 Application Programs
RS-232 Operation Using Turbo C
RS-232 Operation Using Turbo C (continued)
#define IRQ4_int
#define IRQ4_enab
#define INT_controller
#define End_of_interrupt 0x20
void interrupt int_char_in(void);
void send_ctlc(void);
#define INT_BUF_size
char int_buf[INT_BUF_size], *int_buf_in
unsigned int
int_buf_count = 0;
unsigned char int_buf_ovfl
int main(int argc, char *argv[])
{
void interrupt (*oldvect)();
char command[80], c;
int i;
oldvect = getvect(IRQ4_int);
setvect(IRQ4_int,int_char_in);
bioscom(0,BAUD9600 | EVEN_7,0);
outportb(MCR,0x9);
outportb(IER,0x1);
/* Enable IRQ4 in 8259 interrupt controller register */
outportb(INT_controller+1,inportb(INT_controller+1) & IRQ4_enab);
do {
if(int_buf_ovfl) {
printf("\nBuffer Overflow!!!\n\n");
int_buf_in
int_buf_count = int_buf_ovfl = 0;
}
Continued on next page ’
194
0xC
/* IRQ4 interrupt vector number */
0xEF
/* IRQ4 interrupt controller enable mask */
0x20
/* 8259 Interrupt controller address */
/* Non-specific end of interrupt command */
9000
= 0;
/* Save old interrupt vector */
/* Set up new interrupt handler */
/* Initialize settings for COM1 */
/* Enable IRQ buffer, DTR = 1 */
/* Enable UART data receive interrupt */
= int_buf_out
= int_buf;
= int_buf, *int_buf_out = int_buf;

Hide quick links:

Advertisement

Table of Contents
loading

This manual is also suitable for:

34401-90004

Table of Contents