• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            打印函數(shù)總結(jié)RETAILMSG(..) DEBUGMSG(..) NKDbgPrintfW(..)

            作者:ARM-Win

            不管在WinCE5.0還是在WinCE6.0中,我們?cè)谡{(diào)試驅(qū)動(dòng)或者應(yīng)用的時(shí)候都會(huì)用到打印函數(shù)。在驅(qū)動(dòng)里面,我們可能會(huì)用DEBUGMSG(..),RETAILMSG(..),還有NKDbgPrintfW(..)。在我們使用這些打印函數(shù)調(diào)試我們的程序之前,我們需要實(shí)現(xiàn)串口打印功能。

            在WinCE的BSP中,如果想調(diào)用DEBUGMSG(..)或者RETAILMSG(..)來從串口打印信息,必須在我們的BSP中的OAL層找到debug.c,在這個(gè)文件里面實(shí)現(xiàn)下面的4個(gè)函數(shù):

            void OEMInitDebugSerial(void) :           初始化用于打印信息的串口

            int OEMReadDebugByte (void):            從串口讀一個(gè)byte,出錯(cuò)時(shí)返回OEM_DEBUG_COM_ERROR;沒有數(shù)據(jù)時(shí)返回OEM_DEBUG_READ_NODATA

            void OEMWriteDebugByte(BYTE ch): 寫一個(gè)byte到串口void OEMWriteDebugString(unsigned short* str): 寫一個(gè)字符串到串口,這個(gè)函數(shù)其實(shí)就是通過調(diào)用OEMWriteDebugByte(..)實(shí)現(xiàn)的。實(shí)現(xiàn)了上述的4個(gè)函數(shù),就可以通過串口打印來調(diào)試程序了。一般這4個(gè)函數(shù)在OAL中的debug.c中實(shí)現(xiàn)。
             
            在BSP中,我們一般會(huì)用3個(gè)函數(shù)來實(shí)現(xiàn)打印:DEBUGMSG,RETAILMSG,NKDbgPrintfW。簡(jiǎn)單介紹一下:
             
            NKDbgPrintfW(..)函數(shù)一般只在OAL中使用,可以直接從串口中打印出信息,不受編譯選項(xiàng)的影響。
             
            DEBUGMSG(..)函數(shù)只有在工程在Debug模式下編譯以后,才會(huì)打印出信息來。如果是在Release模式下編譯的,就不會(huì)打印信息出來。
             
            RETAILMSG(..)函數(shù)在Debug模式下和Release模式下編譯都會(huì)打印出調(diào)試信息,但是如果你在工程的屬性中的"Build option"中選擇了"Enable ship build",那么RETAILMSG函數(shù)就不會(huì)打印信息了。



            本文來自CSDN博客,轉(zhuǎn)載請(qǐng)標(biāo)明出處:http://blog.csdn.net/jiereliyi/archive/2009/08/31/4504136.aspx

            posted on 2010-08-20 09:51 遲到的愛 閱讀(2056) 評(píng)論(1)  編輯 收藏 引用

            評(píng)論

            # re: 打印函數(shù)總結(jié)RETAILMSG(..) DEBUGMSG(..) NKDbgPrintfW(..) 2011-10-14 11:12 尋找

            retailmsg在驅(qū)動(dòng)調(diào)試?yán)锒紱]法打印是什么原因,是在release編譯下的,  回復(fù)  更多評(píng)論   


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            <2010年8月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            2930311234

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿

            隨筆檔案

            搜索

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            国内精品久久久久久久久电影网| 日韩精品久久无码人妻中文字幕| 97热久久免费频精品99| 99久久精品国产麻豆| 久久九九青青国产精品| 成人精品一区二区久久久| 亚洲欧美日韩久久精品| 久久精品一本到99热免费| 狠狠88综合久久久久综合网| 国产精品熟女福利久久AV| 国产精品久久新婚兰兰| 91精品国产综合久久久久久| 久久e热在这里只有国产中文精品99| 亚洲国产高清精品线久久| 久久99久久99精品免视看动漫 | 国产成人久久激情91| 老司机午夜网站国内精品久久久久久久久 | 久久大香香蕉国产| 国产精品久久久久久久午夜片| 亚洲午夜福利精品久久| 久久综合九色综合精品| 久久久久青草线蕉综合超碰| 一本久久a久久精品综合夜夜 | 2021最新久久久视精品爱| 99久久免费国产精品| 久久精品人人做人人爽97| 久久久久国产成人精品亚洲午夜| 久久久久久国产精品无码超碰| 久久综合久久性久99毛片| 秋霞久久国产精品电影院| 久久精品国产亚洲av麻豆色欲| 久久青青草原精品国产软件| 久久亚洲国产午夜精品理论片| 亚洲色大成网站www久久九| 性做久久久久久久久浪潮| 久久久久人妻精品一区三寸蜜桃| 99久久中文字幕| 人人狠狠综合久久亚洲婷婷| 91精品国产高清久久久久久国产嫩草 | 久久精品国产精品亚洲下载 | 久久精品国产亚洲av日韩|