找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

嵌入式开发里的直接进行嵌入式开发

[复制链接]
admin 发表于 2012-9-4 17:34:07 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
最直接的游戏开发模式是在手持设备提供的操作系统平台上直接
进行嵌入式开发。通常,这需要采用C/C++语言,因为操作系统一般都是由C/C++语言编写的,而且直接
提供C/C++语言作为低层接口语言。
C/C++语言作为一种运行效率高的语言,被多数开发人员掌握,通过C/C++的指针特性以及贴近硬件机能
的本质,运用C/C++开发能够最大限度的与硬件平台结合,充分利用硬件性能,实现高性能的图形显示。
但是仅仅利用C/C++自身的特性并不能够满足所有开发人员的需要,很多情况下,C 的函数库并不能够满
足需求,进行实际开发就必须调用各种预先准备好的函数库。实际上开发人员使用比较多的还是便携设
备操作系统提供的系统调用,只有充分利 用手持设备操作系统提供的功能才能够达到预定目标。
而在不同手持设备上,由于操作系统的不一致,原有的功能并不一致,导致不同设备的系统调用不一致
,导致使用C/C++进行开发在不同系统之间是不同的,这带来不同系统之间的移植问题。
而且,手持设备的开发本质上是属于嵌入式开发, 基于手持设备的硬件特性以及软件特性限制,基本上
还没有办法直接在便携设备上进行应用程序的编写,因为手持设备不是通用操作系统,没有通用系统中
提供的那 些丰富的工具。目前,那些直接能够在手持设备上应用的开发工具到目前为止只能够说是玩具
,功能比较简单,不过我们期望以后能够有真正功能强大的开发工具直 接运行在手持设备之上。
嵌入式开发的一般方式是在传统的PC上编写程序,通过PC上手持设备的模拟器 (一般厂家在提供开发工
具的时候也会附带这个软件)进行前期开发,在完成基本的测试以后,利用厂商提供的交叉编译工具在
PC上将代码编译成为可以在便携终 端上运行的二进制代码以后,然后通过某种机制下载到便携终端,在
终端上再次进行真实环境的测试,之后才能提供给用户。这种方式不仅仅用于便携设备的开发,基本上
所有的嵌入式系统都会利用这种模式进行开发,属于一种常见的嵌入系统的开发方式。
应用开发完成以后,我们的下一个目标就是将应用程序发布到实际用户的手持设备上。用户可以通过移
动互联网下载程序,或者通过手持设备的特有连接方式将程序传送到手持设备。实际上,下载到便携终
端的方式可以是通过有线方式或者是无线方式,大部分手机的J2me应用程序都可以通过类似于OTA(空中
下载,Over the Air)协议从应用服务器传递到手持设备上。一个类似的例子就是原来无线运营商通过无
线链路在空中传递SIM卡应用,实现STK功能扩展。
采用C/C++的这种开发方式可以针对特定的操作系统以及硬件特性进行设计和编码, 最大程度的利用底
层硬件的机能,实现高效的代码。但是每一个应用程序都仅仅针对特定平台,在不同手持设备平台之间
的移植需要花费大量的精力与时间,对于开 发人员推广其应用程序是一个不利的因素。
以Palm上和PPC上两种环境的程序移植为例,在移植过程中大概有一下方面需要进行修改:
API调用:每一个操作系统的API方式都不一样,类似分配内存这种工作,在两个操作系统上因为是不同
的内存管理方式,提供的API接口也就不一样。类似绘图这类的API,更是迥异。
进程间交互方式:PPC支持多进程,用户需要显式关闭程序,Palm不支持多进程,在进行程序切换的时候
,前一个程序的当前状态必须被保存然后关闭。
诸如此类的差别使在平台之间移植程序成为一个让开发人员耗费大量时间以及精力的事情。
本文章来自中国IT实验室http://embed.chinaitlab.com/
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-12-23 17:31 , Processed in 0.058034 second(s), 11 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表