int main()
{
char sendval,recval;
int fd,sendfg,recfg;
struct termios opt;//和串口各种配置信息有关的结构体termios
fd = open( "/dev/ttySAC1", O_NOCTTY|O_RDWR);//读写方式打开mini2440的串口1,并且不当做控制台
if (-1 == fd){
perror("open error:");
return -1;
}
tcgetattr(fd,&opt);//取得串口1的配置信息结构体
cfmakeraw(&opt);//将该结构体设置为原始模式,也就是只用来收发数据,具体把termios怎么配置可以查看相关资料
cfsetispeed(&opt,B115200);//设置输入波特率
cfsetospeed(&opt,B115200);//设置输出波特率
tcsetattr(fd,TCSANOW,&opt);//立即使配置信息结构体在串口1生效
sendval='a';
tcflush(fd, TCIOFLUSH);//清空输入输出缓存
sendfg=write(fd,&sendval,1);
printf("send ready\n");
if(sendfg==-1)
{
perror("send error:");
return -1;
}
recfg=read(fd,&recval,1);
if(recfg==-1)
{
perror("receive error:");
return -1;
}
printf("receive value:%c\n",recval);//将uart收发引脚相连,自发自收
close(fd);
return 0;
}
阅读(1913) | 评论(0) | 转发(0) |