最新日志

发表于:2008-4-14 16:19:18
标签:VxWorks  bootrom  USB  启动  

0

制作VxWorks U盘启动盘

rar对于X86平台,比较常用的手段是使用软盘来制作Bootrom启动盘,当然也可以制作硬盘启动。但随着硬件的发展,很多主机和目标机都已经没有软驱接口了,取而代之的是BIOS支持U盘的启动。如果能用U盘来替代传统的软盘,将给开发者带来便利,加快开发的速度。

下午做了一下实验,把过程总结下来,分享给大家参考

 

点击此处查看原文 >>

系统分类: 嵌入式   |    用户分类:    |    来源: 原创

评论(3) | 阅读(176)
发表于:2007-11-14 14:38:36
标签:手机  google  android  

0

Google涉及手机市场,这很可怕

大家已经看出来了,Microsoft已经不甘心只是占领台式机市场了。从2002年开始,SmartPhone和PocketPC不断的冲击着智能手机市场,逐渐的SmartPhone由于功能不够完善而退出,微软推出了Windows Mobile 5.0/6.0。市面上Windows Mobile 5.0/6.0层出不穷,大有统一智能手机OS的意思,仔细想想这是很可怕的一件事,所有的手机都是相同的OS,微软的想实现智能手机的一统天下!

然后,就在昨天,公司老总的预言终于成为现实,世界上最大的搜索引擎公司Google推出了自己的手机开发平台,Andriod,完全的JAVA手机,所有的应用都基于J2ME,这是更可怕的一件事情,手机的开发平台也有被统一的趋势!!!所有的应用都基于一个软件平台开发,标准行,兼容性,也许都是今后业界事实上的标准!

关注Andriod,大家可以关注http://code.google.com/android/

个人第一时间下载了一下,稍微尝试了一下,呵呵

点击看大图

点击此处查看原文 >>

系统分类: 3G与手机   |    用户分类:    |    来源: 原创

评论(0) | 阅读(594)
发表于:2007-7-13 9:59:03
标签:eclipse  Serial  Terminal  插件  

0

eclipse下Serial Terminal

基于eclipse框架,打造自己的开发工具,逐渐成为IDE业界,具体的讲是嵌入式IDE业界的一个潮流和事实上的标准。eclipse的插件机制和开源社区丰富的插件资源为我们打造IDE环境提供了便利。

在嵌入式交叉开发过程中,串口是使用频率很高的通道,无论是作为调试通道,还是作为应用程序进行数据传输的通道。传统的情况下,工程师会在主机端(该主机也作为IDE运行平台)使用“超级终端”、“串口助手”等工具,监视目标机串口并与之通信。

随着IDE集成度的提高,在IDE中集成“Serial Terminal”无疑会方便程序的调试,也使得“集成开发环境”这个词更符合它所表达的意思。

在eclispe.org的网站上,就找到这么一款插件:Target Management 。完全符合需求,还能提供更为高级的功能:Serial、SSH、Telnet。http://www.eclipse.org/dsdp/tm/

需要注意的是:TM2.0要配合eclipse3.3版本使用,并且需要RXTX对JRE进行一些扩展,使得JAVA可以操作串口。ftp://ftp.qbang.org/pub/rxtx/rxtx-2.1-7-bins-r2.zip

安装的步骤:

  1. 把RXTXcomm.jar从rxtx-2.1-7-bins-r2.zip中拷贝到“$JRE/lib/ext”
  2. 把rxtxSerial.dll拷贝到“$JRE/bin”
  3. 解压下载的TM-Terminal.zip包,到eclipse的安装文件夹
  4. 重启eclipse IDE,在“Windows menu—>Show View—>Other”中,就会找到“Terminal”的窗口

串口的配置和使用方法,我想就不必详细说了。目前在标准的eclipse3.3环境下,已经实验成功。由于我们的IDE暂时还在eclipse3.1平台的基础上,所以还没有在我们的IDE上进一步实验。

点击看大图

点击此处查看原文 >>

系统分类: 嵌入式   |    用户分类:    |    来源: 原创

评论(0) | 阅读(776)
发表于:2007-3-5 17:34:59
标签:VxWorks  Bochs  ATA  

0

VxWorks无法使用bochs的虚拟硬盘?

最近抽时间玩了一下Bochs,一个大家也许都不熟悉的虚拟机,当然SkyEye的成员想必会有所研究。

Bochs和大家熟悉的VMWare类似,可以生成模拟的硬盘,只要安装想到,很容易实现,我在上面也顺利安装了DOS7,可以辨认出改硬盘。

