Yi kan ikke kompilere pass bruker VC (seriell kommunikasjon)

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

 
Hvorfor ville du vil bruke seriell port som dette?
Er du skriver en DOS-programmet?

Bruke seriell port i Windows kan gjøres slik:
http://www.tetraedre.com/advanced/serial.php (for ikke-overlappes = blokkering)
http://www.tetraedre.com/advanced/serial2.php (for overlappes = non-blokkering)
(Kode, dokumentasjon, ... Meget god referanse for seriell port programmering i windows!)

Antharax

 
Hvis du bruker Win 98 deretter inp (), _inpb (), _out (), _outb funksjoner (i stedet for inport og outport) er tilgjengelig i conio.h så skjønner ikke trenger å legge til noen lib eller DLL-fil.

 

Welcome to EDABoard.com

Sponsor

Back
Top