01 例程
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <string.h>
#include <termios.h>
int set_opt(int,int,int,char,int);
void main()
{
int fd;
int nByte;
char *uart_path = "/dev/ttySAC3";
char *send_str = "\nYanling:I love you too.\n";
char *uart_input = "please input\n";
char rec_buff[512];
memset(rec_buff, 0, sizeof(rec_buff));
if((fd = open(uart_path, O_RDWR|O_NOCTTY|O_NDELAY)) < 0)
{
printf("%s open failed.\n",uart_path);
}
else
{
printf("%s open success.\n", uart_path);
set_opt(fd, 115200, 8, 'N', 1);
write(fd, uart_input, strlen(uart_input));
while(1)
{
while( (nByte = read(fd,rec_buff, 512)) > 0)
{
rec_buff[nByte+1] = '\0';
write(fd,rec_buff, strlen(rec_buff));
//write(fd,send_str, strlen(send_str));
memset(rec_buff, 0, strlen(rec_buff));
nByte = 0;
}
}
}
}
02 分析
定义数组rec_buff后,可以使用memset 来初始化,简单快捷。
接下来的操作,按照文件操作的方式进行配置串口。
1、打开文件
2、配置串口 set_opt函数
3、实现接收数据后,返回给电脑的功能。