(原创)MinGW的嵌入式软件仿真调试平台

zenf_zhao 2007-07-21 12:33:37
笔者入门嵌入式C/C++软件开发时基于VxWorks 在通信产品中的应用,VxWorks 的API 接
口风格给笔者印象深刻,在后续嵌入式C/C++的开发中都留有VxWorks 的印记。入门阶段
笔者基于VxWorks 的Tornado VxSim 平台进行过大量嵌入式C/C++算法、思想、技巧学习
和研究。同时深感其每次编译均需要手动加载和函数命令运行很是麻烦,当时虽然机器配置
在1.6G/512M 内存仿真平台跑起来还是比较慢,同时为了研究嵌入式C/C++程序设计并不
是每个人都能够获取到VxWorks 的仿真环境使用。

要是能够基于Windows 平台和免费GNU/GCC 编译开发环境,能够提供嵌入式C/C++程序
设计的学习和讨论的仿真平台是一个不错的想法。从笔者的经验看,从事嵌入式C/C++程序
开发工作,除与硬件芯片打交道的底层驱动外,其余的工作均可以在仿真平台进行软仿真验
证,特别在研究嵌入式C/C++的程序开发的算法、思想和技巧的学习。基于以上考虑笔者对
Windows平台的API进行封装,基于MinGW的GNU GCC编译开发环境,提供类似VxWorks
的API 接口的仿真平台。(后文对该平台简称为MinGW仿真平台)

说明1:
在使用基于MinGW嵌入式软件仿真调试平台之前,需要首先安装绿色的MinGW C/C++编
译环境,参考笔者发布的文档《MinGW的使用指南》。
下载地址:
http://www.51emb.com/forum_view.asp?forum_id=2&view_id=2468
or http://bbs.cnttr.com/archiver/?tid-113142.html
备注A:学习完该文档后,您将有基于makefile 文件编译C/C++代码嵌入式软件开发基本概念。
备注B:如果MinGW 的下载过慢或者不想下载,可以联系笔者(zenf_zhao@163.com)提供MinGW 的刻录光
盘(非免费),同时包括本文档相关的测试代码以及额外的嵌入式软件开发相关笔者整理的珍贵资料。

说明2:
基于MinGW嵌入式软件仿真调试平台是笔者工作中做嵌入式软件平台对Linux、windows、
VxWorks、Cygwin 进行Porting时练手完成的一个业余结果。从笔者这几年从事嵌入式软件
开发的经验和思考看,其对嵌入式软件入门者有一定的帮助;对高手者咱是班门弄斧,建议
您直接从硬盘删除它。

成熟的企业一般均有自己的仿真平台,比如Huawei 某些产品基于VC++仿真,另一些公司
建立了命令行模式下vxWorks 仿真平台,还有有一些小公司直接基于VxWork 的集成开发环
境中vxSim 仿真,更多的有商业化的Linux 嵌入式软件仿真平台。如果您手头有VxWorks
的安装软件,也可以基于vxsim 进行仿真。这些基于企业级商业化仿真平台对成熟工程师来
说不是问题,对于入门者来说有一定难度,也不一定有这些商用的软件。如果您没有上述条
件,想进入嵌入式软件开发行业,可以试试笔者的MinGW嵌入式软件仿真调试平台,为您
开启嵌入式软件开发中三个最重要的概念:任务(Task),消息队列(MsgQ),信号量
(Semaphore)。(笔者工作中在写嵌入式模块,如芯片驱动模块、协议实现模块、普通应用层
模块总结出的典型三要素)
本软件包中提供的仿真平台库使用期限至2008年。如果您认为对您有帮助,2008 年之后仍
希望使用,很抱歉您不得不向笔者提供50 元的费用注册得到至2010 的正式版本。笔者亦是
一草根打工阶层,该平台也花费了笔者一定的劳动时间。

说明3:
笔者入行嵌入式软件开发这几年来,阅读过还算大量的嵌入式C/C++源代码,除一些专业的
以卖源代码为生公司其代码风格写的还算好之外(如(http://www.dataconnection.com/) Data
Connection,该公司主要卖路由、NGN 等通信软件源代码和服务);大部分的嵌入式软件公
司源代码风格有些糟糕;开源软件的代码更是如此,至少在笔者开来,对Linux内核源代码的风格不是很苟同。

说明4:
本软件包中提供的仿真平台库中有适量的源代码,采用sourceInsight 或者 UltraEdit打开时,
把字体配置为Courier New 格式,才可以看到正确的源代码排版和风格。

可惜这里不能传附件,
相关完整文档可参考:
http://www.51emb.com/forum_view.asp?forum_id=2&view_id=2762
...全文
255 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

19,504

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