c#做无线电台信道的误码率检测,大家说说都有什么招吧

解决方案 »

  1.   

    串口接收时你有自定义的协议么?或者在SerialPort.ErrorReceived 事件中价格计数器
      

  2.   

    现在没使用自定义协议,SerialPort.ErrorReceived 事件中价格计数器是什么意思??
      

  3.   

    做过
    很简单,自己定义一个标准数据,电台的2端,一边手一边发。
    比如发送255个字节分别是0x01,0x02...0x255
    对方接受到连续的数据,查找0x01,看是否每次0x01之间都是完整数据,完整则表示一包完整。
    一般是1秒发n包(可设置),然后连续观测90秒,检查丢包数/总包数。至于怎样合理,每个公司不同要求了,我们要求还是比较严格。当然,从哪里开始判断、什么时候结束,还有些细节,你要考虑仔细点。
      

  4.   

    我这说的还不够详细?你问详细点?你问思路我就说思路,难不成我替你把工作做了?
    你一句具体点,扔谁知道你想具体知道什么?
    串口操作?看我博客
    http://blog.csdn.net/wuyazhe/category/695097.aspx
      

  5.   



    几行就可以的代码。好吧,不叫包,我说的包不是真正的包,真正的封包有头尾校验的,我的意思,就发几个字节,对方收。明白么?byte[] ttt = new byte[]{1,2,3,4,5,6,7,8,9,10};
    一边用SeiralPort.Write(ttt,0,ttt.Length);
    对方的程序看是否收到了这10个字节。不就完了么?
    误码率不就是(总数据长度-收到数据长度)/总数据长度
    这样么?
      

  6.   

    嗯嗯您的解释忒清楚了。发这边的偶明白的,我是想问收这边,read下来再干啥,循环比较每个字节?
      

  7.   

    一般测误码率要根据相应的协议去判断,
    以XX开始XX结束,有些是以和。
    主要看自己的协议标准
      

  8.   

    像mtestcom软件里面的那种误码率检测是怎么实现的,有人知道么。