J
J_expoler2
Guest
/ * Navn: Eksempelkode Comm's Program - Polled versjon - termpoll.c * /
/ * Skrevet av: Craig Peacock <cpeacock(at)senet.com.au> * /
/ * Dato: Lørdag 22 februar 1997 * /
/ * Copyright 1997 CRAIG Peacock <cpeacock(at)senet.com.au> * /
/ * Se http://www.senet.com.au/ ~ cpeacock/serial1.htm * /
/ * Mer informasjon * /
#
include <dos.h>
#
include <stdio.h>
#
include <conio.h>
# define PORT1 0x3F8
/ * Definerer serielle porter Base Adresse * /
/ * COM1 0x3F8 * /
/ * COM2 0x2F8 * /
/ * COM3 0x3E8 * /
/ * COM4 0x2E8 * /
void main (void)
(
int c;
int ch;
outportb (PORT1 1, 0); / * Slå av avbryter - Port1 * /
/ * PORT 1 - Kommunikasjon Innstillinger * /
outportb (PORT1 3, 0x80); / * SET DLAB ON * /
outportb (PORT1 0, 0x03); / * Set baudhastighet - divisor klinke Lav Byte * /
/ * Default 0x03 =
38400 BPS * /
/ * 0x01 =
115200 BPS * /
/ * 0x02 =
57600 BPS * /
/ * 0x06 =
19200 BPS * /
/ * 0x0C = 9.600 BPS * /
/ * 0x18 =
4800 BPS * /
/ * 0x30 =
2400 BPS * /
outportb (PORT1 1, 0x00); / * Set baudhastighet - divisor klinke High Byte * /
outportb (PORT1 3, 0x03); / * 8 biter, ingen paritet, 1 stoppbit * /
outportb (PORT1 2, 0xC7); / * FIFO Control Register * /
outportb (PORT1 4, 0x0B); / * Slå på DTR, RTS og OUT2 * /
printf ( "\ nSample Comm's Program. Trykk ESC for å avslutte \ n");
do (c = inportb (PORT1 5); / * Sjekk om char er * /
/ * Mottatt.* /
if (c & 1) (x = inportb (PORT1); / * Da får Char * /
printf ( "% c", ch) / * Skriv ut Tegn til Screen * /
if (kbhit ()) (x = getch (); / * Hvis tasten trykkes, få Char * /
outportb (PORT1, ch) / * Send Char å Serial Port * /
) Mens (ch! = 27); / * Avslutt når ESC (ASC 27) trykkes * /
)denne første seriell port Ture?alle kan hjelpe meg pls
takk
/ * Skrevet av: Craig Peacock <cpeacock(at)senet.com.au> * /
/ * Dato: Lørdag 22 februar 1997 * /
/ * Copyright 1997 CRAIG Peacock <cpeacock(at)senet.com.au> * /
/ * Se http://www.senet.com.au/ ~ cpeacock/serial1.htm * /
/ * Mer informasjon * /
#
include <dos.h>
#
include <stdio.h>
#
include <conio.h>
# define PORT1 0x3F8
/ * Definerer serielle porter Base Adresse * /
/ * COM1 0x3F8 * /
/ * COM2 0x2F8 * /
/ * COM3 0x3E8 * /
/ * COM4 0x2E8 * /
void main (void)
(
int c;
int ch;
outportb (PORT1 1, 0); / * Slå av avbryter - Port1 * /
/ * PORT 1 - Kommunikasjon Innstillinger * /
outportb (PORT1 3, 0x80); / * SET DLAB ON * /
outportb (PORT1 0, 0x03); / * Set baudhastighet - divisor klinke Lav Byte * /
/ * Default 0x03 =
38400 BPS * /
/ * 0x01 =
115200 BPS * /
/ * 0x02 =
57600 BPS * /
/ * 0x06 =
19200 BPS * /
/ * 0x0C = 9.600 BPS * /
/ * 0x18 =
4800 BPS * /
/ * 0x30 =
2400 BPS * /
outportb (PORT1 1, 0x00); / * Set baudhastighet - divisor klinke High Byte * /
outportb (PORT1 3, 0x03); / * 8 biter, ingen paritet, 1 stoppbit * /
outportb (PORT1 2, 0xC7); / * FIFO Control Register * /
outportb (PORT1 4, 0x0B); / * Slå på DTR, RTS og OUT2 * /
printf ( "\ nSample Comm's Program. Trykk ESC for å avslutte \ n");
do (c = inportb (PORT1 5); / * Sjekk om char er * /
/ * Mottatt.* /
if (c & 1) (x = inportb (PORT1); / * Da får Char * /
printf ( "% c", ch) / * Skriv ut Tegn til Screen * /
if (kbhit ()) (x = getch (); / * Hvis tasten trykkes, få Char * /
outportb (PORT1, ch) / * Send Char å Serial Port * /
) Mens (ch! = 27); / * Avslutt når ESC (ASC 27) trykkes * /
)denne første seriell port Ture?alle kan hjelpe meg pls
takk