微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > 基于ARM和WinSock的多人对战游戏平台设计

基于ARM和WinSock的多人对战游戏平台设计

时间:06-21 来源:电子设计工程 点击:



4 代码移植


4.1 WindowsCE简介

Windows CE是基于Win32 API重新开发的新型信息设备平台,具有模块化、结构化和基于Win32应用程序接口以及与处理器无关等特点。大量用户对于Windows操作方式和编程的熟悉,是Windows CE作为嵌入式操作系统迅速发展的最大的优势,也是选择的原因。

4.2 代码移植

安装WinCE5.0的标准SDK,在VS2008开发环境下创建智能设备的MFC工程,选择基于对话框或单文档的应用程序,并选择刚刚安装的标准SDK平台。工程创建完成后,将在Win32下开发的代码按同样的方式转移过来,然后编译,修改错误。

WinCE是Unicode环境,尽管WinCE支持ASCII功能来进行文件交换,但是WinCE的本地文件格式是Unicode。所以,要将字符串转换为UmcMe才能使用。另外就是代码移植过程中丢三落四的粗心错误。以下列举代码移植过程中遇到的问题及解决方法:

1)某些函数发生变化,不再识别ASCII码字符或字符串,例如MessageBox,其字符串参数必须经_T("")转换成Unicode;另外Cstring类不要轻易使用;
2)某些功能使用不同函数,例如整型转字符串型,由函数itoa变为_itoa_s;
3)智能设备项目中没有IP地址控件,用编辑框代替,多了些字符串拼接、转换的工作;
4)不要忘了使客户端与服务器端的端口号保持一致。

5 硬件调试及结果

5.1 PC与ARM板连接

1)平台连接

通过网线相连,然后指定网关地址和IP地址。指定方法如下:本地连接一>点右键看属性->双击"Internet协议(TCP/IP)"一>使用下面的IP地址,自己填写即可。特别注意,当两台机器直接用网线相连而不使用路由器时,必须同一个网关才可实现数据交换。可通过ping命令测试网络是否连通。

2)运行游戏

利用同步软件Microsoft AcfiveSync将开发的WinCE5.0下游戏程序传到ARM平台中,即可在上面运行。

5.2 ARM板与ARM板连接

与上述过程类同。

6 结论

经实际操作验证,这种多人游戏开发方式(多线程)使得资源占用率很低,S3C2410处理器完全可以胜任,整个游戏运行流畅。游戏平台可以通过有线方式互联,也可以通过无线方式互联,操作简单,使用方便。而且这种游戏平台具有很高的开放性,利用上述的开发框架可以轻易开发出更多更好玩的游戏。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top