于是,是想能否把VxWorks放在上面:

  1. 虚拟软驱启动Bochs,使用的img文件,是ATA引导VxWorks的Bootrom
  2. 虚拟硬盘上,有事先存好的VxWorks映象文件
  3. Bootrom启动后,加载VxWorks出错,如下图
    点击看大图
  4. 此方法在真实目标机上,实验通过;但在Bochs上,就报如上的错误,请高手们交换意见

点击此处查看原文 >>

系统分类: 嵌入式   |    用户分类:    |    来源: 原创

评论(0) | 阅读(947)
发表于:2007-3-1 9:28:20
标签:CF卡  IDE  

0

CF卡替代PC机硬盘

我想有很多朋友们都是在使用PC机作为目标机进行嵌入式开发的。进行程序固化或使用文件系统的时候,会使用PC机硬盘进行数据存储,可能遇到问题是这样的:

  1. 使用大容量硬盘浪费资源,小硬盘现在难找
  2. 硬盘必须加固,禁不起颠簸
  3. 有些RTOS,不支持和Windows并存,这样硬盘就要专用
  4. 由于硬盘拆卸麻烦,不方便到主机上读取数据文件

经过实践,向大家推荐一款“IDE转CF卡的转换卡”:

我是在淘宝上淘到的,链接如下:
http://auction1.taobao.com/auction/0/item_detail-0db1-d8c7805450b950eec58f379c4d9dcb66.jhtml

我觉得,这种方式,解决了硬盘作为存储设备的弊端:

  1. CF卡容量在16M-1GB可选
  2. CF卡不怕颠簸
  3. CF卡作为开发专用
  4. CF卡拔插方便,通过读卡器就可以从主机浏览数据

这个卡做工不错,和世面上其他卡略有不通:直接是IDE的“母接口”,不需要通过IDE线,直接可以插在主板上固定。

因为是通过IDE连接,所以RTOS开发时不需要单独的CF卡驱动,直接作为IDE硬盘使用即可。这样,做VxWorks开发时就可以直接把CF卡当作硬盘,把镜像文件放在CF卡上了。

这篇文章,大家就仅仅认为是“菜鸟帮助菜鸟”吧

点击此处查看原文 >>

系统分类: 嵌入式   |    用户分类:    |    来源: 原创

评论(0) | 阅读(1043)
发表于:2007-1-31 20:38:49
标签:VxWorks  

1

VxWorks_rom不能启动的问题

现象:

软盘bootrom,网络或硬盘(CF卡)加载VxWorks(含APP),一切正常;
硬盘VxWorks_rom形式,就“+++++++++++++++++”不动了;

论坛上,遇到这个问题的朋友还是挺多的,但没有谁总结了方法,很是遗憾。
我想,可能是某个SIZE或ADDR不对导致的

http://bbs.eepw.com.cn/dispbbs.asp?boardID=3&ID=52570

EDN的高手,欢迎交流一些思路

 

点击此处查看原文 >>

系统分类: 嵌入式   |    用户分类:    |    来源: 无分类

评论(0) | 阅读(878)
发表于:2007-1-18 15:30:44
标签:VMware  VxWorks  

0

关于VMmare的一些实践和VxWorks_rom

最近在出差的空闲,也在帮客户解决一个问题:

BootRom,VxWorks和应用分别加载,一切正常;但合并为VxWorks_rom后,就不能启动了。
在VMware下,分别加载都失败了,这原因也许在于VMware,在于VMware模拟的显示部分。

分析原因:

1。普通应用合并后能启动,图形应用合并后就失败了。要找应用的原因。
2。VMware的显示部分,也许存在问题,或者我的应用要修改某些参数。

原因会通过我下面不断的实验和分析进一步清晰

在这里感谢网络上所有指导我使用VMware的朋友,在共享一篇VMware使用的文档
rar

点击此处查看原文 >>

系统分类: 嵌入式   |    用户分类:    |    来源: 整理

评论(0) | 阅读(1007)
发表于:2007-1-4 10:11:30
标签:bug  

2

【转载】如何编写更佳的bugreport

如何编写更佳的bug report
作者:KiKi 来源:个人博客

我们是否经常看到开发人员针对我们归档的bug report要求提供更多的信息?我们是否经常需要在bug report归档后花更多的时间去研究那个问题?我们是否经常从开发人员那里听到在他们那边难以重现bug并且需要即刻提供“可重现的步骤”?广义上来说,我们与其花更多的时间在这些问题上还不如投资更多的时间来测试系统。问题出在bug report的质量上。这里介绍一些如何改进并达到完美bug report的建议。

Bug report的目的

