2010年3月19日
摘要: uCOS移植代码主要位于工程路径下的\uCOS-II\Ports\ARM\Generic\IAR\os_cpu_a.asm(在uC-CPU下有个cpu_a.s,里面定义了OS_CPU_SR_Save和OS_CPU_SR_Restore,但实际上未用到,用到的是os_cpu_a.asmOS_CPU_SR_Save和OS_CPU_SR_Restore来进行开关中断) 这里就os_cpu_a.asm里的主要几个函数进行简单分析.更加详细的内容可参考邵贝贝译的《嵌入式实时操作系统uCOS-II》(第二版) 阅读全文
posted @ 2010-03-19 15:26 shevsten 阅读(726) 评论(0) 推荐(1) 编辑
摘要: 手上有块ZLG的SMARTARM2200(LPC2220)的板子,其中的例子都是基于ADS的,想都移植到IAR上去,同时好好研究下IAR,ARM,uCOSII。我用的IAR版本是IAR EWARM5.3. 从Micrium网站上下了uCOSII LPC2148的例子作为模板,修改好的工程可以从http://download.csdn.net/source/1485629上得到。这个工程只含有uCOS及其实例任务,FS,TCP-IP,GUI什么的之后会陆续加入,文章的描述可能与此有差异,如有疑问欢迎与我交流shevsten#gmail.com(#换为@) 阅读全文
posted @ 2010-03-19 15:19 shevsten 阅读(2974) 评论(0) 推荐(0) 编辑
  2010年3月18日
摘要: make clean - delete everything not needed for building external modules make mrproper - delete all generated files, including .config make distclean - delete all temporary files such as *.orig, *~, *.rej etc. 阅读全文
posted @ 2010-03-18 14:50 shevsten 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 手上板子原来自带的是2.4.19的内核, 打算移植新的2.6的内核,从网上下了2.6.17的kernel,下载地址为:http://www.kernel.org/pub/linux/kernel/v2.6/ 修改PATH环境变量或者Makefile文件的CROSS_COMPILE宏,将前面制作好的交叉编译工具链路径添加进来,同时需要下载针对AT91rm9200的patch包, 2.6.17-at91.patch.gz, 下载地址是http://maxim.org.za/AT91RM9200/2.6/ $ tar zxvf linux-2.6.17.tar.gz $ cp 2.6.17-at91.patch.gz linux-2.6.17 $ cd linux-2.6.17 $ zcat ./2.6.17-at91.patch.gz | patch -p1 阅读全文
posted @ 2010-03-18 14:48 shevsten 阅读(268) 评论(0) 推荐(0) 编辑
摘要: u-boot的下载地址为http://sourceforge.net/project/showfiles.php?group_id=65938 ,最新的为u-boot-1.1.6,这个版本已经可以很好的支持AT91RM9200 添加PATH环境变量或者修改u-boot的Makefile将之前编译好的工具链路径添加进来 因为我们的开发板配置和at91rm9200dk很类似,因而可以直接使用at91rm9200dk_config的配置,如果相差比较大的话可以添加自己的开发板配置,还要修改诸如flash等的驱动,具体方法可参考u-boot的文档,一种简便的做法是在u-boot已经支持的开发板中参考选择一种较接近板的进行修改。 $ tar -jxvf u-boot.1.1.6.tar.bz2 $ cd u-boot.1.1.6 $ make distclean $ make at91rm9200dk_config $ make all 不出意外的话,这样应该可以编译出u-boot.bin。 阅读全文
posted @ 2010-03-18 14:46 shevsten 阅读(629) 评论(0) 推荐(0) 编辑
摘要: 公司有块复旭AT91RM9200的板子,自带的是u-boot-0.40和2.4.19的kernel,决定把u-boot-1.1.6和2.6的内核移植上去,以此开始进入嵌入式Linux的界。我的开发环境是Vmvare 5.5.1和Redhat 9, 参考了网上不少网友的移植文档,在此向他们表示感谢! 发现原有的arm-linux-2.95.3交叉编译工具只能编译u-boot-1.1.4一下的版本,更新的需要更新的交叉编译工具,但用arm-linux-gcc-3.4.1编译u-boot-1.1.6会出现软浮点-softfloat问题: /lib_arm/_udivsi3.S:67: relocation truncated to fit: R_ARM_PLT32 __div0 lib_arm/_umodsi3.S:79: relocation truncated to fit: R_ARM_PLT32 __div0 阅读全文
posted @ 2010-03-18 14:37 shevsten 阅读(287) 评论(0) 推荐(0) 编辑