对Windows Embedded开发有兴趣的朋友可以参与团队博客:
Windows Embedded开发
http://winembedded.cnblogs.com/
上一篇《Windows Embedded CE 6.0开发初体验》之“CE开发环境”:
http://blog.csdn.net/aawolf/archive/2007/10/11/1820278.aspx
在Digi CC 9P开发板中已经预置了Boot-loader和一个CE 6.0的系统,所以,我们直接启动开发板,就可以运行一个CE 6.0的操作系统。不过,我们的最终目的是要开发一个自己的CE 6.0平台,所以我们需要对Boot-loader中的一些系统变量进行设置。
Boot-loader相当于PC中的BIOS,当硬件被reset之后,首先执行的就是boot-loader。Boot-loader首先对硬件进行初始化,然后引导操作系统运行。Boot-loader是嵌入式开发中相当重要的程序,因为它与硬件设备密切相关,所以Boot-loader的开发是由硬件厂商完成,它也是BSP的一部分。这也决定了不同的硬件厂商对Boot-loader有不同的实现,我们这里以Digi为例,涉及到对boot-loader的设置仅对Digi的开发板有效。如果使用了其他厂商的开发板,请参考相关的说明文档。
Digi开发板支持从串口输出一个命令行来对Boot-loader的行为进行控制,以及设置一些环境变量。所以我们需要通过“超级终端”,来进行设置。
将开发板的串口与开发机器的串口相连,如果没有串口则需要一个USB到串口的转换器。需要主意的是,在Vista中没有“超级终端”,我们可以从XP上将hypertrm.exe和hypertrm.dll拷贝到Vista中。
创建一个新建连接后,输入连接名称,然后选择COM口。
然后设置串口的波特率为38400,数据位8,无奇偶校验,停止位1,数据流控制None。最后点击确定,我们就进入了超级终端的主界面。
确认开发板的电源、与PC串口等连接正确,打开开发板的电源。Boot-loader会从超级终端中输出命令行。如果我们不进行干预,Boot-loader会启动Flash Rom中的CE 6.0系统。我们为了设置环境变量,所以要中断启动过程,在命令行提示“Hit any key to stop autoboot”时,我们按任意键,就会出现一个命令行提示符。
我们在命令行里输入:
setenv ipaddr 192.168.0.150
setenv netmark 255.255.255.0
setenv serverip 192.168.0.198
saveenv
第一句是设置开发板的IP地址,第二句是设置开发板的子网掩码,第三句是告诉开发板,开发PC的IP地址。如果不知道开发PC的IP地址,可以在命令行里输入ipconfig获得。因为我们将开发PC和开发板用带DHCP的路由器连接,所以,路由器会自动为开发PC设置一个IP地址。最后要调用saveenv,讲系统设置写入到Flash中。
为了让开发板重新启动,在命令行中输入reset。当超级终端中再次显示“Hit any key to stop autoboot”提示时,我们不要按任何键,让开发板内置的CE操作系统启动。
CE 6.0操作系统运行之后,显示器将会显示如下的画面:
为了确定开发板与PC的网络连接是否正确,我们在PC的IE中输入“http://192.168.0.150”,也就是开发板的IP地址。IE浏览器将会访问开发板中的Web Server。如果出现下面的画面,则说明网络连接正确。
当开发板设置完成之后,接下来,我们就可以进行自己的开发工作了。
下一篇《Windows Embedded CE 6.0开发初体验》之“跑个应用程序先”: