简单的问题,为什么我的串口只能接收32个字符?哪里进行设置?

tanzuxiang 2006-10-18 06:32:18
上位机串口设置如下:
CommTimeouts.ReadIntervalTimeout = MAXDWORD
CommTimeouts.ReadTotalTimeoutMultiplier =1000;
CommTimeouts.ReadTotalTimeoutConstant =1500;

SetupComm(m_hport,512,512);

下位机发100个字符,但是为什么上位机第一次只能接收到32个字符,但是马上又会收到剩下的68个?

请高手指点,先谢
...全文
860 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
tanzuxiang 2006-10-21
  • 打赏
  • 举报
回复
我在上位机(WINCE)的串口接收端定义的接收缓冲区是unsigned char* RXbuff[128],按理说ASCII值在0与255之间是没问题的,但是当下位机(单片机)发0x81~0xFF之间的数据时,上位机不能正确接收,或者干脆接收不到,而发0x00~0x80之间的数据则接收没任何问题.
怎么回事?
快被弄晕了
high2003376320 2006-10-19
  • 打赏
  • 举报
回复
我觉得应该是发送函数的问题,如WriteToPort,如果这样的话,就只有重写这个函数了,使它支持其它文本方式,而不是仅仅ASCII文本
tanzuxiang 2006-10-19
  • 打赏
  • 举报
回复
上位机是wince系统,双字节的,但是当我的下位机发串口数据的时候只能ASCII小于128的字符能被接收,大于128的不能接收,为什么?有解决办法吗?
whiteclouds 2006-10-19
  • 打赏
  • 举报
回复
缓冲空间大小不对
nuaawenlin 2006-10-18
  • 打赏
  • 举报
回复
没遇到

估计和驱动的处理机制有关

18,357

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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