zhuoni0506 发表于 2011-3-20 11:00:13

请教RS232串口通信回调函数中void *callbackData的问题

想问一下,我用串口通信每次接收一个字符就响应回调函数,在回调函数中清空输入队列

int InstallComCallback (int portNumber, int eventMask, int notifyCount, int eventCharacter, ComCallbackPtr callbackPtr, void *callbackData);

我现在从串口接收到的是三个通道合成一路的数据,每收到一个字节我都要判定是哪个通道的,然后用stripchart显示出来,现在我写的程序没有设置void *callbackData,而是在回调函数ComCallbackPtr callbackPtr中使用ch= ComRdByte (int portNumber);,这样我发现会漏掉一些字节,而且程序运行反应很慢。

如果eventMask为LWRS_RXCHAR,那么void *callbackData该怎么设,那接受到的一个字符会自动保存在我设的void *callbackData吗?

希望有高手能为我解惑,谢谢!

胆生毛 发表于 2011-3-23 15:18:01

接收到的字节数吧?接收到多少字节响应一次,你设长一些,以免下次响应时覆盖掉上次。
页: [1]
查看完整版本: 请教RS232串口通信回调函数中void *callbackData的问题