当前位置:首页 > 编程开发

wince去掉串口0的DEBUG模式,改为普通模式

webgou16年前 (2010-09-08)编程开发313

来自:http://herbertbt.blog.163.com/blog/static/57266582200911151580307/

这个方法也还可以:


本文转自 :http://blog.chinaunix.net/u1/49088/showart_1933553.html

目前wince的串口0是作为调试串口用的,但是因为我的案子需要3个串口,所以要把它改为普通串口,但是开机时候还是需要打印debug信息,鉴于此,我修改如下:
debug.c中加入一行:
int DebugConsoleEnabled=1;
发送时候做判断:

//------------------------------------------------------------------------------

//

// Function: OEMWriteDebugByte

//

// Transmits a character out the debug serial port.

//

VOID OEMWriteDebugByte(UINT8 ch)

{

   if(DebugConsoleEnabled == 0)

return;

 

   // Wait for transmit buffer to be empty

   while ((INREG32(&g_pUARTReg->UTRSTAT) & 0x02) == 0);

 

   // Send character

   OUTREG32(&g_pUARTReg->UTXH, ch);

}

 

 

//------------------------------------------------------------------------------

//

// Function: OEMReadDebugByte

//

// Reads a byte from the debug serial port. Does not wait for a character.

// If a character is not available function returns "OEM_DEBUG_READ_NODATA".

//

 

int OEMReadDebugByte()

{

   UINT32 status, ch;

 

   if(DebugConsoleEnabled == 0)

return 0;

 

   status = INREG32(&g_pUARTReg->UTRSTAT);

   if ((status & 0x01) != 0) {

   ch = INREG32(&g_pUARTReg->URXH);

   // if ((status & UART_LINESTAT_RF) != 0) ch = OEM_DEBUG_COM_ERROR;

   } else {

   ch = OEM_DEBUG_READ_NODATA;

   }

   return (int)ch;

}

 

然后在OemInit函数结束后把DebugConsoleEnabled = 0;就可以了。

不知道为何,我4.2的bsp生成的wince,用以前的串口测试程序来测试,就可以,但是我的5.0的wince,串口测试程序打开不了,无奈只能自己写了一个简单的c#的串口测试,串口0是ok的。

扫描二维码推送至手机访问。

版权声明:本文由知了博客发布,如需转载请注明出处。

本文链接:https://www.webgou.info/?id=322

标签: wince
分享给朋友:

“wince去掉串口0的DEBUG模式,改为普通模式” 的相关文章

QQ相册密码破解原理

QQ相册密码破解的解密破解工作主要集中在应用QQ相册BXDXD程序与加密XUXDE动态代码库之间的通讯拦截程序问题。这种最新qq像册密码破解的方法成本较低,也易于实现,对待以加密QQ相册为密码的BXDXD程序可以轻松的破解。 由于QQ像册密码破解的应用代码接口(BDY)基本上都是公开的,因此从…

AI 使用 Unity MCP 自动操作 Unity:从连接配置到生成五子棋场景的实战记录

MCP Server 启动验证Unity 插件连接验证新建 Unity 场景创建并挂载 MonoBehaviour 脚本实现单机五子棋Play Mode 验证Console 错误检查对于 Unity 开发来说,这类工具很适合做原型验证和重复性编辑器操作。它还不能完全替代开发者,但已经可以显著减少“写…

android developer 打不开 解决办法

android 官网 目前developers版块无法访问。可以直接访问http://androidappdocs.appspot.com/index.html,或者在链接后面加上“.nyud.net”就可以访问了 http://developer.android.…

深刻理解Linux进程间通信(IPC)

一个大型的应用系统,往往需要众多进程协作,进程(Linux进程概念见附1)间通信的重要性显而易见。本系列文章阐述了 Linux环境下的几种主要进程间通信手段,并针对每个通信手段关键技术环节给出详细实例。为达到阐明问题的目的,本文还对某些通信手段的内部实现机制进 行了分析。 序…

透明位图显示

想到透明位图,找了找资料,有几种实现,并理解了下,掩码机制(其实就是数据的逻辑操作)。 …

用HttpClient来模拟浏览器GET POST

一般的情况下我们都是使用IE或者Navigator浏览器来访问一个WEB服务器,用来浏览页面查看信息或者提交一些数据等等。所访问的这些页面有的仅仅是一些普通的页面,有的需要用户登录后方可使用,或者需要认证以及是一些通过加密方式传输,例如HTTPS。目前我们使用的浏览器处理这些情况都不会构成问题。不过…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。