📄 pccom.cpp
字号:
#include <bios.h>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
#include <dos.h>
extern void clrscr();
extern int getch();
void receive();
void send(char sendchar);
main()
{
char c,sletter;
int getvalue=0;
int temp=-1;
int status=0;
for(;;)
{
clrscr();
printf("\n 0---110\n 1---150\n 2---300\n 3---600\n 4---1200\n 5---2400\n 6---4800\n 7---9600\n");
getvalue=getch();
if((getvalue<'0') || (getvalue>'7'))
{
printf("\n Input error! try again please! \n"); //error message
getch();
continue;
}
else
{
printf("you have select the %c baud rate!\n",getvalue);
break;
}
}
temp = getvalue - '0';
switch(temp)
{
case 0:
bioscom(0,0x03,0); //设置通信参数为 com1 <110 N 8 1>
break;
case 1:
bioscom(0,0x23,0); //设置通信参数为 com1 <150 N 8 1>
break;
case 2:
bioscom(0,0x43,0); //设置通信参数为 com1 <300 N 8 1>
break;
case 3:
bioscom(0,0x63,0); //设置通信参数为 com1 <600 N 8 1>
break;
case 4:
bioscom(0,0x83,0); //设置通信参数为 com1 <1200 N 8 1>
break;
case 5:
bioscom(0,0xa3,0); //设置通信参数为 com1 <2400 N 8 1>
break;
case 6:
bioscom(0,0xc3,0); //设置通信参数为 com1 <4800 N 8 1>
break;
case 7:
bioscom(0,0xe3,0); //设置通信参数为 com1 <9600 N 8 1>
break;
}
for(;;)//判断是否Esc键
{
if (kbhit()) //若无键按下,则转接收
{
sletter=getche();
if(sletter==0x1b)//是ESC?是,则退出,并返回DOS
{
return 0;
}
else
{
printf("%c",sletter);
send(sletter); }
}
else
{
receive();
}
}
}
void receive()
{
int s;
char c;
s=bioscom(3,0,0)&0x100;
if(s)
{
c=bioscom(2,0,0);
printf("%c",c);
}
}
void send(char sendchar)
{
bioscom(1,sendchar,0);
delay(50);
}
/*void send(char *title)
{
int s;
do
{
bioscom(1,*title++,0);
while(1)
{
s=bioscom(3,0,0)&0x100;
if(s)
{
if(bioscom(2,0,0)==*title)
break;
}
}
}while(*title!='\0');
} */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -