我有一个完整的计算仿真程序(船的运动仿真),有控制界面,计算模块和输出模块(自己编的,比较烂,我不是学计算机的,不过倒是功能全有了)
现在,老师希望把控制模块和输出模块分离出来,放到另外一台电脑上去,要求用RS232的串口通信
所以,我现在的状态是:
两台电脑,一台运行计算程序,一台运行控制模块和输出模块;
当控制模块发出控制指令,指令被传输到另外一台机器上的计算程序,计算程序开始运行,运行结果自行保存在内存中,当输出模块发出请求后,计算程序才把计算结果输出给输出模块。
请问,我需要采用什么方法实现?

解决方案 »

  1.   

    像仿真这类程序数据量能量会比较大,而且有很强的时效性,为什么不用TCP来做呢?
      

  2.   

    找些介绍串口编程的资料来看看你就清楚了
    就是收发消息
    没什么难的
    http://www.vckbase.com/document/viewdoc/?id=1734
      

  3.   

    这都都很简单,你不是计算机专业的,导师为什么要你做这个真是太为难了。
    第一个问题,实现双机通信的方法太多了,串口,网络都行,实现都很简单,而且代码到处都有,自己可以去下。第二个问题,有两种实现方法:
    A)你们不用封到什么板子上这么麻烦,你们把你们的核心算法,放到服务器上,把客户端卖给别人, 客户端把数据传到服务器上,服务器计算完了,把数据传回客户端显示,别人不给钱,就让他连不上。
    B)第二个就是你们导师提出来的方法,加一个硬件,这个硬件可以是任何形式,但我觉得最简单是用一个USB KEY,
    如果你不明白,你开通过网上银行吗,就是那个只有插上USB KEY才能转帐的那个小东西,没见过可以上网查一下。
      

  4.   


    谢谢回复了,谢谢了
    我是学船的,学船的做船的模拟器,也算合适。不过这些程序的东西实在是不懂得太多,几乎每次都是现学现编的
    关于双机通信,我已经在学习Rs232的双机通信了,谢谢你的建议;
    第二个问题,老师不想让我们的程序拿出去,散的太多了,服务器端的方法我们实现不了,没那条件。不过您建议的usbkey倒是很好的办法,我可以学习下
    再次感谢回帖
      

  5.   

    我猜你们老师分拆成两个部分想多卖钱或多申请经费是吧,呵呵,那用串口就太掉价了,至少也得是千兆网吧,还可以吹嘘下一步可以组网仿真舰队甚至海战!用tcp网络开发难度也不大。如果一定要用串口,百度pcomm lite少走弯路。
      

  6.   

    有界面,直接2个程序的界面贴个串口通讯控件就好了。
    先初始化串口信息,然后相应OnCommMscomm1(),事件收包就好了。贴代码给你就比较麻烦,去vckbase上去找下串口通讯,很简单的,别人文档说得很清楚。
      

  7.   


    如果仅就这个原因,也不用专门去设计硬件电路.找一下硬件加密狗.也就是类似楼上说的USB KEY.复杂的硬狗的和银行用的那种不同(银行只是做身份认证就行了,里面存个证书,程序主要在服务器上,服务器验证当前这个人是你就行了),硬件加密狗相当于一部电脑,有自己的CPU,硬盘和内存,它和你要做的单片机硬件原理上是一样的.一小部份代码可以写入加密狗的掉电存储区(也就是它的硬盘),只可写入,只在里面运行,不可复制出来.不同的狗有不同的功能,一些是身份认证,一些限时使用的(它自己有时钟),一些限制局域网内并发电脑连接数,也有可以远程更新的(比如延时使用或加减并发用户数).或是上述功能的一种或多种组合.一般它们已经够你用了,很少有人都门去设计硬加密的单片机电路.要据你的要求,几块钱到三四十块钱不等就行了.毕竟社会化大分工嘛.
      

  8.   

    有多种方法供你选择:
    COM
    socket
    mailslot
    pipe
    ……
      

  9.   

    成熟的解决方案有很多,看你的需求。
    PC 测运行起来的时候必须调用一个初始化函数,这个函数由板侧来实现。这样就可以控制PC侧的使用。
    当然如果想让你的控制足够强大,可以考虑使用硬件加密狗。