在线情况
1
  • 头像
  • 级别
    • 积分14
    • 经验2823
    • 文章55
    • 注册2007-04-09
    如果PC机发送的数据比较多,你程序中接满31个字节就发送数据,当你在用905发送数据的时候串口数据可能会丢。建议先把串口数据都接收完之后,再用905打包发送,有几包数据就发送几包。
    微控网感谢您的参与
    在线情况
    2
    • 头像
    • 级别
      • 积分14
      • 经验2823
      • 文章55
      • 注册2007-04-09
      串口数据都接收完成,905转发只能收到第一包数据?
      先要确定是否串口数据都已经正确接收,如果串口接收正常,那就调试905发射。
      固定数据包,59个字节以上,看是否能正常发射和接收。
      微控网感谢您的参与
      在线情况
      3
      • 头像
      • 级别
        • 积分14
        • 经验2823
        • 文章55
        • 注册2007-04-09
        void delay_us(uint x)
        {
           for(uint i=0;x>i;i--);  
        }
        函数写错了吧,你加大多少,程序都执行一次,i--后i=65535,跳出循环……
        905的电源不过压,不反接,一般坏不了
        微控网感谢您的参与
        在线情况
        4
        • 头像
        • 级别
          • 积分14
          • 经验2823
          • 文章55
          • 注册2007-04-09
          在905接收中断里面加串口数据发送?
          再开一个缓冲区,接收到的数据放在放在新缓冲区中,把串口数据发送放在在主函数中试下。
          先确定905是否已将两包或更多数据正常接收,如果905都没有接收完整,PC机肯定收到的完整数据包
          微控网感谢您的参与
          Powered by LeadBBS 9.2 .
          Page created in 0.0742 seconds with 5 queries.