当前位置: 技术问答>linux和unix
arm&c串口传输图片问题
来源: 互联网 发布时间:2016-04-09
本文导语: 我还是个初学arm和linux的新人,现在有个问题弄了好久都没有解决的方法,请各位老师指点一下. 我在arm板linux系统下做图片数据传输(网络上的源码我修改的),程序运行没有错误提示,现在我发送一副图片...
我还是个初学arm和linux的新人,现在有个问题弄了好久都没有解决的方法,请各位老师指点一下.
我在arm板linux系统下做图片数据传输(网络上的源码我修改的),程序运行没有错误提示,现在我发送一副图片往串口,串口返回的字节数和我的图片的字节数相同,初始化串口的时候c_cc[vtime]等两个属性都设0,现在用两台电脑串口互连,但是接收的时候,超级终端从arm上接收的图片数据总是不完全,总是接收到6000~7000的字节数,换了好几种方法来发送图片,接收程序不变,还是不能收图片完全,我用的是mmap函数把图片映射到地址中,把这个地址放在write函数中写到串口,图片大小已经确定,希望能得到各位老师的指点,这个问题现在不知道怎么解决了,并且有时候连结尾标志都发不出来.
我这里谢谢了~各位老师
期待中~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
一下是主函数源码,串口初始化程序是网络上的代码
img_addr = mmap(NULL,sb.st_size,PROT_READ,MAP_PRIVATE,img_fd,0);
if(img_addr == MAP_FAILED)
{ perror("map the image");
exit(1);
}
LastDataSize = sb.st_size % 506;
if(LastDataSize == 0) Pkg_num = sb.st_size / 506 ;
else Pkg_num = sb.st_size / 506 + 1;
DataSize = Pkg_num * 506;
f(LastDataSize == 0)
{
for(i = 0; i
我在arm板linux系统下做图片数据传输(网络上的源码我修改的),程序运行没有错误提示,现在我发送一副图片往串口,串口返回的字节数和我的图片的字节数相同,初始化串口的时候c_cc[vtime]等两个属性都设0,现在用两台电脑串口互连,但是接收的时候,超级终端从arm上接收的图片数据总是不完全,总是接收到6000~7000的字节数,换了好几种方法来发送图片,接收程序不变,还是不能收图片完全,我用的是mmap函数把图片映射到地址中,把这个地址放在write函数中写到串口,图片大小已经确定,希望能得到各位老师的指点,这个问题现在不知道怎么解决了,并且有时候连结尾标志都发不出来.
我这里谢谢了~各位老师
期待中~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
一下是主函数源码,串口初始化程序是网络上的代码
img_addr = mmap(NULL,sb.st_size,PROT_READ,MAP_PRIVATE,img_fd,0);
if(img_addr == MAP_FAILED)
{ perror("map the image");
exit(1);
}
LastDataSize = sb.st_size % 506;
if(LastDataSize == 0) Pkg_num = sb.st_size / 506 ;
else Pkg_num = sb.st_size / 506 + 1;
DataSize = Pkg_num * 506;
f(LastDataSize == 0)
{
for(i = 0; i