当我们发现一个缺陷时,我们需要把它告诉给开发人员。Bug report就是这种沟通的媒介物。Bug report的主要目的是让开发人员亲眼看到这个错误。如果你不能和他一起以在他面前制造出那个失败,那么就需要给他们足够多的指引以便他们能够自己制造出那个失败。Bug report就是解释在期望结果和实际结果之间的差距并且详细的说明如何重现那个场景。

在发现缺陷之后

◆ 只有当你确信你已经发现一个bug的时候开始起草bug report,不要在测试结束或每天结束之后。那样,你可能会遗忘掉一些东西。更糟的情况是,我们可能会忘掉那个bug。

◆ 花一些时间去诊断你正在报告的缺陷。想想可能存在的原因。可能到最后你会发现更多的缺陷。在你的bug report中说说你的发现。开发人员将不仅仅对你使他们的工作变得轻松而感到高兴。

◆ 在开始读你的bug report之前抽出一些时间来。你可能会感觉到象重新编写报告一样。

摘要

Bug report的摘要是你bug report给读者的第一印象。你提交的bug的命运很大程度依赖于你的bug report能否吸引读者。原则就是每个bug应该有一个简单有趣的摘要。它可能会听上去象编写一个优秀的勾起注意的广告活动。但是随后,没有什么意外。一个好的摘要应该不超过50到60个字符。而且一个好的摘要不应该承载任何对bug主观的表达。

语言

◆ 不要在bug report中夸大缺陷。同样,也不要太轻描淡写了。

◆ 不管bug是多么的令人讨厌,别忘了是bug令人讨厌,而不是开发人员。永远不要冒犯开发人员的努力。使用委婉些的说法。“混乱的UI”可以被温和些改为“不正确的UI”。这样开发人员的努力将会得到尊重。

◆ 保持简单诚实。你不是在写散文或文章,因此使用简单的语言

◆ 在编写bug report的时候记住你的目标读者。他们可能是开发人员,其他的测试人员,经理,或者在一些情况下,甚至是客户。Bug report应该可以被所有的人理解。

可重现的步骤

◆ “可重现的步骤”的流程应该是合乎逻辑的。

◆ 清楚的列出前提条件

◆ 写下平常的步骤。例如,如果一个步骤要求用户创建文件并且为它命名,不要要求用户命名为“Mihir’s file”。最好命名为好像“Test File”一样的文件名。

◆ “可重现的步骤”应该详尽。例如,如果你想用户在Microsoft Word里保存一个文件,你可以要求用户到File菜单并且点击Save子菜单项。你也可以只说“保存文件”。但是记住,并不是所有的人都知道如何在Microsoft Word中保存文件。因此最后遵守第一种方法。

◆ 在一个干净的系统里测试你的“可重现的步骤”。你可能会发现有些步骤被遗漏或是毫无关系的。

测试数据

尽力编写普通的bug report,开发人员可能没有权限访问你的测试数据。如果bug是和一组特定的测试数据相关,在你的bug report上附带上它。

截屏

截屏是bug report中一个十分必要的部分。一个图片胜过一千句话。但是不要把在每个bug report里附带没有必要的截屏变成一个习惯。理想的来说,你的bug report应该是足够有效的使开发人员重现问题。截屏应该只是验证的一种方法。

◆ 如果你要在bug report里附带截屏,要确保那些图片不是太大的,使用jpg或gif的格式,而不是bmp格式

◆ 在截屏上写上注释以指出问题所在。这将帮助开发人员一眼就可以马上定位问题。

严重程序/优先级别

◆ 在设置bug report的严重程序之前应该全面的分析缺陷的影响程序。如果你认为你的bug具有很高的优先级应该被修复,在bug report中证明这点。应该在bug report的描述部分指出这个理由。

◆ 如果bug是来自上个内部小版本或版本回归的结果,那么发出警报。象这种bug的严重程序可能是低的,但是优先级别应该是高。

日志

在bug report里附上日志或日志的摘录片断。这将帮助开发人员轻松地分析且调试系统。多数情况下,如果不附上日志而且在开发人员那边又很难重现问题的话,他们将会把bug report打回给你并要求附带日志文件。

如果日志文件不太大的话,举个例子,大约20到25行,你就可以把它贴在bug report里。但是如果它比较大的话,把它做为附件贴在bug report里,否则你的bug report会看上去象个日志。

其他信息

◆ 如果你的bug是随机出现的,只需在你的bug report中说一下就可以了。但是不要忘记归档它。你总是能够在你发现它们之后的任何时间里增加准确的步骤。这也将在其他人提交这个问题时解救你,特别是当那个问题比较严重时。

◆ 在bug report中写下错误信息,特别是当错误信息有编号的时候。例如,来自数据库中的错误信息。

