大话嵌入式CPU的WinCE烧录

时间:2022-12-21 18:00:29

//=====================================================================
//TITLE:
//    大话嵌入式CPU的WinCE烧录
//AUTHOR:
//    norains
//DATE:
//    Friday 16- April-2010
//=====================================================================

 

    回头想想,这几年还接触了不少嵌入式的CPU,算一算,应该也有五六款吧。而它们的WinCE烧录方式,可以用千奇百怪形容。其实也难怪,本来嵌入式CPU,灵活性高,规格也不尽相同,也难免烧录方式无法统一。

 

    这么多款CPU之中,我觉得Telechips的TCC7901是做得最好的。只需要设置跳线,连接上USB,一切就可以简单地在烧录软件中进行。而这烧录软件又是非常强大,你可以设置分区的多寡,格式化分区,显示NAND的使用情况,甚至连开机的logo,都可以直接在里面选择bmp图片。虽然功能强大,但操作却非常简单,甚至是简单到Telechips都不屑于为这软件写操作文档。

 

    相对于三星的S3C6410而言,就没有那么简单了。仅仅通过USB还是不行的,还需要使用串口,对启动模式进行设置,才能进行烧录。而这个问题,对于Prima也存在,他们都无法做到像tcc7901那么简洁。当然,这里并不是说tcc7901没有bootloader菜单,它也有,并且也能进行很多设置,只不过这些设置和烧录无关。

 

    这三款CPU之中,prima是最麻烦的,需要不停地在串口终端软件和它自带的烧录软件中互相切换;这也就罢了,这切换过程中还有时间限制,超过了时间,你就必须要重新开始。S3C6410虽然也要通过串口,但根本就没这么麻烦,因为它自带的烧录软件也有和串口通信的功能,一切操作都能在该软件中进行。当然,S3C6410也没有prima的那种变态的时间限制。

 

    其实,有一款CPU的烧录方式也是比较简单,就是sigmatel的STMP37XX系列。它的简便性和tcc7901有得一拼。如果所用的flash是没有系统的话,那么它默认会从USB启动,方便你烧录。即使系统存在于flash,也可以简单地通过跳帽选择USB启动,进而烧录系统。只不过STMP37XX的BSP代码非常烂,很多东西根本就不完善,再加上sigmatel被freescall收购,STMP37XX被打入冷宫,导致其BSP代码就几个AE在修改,完全跟不上客户需求,所以即使整个硬件成本非常低廉,最后也只能落得一个比较悲惨的下场。

 

    不过,话又说回来,prima麻烦是麻烦,但并不是最糟糕的。接触过的这些CPU当中,我认为AU12XX系列无疑在烧录方面是最烂的。它压根儿就没有相应的烧录软件,你需要通过JTAG进行bootloader进行烧录。而这bootloader呢,却只能在linux下编译,所以为了编译这玩意,你还得装个Linux或是cgwin。这还不是最致命的,即使你成功地编译了bootloader,你还无法将WinCE烧录到flash,因为原厂自带的bootloader根本就没有这个功能,你必须自己修改其源代码,令其能够自动下载。而这些繁琐的工作,如果你没有很深的技术功底,不熟悉MIPS的架构,估计弄起来会比较够呛。这也许是AU12XX系列并没有在大陆市场上大行其道的一个原因吧。

 

    最后,是我写的几篇关于文中所提到的CPU的系统烧录的文章,感兴趣的朋友可以比照看看。

 

    SiRFPrima TT4X0BD的WinCE系统的烧录 (http://blog.csdn.net/norains/archive/2010/04/16/5494010.aspx)

 

    TCC7901的WinCE系统的烧录和设置 (http://blog.csdn.net/norains/archive/2010/04/13/5481966.aspx)

 

    S3C6410的WinCE系统烧录 (http://blog.csdn.net/norains/archive/2010/04/13/5481580.aspx)