最近要移植uCOS到9260,但是uCOS基于9260的官方移植使用的是IAR EWARM....
由于ADS1.2不在维护,转到MDK是趋势.....
于是挣扎来了:IAR还是MDK,
如果用MDK,一要购买MDK,二是将基于IAR的移植转到MDK,工作量多大?
如果用IAR,uCOS移植直接可用,但是上网找了几个IAR注册机,都用不了。
由于IAR注册机用不了,同时考虑MDK集成当今了ARM最强大的RVCT编译器,最终决定用MDK.....如果找不到**版(可怜连这个都想着为公司节省),大不了叫公司买个大众版的,对M3有编译大小限制,但对ARM7/ARM9无限制.................
找了很久,终于找到一个3.24的注册机,注册通过,但是很担心能不能用?像不像一些网友说的:**的版本可能不稳定,最好不要用于商业开发?
编译了AT91BootStrap,竟然编译成功,烧写后,能正常加载程序到SDRAM。OK,到这一步还是担心,9260的AT91BootStrap不能超过4K,那编译大程序有没问题?
拉了atmel的gettingstared例子,改动一些,编译生成16K,烧写后,串口能得到消息,看来这个**版问题不大。
这个星期移植了uCOS到MDK,编译后生成40多K,也能正常运行.....
于是,,嫌MDK 3.24太老了,于是下了个最新的MDK 3.80a,还是原来这个注册机,编译uCOS后运行OK.....
那意味着...MDK 3.80a**后使用正常。。。那个高兴啊.........
试试优化等级,设置为-0时,生成40K的.bin文件,设置成-3时,生成30K的.bin文件,足足讲代码减少了10K大小,哇哇。。。。。。
感到MDK不足的地方是,不能像ADS1.2那样,在工程里面建立多级的子文件夹,以方便源代码管理。
还有一个是之前没碰到过的,竟然在工程设置那里可以定义宏........ |