扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:nanjianhui 来源:bolg【原创】 2008年1月17日
关键字: redirect console nanjianhui 软件
在WinCE中开发BSP的初期,可能我们还没有显示驱动,也没有键盘,鼠标,USB的驱动。这个时候,如果有一个基于Serial串口的console 会感到很幸福,呵呵。
将console重定向到串口比较简单,首先串口驱动必须是好的。然后需要在platform.reg中添加下面的配置:
[HKEY_LOCAL_MACHINE\Drivers\Console]
"OutputTo"=dword:1
"COMSpeed"=dword:9600 ; 38400
"OutputTo"的意思是重定向到哪个串口,比如要重定向到COM1,就设置为1。如果定义为0xffffffff表示输出到Debug端口,据说在WinCE6.0中有问题,具体没有试过。
"COMSpeed"是设置串口的波特率,这里要注意,9600的意思是0x9600,也就是38400,别搞错了。
下面的问题是,我们需要在WinCE启动以后自动运行cmd.exe,这样我们才能在串口看到提示符,如何实现呢?
这里采用的方法是使用Autolaunch.exe,Autolaunch是一个用于自动加载程序的程序,Autolaunch工程可以在网上搜索到,这里提供一个参考网址:
http://www.learningce.com/Downloads/796.aspx
它可以作为一个sub project被添加到WinCE6.0的工程当中,然后打开Autolaunch子工程里面的Autolaunch.reg,把cmd.exe添加进去就可以了,参考如下:
[HKEY_LOCAL_MACHINE\Init]
"Depend99"=hex:0a,00,14,00,1e,00,32,00
[HKEY_LOCAL_MACHINE\Init]
"Launch99"="AutoLaunch.exe"
[HKEY_LOCAL_MACHINE\Startup]
"Process1"="cmd"
"Process1Delay"=dword:000003E8
这样,当WinCE启动以后会自动运行Autolaunch.exe,然后Autolaunch会根据Autolaunch.reg中的配置启动cmd.exe,这样就可以在超级终端中看到命令行提示符了。
这个功能我是在WinCE6.0下面用的,感觉重定向到串口以后有一些问题:
1。输入字符没有回现,我必须在超级终端里面使用超级终端的回现功能,而不是WinCE中Console本身的回现。
2。命令太少,也就执行个cd, dir等命令,要是运行ipconfig这样的命令,就不行了,没有任何打印信息出来,感觉没有被执行。当然也运行不了其它的程序。
个人感觉,这个cmd.exe被重定向到串口以后,功能很有限,只能运行一些基本的命令。查找过他的源代码,在\WINCE600\private\winceos\utils\cmd2\下面。
我个人的看法是,最开始开发BSP的时候,这种方法或许会有一些用,当我们有了ethernet的驱动以后,我们就可以用telnet了,这个方法就可以放弃了。
原文链接:http://blog.csdn.net/nanjianhui/archive/2008/01/14/2043982.aspx
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者