在我的项目中,我需要通过调试串行端口向WinCE设备输入一些命令。但是我发现我只能使用“ printf”或“ RETAILMSG”输出我的调试信息,但是我不能简单地调用“ scanf”来获取调试串行端口的数据。

通过查找MSDN,我发现了一个名为“ OEMReadDebugByte”的函数。它是WinCE的KERNEL函数,但是当我尝试在WinCE应用程序中调用此函数时,Platform Builder发布“错误LNK2019:函数wmain中引用的无法解析的外部符号OEMReadDebugByte”

我可以在KernelIoControl中使用插入案例吗?怎么样 ?哪个文件定义“ KernelIoControl”?

或者...还有其他解决方案吗?

非常感谢!!!

谢谢!

最佳答案

此功能旨在在引导加载程序中使用,以从用户读取输入以设置bot模式,网络配置等。内核不使用此功能。串行用于调试输出,没有简单的方法来更改它。您可能要做的是实现一个提供串行控制台的应用程序,并更改您的BSP,删除串行调试并将其更改为将信息发送到应用程序(使用共享内存或类似的东西)的系统,然后将其输出到串行系统端口控制台。
要实现它,需要对OAL和BSP的结构和功能有所了解。

关于c - 如何从WinCE 5.0的Debug Serial端口读取数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24948558/

10-12 04:49