新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 嵌入式硬件通信接口協議-UART(三)快速使用串口及應用

        嵌入式硬件通信接口協議-UART(三)快速使用串口及應用

        作者: 時間:2018-12-19 來源:網絡 收藏

          一、啟用流程

        本文引用地址:http://www.104case.com/article/201812/395787.htm

          開講前,先找幾款芯片的demo程序瞄一眼。

          依次有STM32的V3.5標準庫、nRF52832的官方demo以及51核的STC15系列單片機的官方DEMO。

          


          


          


          從以上的部分demo例程來看,并結文章《硬件通信接口協議-UART(一)協議基礎》的介紹,在啟用的時候,需要配置的那幾個參數有波特率、數據位、校驗位、停止位等,從demo的源碼中也是能夠體現出來的。

          而略有不同的是,在引腳配置靈活的ARM中,需要針對引腳進行配置。

          二、驗證輸入輸出

          完成了串口的初始化,即可對輸入輸出進行操作,來驗證串口是否可以正常的發送和接收數據。

          一般的,最直接的方式就是向輸出寄存器寫入數據,就可以讓芯片去完成UART信號輸出到對應的引腳上。

          如下圖依次有STM32的V3.5標準庫、nRF52832的官方demo以及51核的STC15系列單片機的官方DEMO。

          


          


          


          驗證串口的輸出,即在串口初始化成功后,對串口的輸出寄存器寫入數據,而芯片引腳則使用USB轉TTL模塊連接,USB端插入計算機的USB口,利用計算機的串口助手軟件實現對數據的收發。

          三、調試-輸出

          開發調試過程中,輸出的內容基本上就是想查看的變量值、代碼的執行位置跟蹤、算法或者某些運算的結果等等。這些輸出,僅用于調試階段,而在人機調試過程中,使用計算機的串口助手軟件進行交互,則輸出的數據應該便于識讀和判斷。

          1. C庫函數printf格式輸出重定向到串口輸出

          輸出串口數據過程中,需要向寄存器逐字節傳入數據的,而在傳送之前必不可少的,就是將要發送的數據、字符放到同一個Buffer后,執行輪詢的方式傳送直到buffer內容全部被傳送。

          而這個“放”的過程也是需要做些計算、判斷,尤其是增加必要的字符來描述輸出信息,保證信息的可識讀。

          在C標準庫printf函數就有格式輸出的功能,利用這個接口更便于調試輸出這個過程。

          這就需要將printf函數重定向到串口輸出上!

          實現重定向只需3步:

          Options for target選項卡內勾選UseMicroLIB

          在串口實現的*.c文件內,將stdio.h文件和stdarg.h文件包含進來

          重新定義int fputc函數的內部實現

          


          


          完成以上3步,即可利用printf函數來格式化輸出,并且能夠在串口上接收到。


        上一頁 1 2 下一頁

        關鍵詞: 嵌入式 串口

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 抚顺市| 宜兰市| 孟村| 龙南县| 虹口区| 黎城县| 巴南区| 丹凤县| 垣曲县| 祁连县| 晋中市| 岢岚县| 开鲁县| 江阴市| 祁门县| 普兰店市| 藁城市| 阿瓦提县| 东城区| 阳原县| 文安县| 班戈县| 麦盖提县| 巴青县| 巴南区| 满洲里市| 通州区| 瑞丽市| 铅山县| 花莲市| 公安县| 古田县| 民乐县| 达孜县| 芜湖市| 西华县| 鞍山市| 泰顺县| 望谟县| 康保县| 新绛县|