/********************************************
*串口数据接收中断服务
*功能:接收串口数据
********************************************/
void get(void) interrupt 4 using 0
{
unsigned char i
if(RI)
{
for(i=0i{
while(!RI)
table[i]=SBUF
RI=0 //清标志位
}
}
}
再将用查询法数组中的数据循环发送给电脑
/********************************************
*串口数据发送
*功能:向串行口缓冲区发送n个数据
********************************************/
void send(void)
{
for(j=0j {
SBUF=Table[i] //将字符发送至缓冲区
while(!TI)//等待发送完成
TI=0 //清中断标志
}
}
如果你测试的是同一台机子上的两个串口,就连接好2个串口,然后打开两次串口调试助手,分别选好串口编号,设定波特率等参数,点连接,然后在发送区随便填点信息点发送,打开的2个串口调试助手的窗口能互相发送接收,就说明这两个串口能正常通信如果测试2台不同机子上的串口,就分辨在两台机子上打开串口调试助手, *** 作一样
如果只测试一个串口,RS422和RS485方式的是测不了的,RS232的可以短接2,3针脚,打开一个串口调试助手,选好串口编号和参数,发送信息能在接收区得到回复,证明该串口能工作
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)