郁闷,遇到串口打印信息的奇怪问题,请大家帮忙解答一下。谢谢!
这几天真是霉运当头。
打篮球伤到手指,发个串口帖子也是无人回答。自己解决加入串口打印信息也碰到了郁闷的事情。
刚开始,我只想把C:\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\SERIAL\COM_MDD2编译成debug版本,来打印信息的。
我采用了如下方法:
第一种:
将下面这句代码加入到驱动所在目录中的sources文件中即可:
CDEFINES=$(CDEFINES) -DDEBUG
第二种
#undef DEBUGMSG
#define DEBUGMSG(x,s) NKDbgPrintfW s
这样这个驱动文件里的所有调试信息都会打印出来,并且不理会DebugZone的设置。
没有想到照样没有输出信息,真是神了,而且串口编译出来确实可用的。并且以前第二种方法我在BSP的驱动下确实可行的。
后来我干脆重新建立工程,把整个NK都编译成debug,很多启动信息,但是就是没有C:\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\SERIAL\COM_MDD2的信息,真是气人啊。
后来发现这个DEBUGMSG和RETAILMSG都是使用NKDbgPrintfW 实现的,我直接使用NKDbgPrintfW 放在DLL入口也不行。
怎么回事啊,很是郁闷,大家来说说咋回事呢?
[解决办法]
Public下的修改后要Sysgen吧。
[解决办法]
那你可以把SHIP_BUILD关掉的。在Platform-〉Setting里面
[解决办法]