谁愿为我看看我的串口传送文件源码中的错误?谢谢!!

捕鲸叉 2002-05-01 12:14:05
写了个串口传送文件的程序,经测试却发现严重问题。
1。程序分为接收方程序和发送方程序。
2。发送方任意选定一个目录,则该目录下所有文件都将作为传送对象。
3。接收方指定一个目录,对方传送来的文件都将存储在该目录中
4。两个程序都分别有两个工作者线程,一个线程不停地读串口,并
将读来的程序放入一个缓冲区(先进先出对列);另一个线程
则分析从串口读来的数据(用临界区串行化对缓冲区的访问)
并根据分析结果向对方发送数据,采用的异步传输的方式。
工作过程如下:
A。接收方用定时器向对方发送命令符号 ‘O’
B。发送方接到命令后发送文件总数目给对方,字串用‘*’号作
结束符,形如 “865*”
C。接收方接到数目后,发送命令符 ‘I’
D。发送方将当前要传送的文件信息发送给对方,包括两个信息,
一个是该文件的相对路径与文件名,另一个是它的长度。发送
出的信息形如 “SubDirx\SubDir23\MM.jpg?2342*"
E。接收方创建文件,并根据其长度划分为以1000个字节为一组,剩下
的不足1000字节为最后一组;在接收每一组之前发送命令符‘N’
,而发送方在接到命令符‘N’后即发送一组数据,直至完成本文件
的传送。
F。回到步骤C,接发下一个文件。

现在发现的问题是:
1。没有完整发送成功过一次
2。发送程序似乎在不停吞噬内存,最后导致内存不足
3。接收方有时会抛出断言错误。
由于本人计算机功力浅(我是学机械出身的),现在沮丧极了,谁来帮帮我?
哪位好心的大虾愿意看看我的源码请留下EMAIL地址,我发源程序过来。谢谢。
...全文
29 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
捕鲸叉 2002-05-05
  • 打赏
  • 举报
回复
期待好心人
Hover 2002-05-01
  • 打赏
  • 举报
回复
这个网站有不少串口通讯的资料和源程序,或许可以帮你

http://roaringwind.best.163.com/index.htm

16,467

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