救命啊,上次的问题还是得不到解决,继续期待高人指点:
    
   单片机发出的是TTL信号,通过周立功的ZNE-10T以太网转换模块连到计算机。通信协议已经定好,命令都是通过十六进制的数据传送,单片机这边也已经调通,可以通过串口调试工具进行控制。现在我需要做的是通过PC经以太网来发送和接收单片机的数据,来控制单片机的行为,在网上找到的都是PC之间的通信,用cstring之类的格式。如何发送十六进制或者是二进制到ZNE-10T给单片机呢?用普通的tcp通信程序可行么?
   比如,现在pc和单片机的确认连接握手信号为0x5a 0x80,怎样子发给单片机然后单片机能够识别并且返回一个正确的确认信号呢?(单片机这边已经没问题了)

解决方案 »

  1.   

    《vc++/turbo c串口通讯编程实践》里面有串口调试助手源代码
      

  2.   

    可以。用socket接口。前提是你的单片机有tcp/ip协议栈。具体方法可以看看socket的几种模型
    我以前用的asynselect
      

  3.   

    templarzq(原谅我这一生不羁放纵爱自由,也会怕有一天会跌倒) : 能不能详细点啊,不是太明白
      

  4.   

    要先看你的单片机用什么以太网协议。一般用到的 TCP ,UDP 是很高层的协议了。我怀疑它是用最底层的以太网协议,自定义一个子协议来做的。
      

  5.   

    协议应该已经转好了吧
    那它是什么协议? TCP 还是 UDP ?
      

  6.   

    tcp,udp都可以,我选用的是tcp。 现在发送接收的问题就是,如何让发出去的和收回来后显示的都是十六进制的。
      

  7.   

    没用过你这种类型的以太网转换模块,都是用的moxa、研华的串口转以太网模块,它有一个IP地址,你在pc上装了驱动后,会在pc上虚拟一个串口出来,程序中是直接操作串口,只不过是操作的虚拟串口。