将WAV文件通过串口发送的问题。急!!!!

cminter 2003-09-19 11:39:55
用vc6.0编写一个程序将一个WAV文件分块(块的大小是128个字节)通过串口发送到一个前端设备里的FLASH ROM里。FLASH ROM按每块128个字节进行划分。
另外一个程序正好和这个程序相反。
希望各位大虾能告诉我。要原代码。谢谢
...全文
248 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
duyhui 2003-09-25
  • 打赏
  • 举报
回复
是用readComm和writeComm进行读写串口操作,异步操作函数如下:
// 从串行口输入缓冲区中读入指定数量的字符
DWORD CTerminalDoc::ReadComm(char *buf,DWORD dwLength)
{

DWORD length=0;

COMSTAT ComStat;

DWORD dwErrorFlags;

ClearCommError(m_hCom,&dwErrorFlags,&ComStat);

length=min(dwLength, ComStat.cbInQue);

ReadFile(m_hCom,buf,length,&length,&m_osRead);

return length;
}

// 将指定数量的字符从串行口输出

DWORD CTerminalDoc::WriteComm(char *buf,DWORD dwLength)

{

BOOL fState;

DWORD length=dwLength;

COMSTAT ComStat;

DWORD dwErrorFlags;

ClearCommError(m_hCom,&dwErrorFlags,&ComStat);

fState=WriteFile(m_hCom,buf,length,&length,&m_osWrite);

if(!fState){

if(GetLastError()==ERROR_IO_PENDING)

{

GetOverlappedResult(m_hCom,&m_osWrite,&length,TRUE);// 等待

}

else

length=0;

}

return length;
}
bileg 2003-09-20
  • 打赏
  • 举报
回复
up
cminter 2003-09-20
  • 打赏
  • 举报
回复
哎~~~~
cminter 2003-09-20
  • 打赏
  • 举报
回复
试过了,不行。
我用的是fread和fwrite进行文件的读和写的设的是二进制的读和写操作。缓冲区是char类型的。不过,这样,存的时候就出问题了,存的内容不对。
FlyYang 2003-09-20
  • 打赏
  • 举报
回复
你把读下来的数据写成文件不就可以了

---------
++C++
---------
cminter 2003-09-20
  • 打赏
  • 举报
回复
我也想用控件。但是,总工程师不同意。要我必须用API。其实,我读是没问题了。
可是要把它存下来就出问题了。找了很多地方都找不到相关文章
librastar2001 2003-09-20
  • 打赏
  • 举报
回复
不会写API用MSCOMM控件好了,以二进制流的方式读出WAV,然后发送到前端
http://www.csdn.net/develop/Read_Article.asp?Id=11045
coffeefish 2003-09-20
  • 打赏
  • 举报
回复
这只能靠你自己写了
不是所有人都会做过这个的

16,551

社区成员

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

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

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