在三星6410裸机程序开发1文章中,说到的是采用eclipse + windows安装版的专为ARM嵌入式处理器预编译的GNU工具组合来开发6410的裸机程序。由于遇到了中断问题,所以不得不切换开发环境。
幸运地是,不仅顺利切换到RVDS环境,而且还发现了三星官方6410_Test工程。这个工程提供了芯片大部分功能模块的裸机程序实现和测试用例程序。
在三星6410裸机程序开发1文章中,说到的是采用eclipse + windows安装版的专为ARM嵌入式处理器预编译的GNU工具组合来开发6410的裸机程序。由于遇到了中断问题,所以不得不切换开发环境。
幸运地是,不仅顺利切换到RVDS环境,而且还发现了三星官方6410_Test工程。这个工程提供了芯片大部分功能模块的裸机程序实现和测试用例程序。
在调试三星6410裸机程序时,遇到的一个很棘手的问题:在eclipse中怎么实现中断?这个问题的实质是:GCC中怎么声明ARM的中断处理函数。
这个问题折腾了很久,有点影响了项目的进度。后面改为RVDS开发环境才得以避开这个问题。现在回过头来再分析分析这个问题。刚好看到一篇博文,结合自己的理解,我想应该可以很好地阐释和解决这个问题。
这段时间终于把短距离通信的无线接收模块弄完了。本来一两周时间就可以弄完,但前两周由于尝试采用eclipse开发环境,遇到了很多问题,尤其是6410中断的实现。这导致后期赶工,花了几个通宵才算搞定,弄得自己一身疲惫。
回过头想想,这个项目在很多方面都值得总结和吸取教训。避免以后接项目时类似情况再次发生。后续文章再介绍三星6410的裸机程序开发环境和方法。
网上关于S3C6410裸机程序开发都是基于RealView RVDS。也有一些是基于eclipse的,但都没有详细介绍在eclipse中如何建立S3C6410裸机程序工程。
尽管友善之臂提供的6410裸机程序示例使用了eclipse工程,然程序的编译却还是基于makefile的。那怎样建立6410的eclipse裸机程序工程呢?本文就此进行详细介绍。有了这个工程,可以简化裸机程序的开发过程,把精力专注于功能实现。
目前,在帮别人开发一个短距离通信的无线接收模块,需求很简单,本来用简单的51单片机就可以搞定。可是人家偏偏指定要使用500MHz以上的CPU,而且采用裸奔的方式。
当时面对这种奇葩的要求,瞬间无语。幸好,对方允许使用友善之臂的tiny6410核心板。这样下来,开发这个收发器模块也就变得简单了。就权当自己练习吧!
© 2012 velep.com | reille blog | 管理| 粤ICP备15065318号-2| 谷歌地图| 百度地图| Suffusion theme|Sayontan Sinha |