接收端:
1·打开com1端口
fd=fopen("/dev/ttys0",方式)
tcgetattr(fd,&oldtio)
3·串口结构体变量newtio清0.
bzero(&newtio,sizeof(newtio))
4·设置串口参数
主要设置比特率、是否忽略奇偶校验错误,启用正规模式等等。
接收端
1·打开com端口
2·取得当前串口值
3·串口结构体变量清0
4·设置串口参数。
编程原理程序1为查询通信方式接口程序,为一典型的数据采集例程。其中bioscom()函数初始化COM1(此函数实际调用BIOS
INT
14H中断0号功能)。这样在程序中就避免了具体设置波特率因子等繁琐工作,只需直接访问发送/接收寄存器(3F8H)和线路状态寄存
voidSend_Byte(uchar
i)
{
WDI
=
~WDI
TI
=
0
SBUF
=
i
while(TI==0)
WDI
=
~WDI
TI
=
0
}
void
Send_String(uchar
*string)
{
while(*string!=0)
{
Send_Byte(*string)
string
++
}
}
void
Com_A_Int()
interrupt
4
{
uchar
idata
status
status
=
SBUF
RI
=
0
if
(status
==
0x02)
Send_String("HELLO")
if
(status
==
0x55)
Send_String("THIS
IS
A
WELL
BEGIN!")
}
这是串口中断程序,其他的你可以自己根据实际情况编写