wince的调试串口作为普通串口使用

目前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的。后续就是串口1,串口2了。
ps:C#真是方便啊,一个从来没有摸过c#的人就可以直接写界面看起来并不简单的程序。感觉和delphi的易用性差不多了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/435585.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【转】医学影像处理相关知识整理(一)

转自:医学影像处理相关知识整理(一) - 知乎 Segmentation to RT structure 近日做医疗影像处理相关的内容,感慨于这方面资料不全、散碎,遂记录自己获得的一些资料以供日后查阅。 DICOM DICOM 是医学图像和相关信息…

x210 debug口当普通串口使用

方法共三步: 第一步: 修改文件wince600\platform\smdkv210\common\dbgserial\dbgserial.c中的三个函数 OEMInitDebugSerial() { ... if (g_pUARTReg NULL) { #if (DEBUG_PORT DEBUG_UART0) // UART0 g_pUARTReg (UART_REG *)OALPA…

【转】卷积的本质及物理意义(全面理解卷积)

转自:卷积的本质及物理意义(全面理解卷积)_彼岸花-CSDN博客_卷积的物理意义 卷积的本质及物理意义 提示:对卷积的理解分为三部分讲解1)信号的角度2)数学家的理解(外行)3&#xff0…

对象结构

根对象:领域模型中的聚合根。代表了领域模型中一个完整的领域概念,如订单。子对象:从属于另一个对象(父对象),是父对象的一部分。子对象的生命周期小于等于父对象的生命周期,如订单项。友元对象…

【转】pthread mutex 基本用法

转自:pthread mutex 基本用法 | feng 言 feng 语 锁是程序中经常需要用到的机制,尤其是多线程的程序中,如果没有锁的帮助,线程间的同 步就会非常麻烦甚至不可能。pthread中提供了mutex互斥量这种锁,在 linux 下经常 用…

交易机项目工作日志--2013-1-31

今天要在王哥新作的板子上实现关机功能。 当按关机键时,GPH0_1管脚发出中断型号,我检测到后给GPH0_0管脚置高电平来实现关机。 所以在系统启动和运行时,要保证GPH0_0管脚始终维持低电平,否测就关机了。 但开发板提供的bsp有一个电…

【转】软件工程能力漫谈:比质量更重要的,是项目管理能力

转自:软件工程能力漫谈:比质量更重要的,是项目管理能力 | ArchSummit 章淼老师在软件工程能力方面,积累了多年的经验,这个话题他之前也分享过多次,整体上内容有修改调整。 章老师博士毕业后在清华待了 12…

浅尝EffectiveCSharp_1

Item 1: 使用属性,避免可访问的数据成员 Use Properties Instead of Accessible Data Members 属性允许你创建一个想可访问数据的接口,而且仍然有使用方法的所有优点.Properties enable you to create an interface that acts like data access but still has all the benefit…

WINCE驱动编写

一般我们在驱动程序中需用LocalAlloc保留一块存储空间,然后用LocalCopy将I/O端口映射到该地址上,以后就可以访问该保留下来的地址了。 而对中断的处理各种设备不尽相同。如果是一个内置设备(Built In),一般在oalintr.h…

【转】DICOM文件格式剖析(初识)

转自:DICOM文件格式剖析(初识)_MoreThinker的博客-CSDN博客_dicom格式 初识DICOM(适合初学者) 初识DICOM文件,发现网上的资料有点少,大部分的资料都不全,在这里做一下总结&#xf…

SVN各个状态:A C D M G U R I具体含义

svn status命令查看svn状态 ?:不在svn的控制中 A:add,新增 C:conflict,冲突; tc以他们改得为准 D:delete,删除 M:modify,本地已经修改 G:modify and merGed…

WINCE Driver 心得总结

一. Windows CE的驱动程序的区分 1.从加载以及接口方式来区分 可以分为本机设备驱动(Built-In Driver)、可加载驱动(Loadable Driver)以及混合型驱动。 (1)本机设备驱动 本机设备驱动…

【转】进阶 JavaScript 必知的 33 个点【进阶必备】

转自:进阶 JavaScript 必知的 33 个点【进阶必备】 进阶 JavaScript 必知的 33 个点【进阶必备】 Original 前端小菜鸡之菜鸡互啄 前端开发爱好者 2022-04-11 08:32 收录于话题#javaScript进阶1个 点击下方“前端开发爱好者”,选择“设为星标” 第一…

Struts配置

Struts应用采用两个基于XML的配置文件来配置,分别是web.xml和struts-cofig.xml文件。web.xml文件是配置所有web应用的而struts-config.xml文件是struts专用的配置文件,事实上也是可以根据需要给这个配置文件起其他名称的. Web应用的发布描述文件:web应用发布描述文件…

【转】开发者需要了解的领域特定语言(DSL)

转自:开发者需要了解的领域特定语言(DSL) - 知乎 领域特定语言是在特定领域下用于特定上下文的语言。作为开发者,很有必要了解领域特定语言的含义,以及为什么要使用特定领域语言。 领域特定语言domain-specific lang…

POJ 2240题(Floyd)

//使用Floyd的变形实现//这就是个套汇的问题&#xff0c;可以用Floyd求最大环&#xff0c;然后判断是不是大于1。#include <cstdio>#include <string>#include <map>using namespace std;map<string,int> MAP;double value[31][31];double rate;double…

【转】自动化构建、自动化部署发布一览

转自&#xff1a;自动化构建、自动化部署发布一览 - 知乎 在软件系统开发的过程中&#xff0c;一个项目工程通常会包含很多的代码文件、配置文件、第三方文件、图片、样式文件等等&#xff0c;是如何将这些文件有效的组装起来最终形成一个可以流畅使用的应用程序的呢&#xff…

承博士:让云计算落地生根的中国云计算平台

2010-01-22 09:48:41 [0评论 ] 金蝶中间件秉承自主创新&#xff0c;努力打造自主知识产权的云计算平台;金蝶Apusic云计算解决方案是为大型企业和组织提供私有云的解决方案&#xff0c;通过云计算中间件平台&#xff0c;为云计算提供落地的务实价值。金蝶中间件与国际厂商合作&…

【转】g++以及gcc的区别

转自&#xff1a;g以及gcc的区别 - 知乎 GCC &#xff0c;gcc 和g&#xff1a; 一直没搞清这几个东西的概念&#xff0c;搜了半天看到了一个不错的解释&#xff0c;所以大致记录一下&#xff0c;以免以后再忘记&#xff0c;链接。&#xff08;原谅没找到原文出处&#xff09;…

Microsoft Windows CE .NET 中的中断体系结构

概述 通过 Microsoft Windows CE .NET&#xff0c;Microsoft 已经升级了 Windows CE 的中断体系结构。该操作系统 (OS) 所具有的处理共享中断的能力极大地扩展了 Windows CE .NET 支持许多中断体系结构的能力。本文从原始设备制造商 (OEM) 和应用程序开发人员的角度探讨了处理…