home *** CD-ROM | disk | FTP | other *** search
- /* rcvbl.c - receive chars test - Blaise version */
- #include "stdio.h"
- #include "asynch_1.h"
-
- #define CARD 2
-
- char combuf[1150] ;
- int nerr = 0 ;
- FILE *fopen() ;
-
- main(argc,argv)
- int argc ;
- char *argv[] ;
- {
- int c , err , n , t , speed ;
- char b ;
- unsigned status ;
- FILE *out ;
-
- if( argc < 3 )
- { printf(" no file name on command line \n");
- exit(5) ;
- }
- out = fopen(argv[1],"wb");
- if( out == NULL )
- { printf(" can't open output file \n") ;
- exit(10) ;
- }
- scanf("%d",&speed) ;
- init_a1(COM2,speed,2,0,2,&status,&status) ;
- err = open_a1(COM2,1000,100,0,0,combuf) ; /* set up for RS-232 use */
-
- while( (c = rcv_chr() ) != 'S' ) /* look for 'S' to start */
- { /* putchar(c) ; */ }
- eltime() ; /* start timing */
- c = rcv_chr() ;
- while( c != 'Q' ) /* stop when 'Q' received */
- { fputc(c,out) ; /* put each char into a file */
- c = rcv_chr() ;
- }
- t = eltime() ; /* stop timing */
- printf(" %d Ticks %8.2f Secs \n",t,( (float) t)/18.2) ;
-
- fclose(out) ;
- close_a1(COM2) ;
- }
-
-
- int rcv_chr() /* wait for and get next char */
- {
- int c , err , n ;
- char b ;
- unsigned status ;
-
- while( (err=rdch_a1(COM2,&b,&n,&status)) != 0)
- { ; }
- return( (int) b ) ;
- }
-