◆ 在bug report中写下版本编号和内部小版本编号

◆ 写下问题可以被重现的平台。准确的说明问题不可重现的平台。同样也要理解问题在特定平台上不可重现和没有在某个平台上测试之间的分别。这个可能会造成混淆。

◆ 如果你遇到几个问题却有一样的结果,只需写一个bug report。问题的修复可能只是一个。同样,如果你在不同的地方遇到相似的问题,且要求同一种修复方法,但是在不同的地方,那么就要为每一个问题书写单独的bug report。每个bug report对应一个修复。

◆ 如果可以重现bug的测试环境是开发人员可以访问的,写下访问这种设置的详情。这将帮助他们节约安装环境的时间以重现你提交的bug。

◆ 你决不能坚持关于bug的任何信息。在bug被修复之前由于低效的提交bug而引起的开发人员和测试人员之间不必要的交互只是浪费时间。

点击此处查看原文 >>

系统分类: 软件开发   |    用户分类:    |    来源: 转贴

评论(1) | 阅读(997)
发表于:2006-12-31 9:50:38
标签:无标签

2

u-boot在44B0上的移植实践(1)

首先感谢在网络上所有u-boot移植的资料,感谢那些blog的主人,感谢Google,让我顺利上手,在今后的实验过程中出现问题,还要依靠你们。

今天的日志,主要记录第一次make出现的两个常见问题。

No.1  按照大部分文章的向导,我做了最基本的实验:
# make distclean
# make B2_config
# make
在make的过程中,出现:
isystem /usr/local/arm/bin/../lib/gcc-lib/arm-linux/3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv4 -mtune=arm7tdmi -msoft-float -mabi=apcs-gnu -Uarm -Wall -Wstrict-prototypes -c -o hello_world.o hello_world.c
cc1: invalid option `abi=apcs-gnu'
在网上查到博客“senglen.cublog.cn ”,有如下的解决方法:
出错的文件是/cpu/s3c44b0/下的config.mk:将
PLATFORM_CPPFLAGS +=$(call cc-option,-mapcs-32,-mabi=apcs-gnu)
改成:
PLATFORM_CPPFLAGS +=$(call cc-option,-mapcs-32,$(call cc-option,-mabi=apcs-gnu),)

No.2 修改了第一个错误后,继续make,出现了如下的报错:
make[1]: *** No rule to make target `hello_world.srec', needed by `all'.  Stop.
make[1]: Leaving directory `/home/mort/src/targa/u-boot/u-boot-TOT/examples'
make: *** [examples] Error 2
还是参考了博客“senglen.cublog.cn ”,有如下的解决方法:
打开 examples/Makefile   
    119 $(LIB): .depend $(LIBOBJS)
    120         $(AR) crv $@ $(LIBOBJS)
    121
    122 %:      %.o $(LIB)
    123         $(LD) -g $(EX_LDFLAGS) -Ttext $(LOAD_ADDR) \
    124                 -o $@ -e $(<:.o=) $< $(LIB) \
    125                 -L$(gcclibdir) -lgcc
    126 %.srec: %
    127         $(OBJCOPY) -O srec $< $@ 2>/dev/null
    128
    129 %.bin:  %
    130         $(OBJCOPY) -O binary $< $@ 2>/dev/null
把126行和129行改为:
     %.srec: %.o
     %.bin: %.o
继续make,顺利make出u-boot.bin

点击此处查看原文 >>

系统分类: 嵌入式   |    用户分类:    |    来源: 整理

评论(3) | 阅读(1753)
发表于:2006-12-30 9:53:55
标签:Linux  gcc  ARM  

1

【Linux新人】搭建交叉开发环境

尽管网上有各种的教程,尽管在各位达人看来这是极为简单的事情,但作为一个新人,还是有值得总结的地方。

1。下载arm-linux-gcc-3.3.2.tar.bz2
这几天,由于TaiWan的地震,访问国外的站点一直有问题,下载比较新版本的toolchain成为一个小问题,好不容易才找到一个

2。在Linux“终端”下:
# tar jxvf arm-linux-gcc-3.3.2.tar.bz2
解压后,会出现usr/local/arm/3.3.2 这个文件夹

3。打开/etc/bashrc文件,添加一项:
export PATH=/usr/local/arm/3.3.2/bin:$PATH

4。重新打开Linux“终端”:
# arm-linux-gcc -v
会显示gcc的版本情况,证明安装已经成功

点击此处查看原文 >>

系统分类: 嵌入式   |    用户分类:    |    来源: 原创

评论(3) | 阅读(1791)
总共 , 当前 /,2下一页