日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

一起学nRF51xx 6 - uart

發布時間:2025/4/5 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一起学nRF51xx 6 - uart 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

通用異步接收器/發送器提供快速,全雙工,內置流量控制的異步串行通信(CTS,RTS),在硬件方面支持高達1Mbps波特率。支持奇偶校驗和第9位數據生成。

用于每個UART接口線的GPIO可從芯片上的GPIO中任選,而且可獨立配置。這使得芯片引線十分靈活,有效利用印制電路板空和信號通路。

從上圖可知,UART發送寄存器TXD有一個,當要發送數據的時候把數據放入TXD,然后啟動發送TASK就可以發送了。接收寄存器RXD帶FIFO,總共有6級,在數據被覆蓋前可以接收6個字節。

?

UART的任務:

STARTRX:使能這個TASK以后,UART將會接收RXD引腳發送過來的數據,并且將數據移入接收FIFO中。

STOPRX:使能這個TASK以后,接收將會被停止。

STARTTX:使能這個TASK以后,TXD寄存器里面的數據將通過TXD引腳被發送出去。

STOPTX:使能這個TASK,UART將停止發送數據。

?

UART的事件:

RXDRDY:UART每接收完一個字節的數據,將會產生RXDRDY事件。

TXDRDY:當TXD寄存器中的數據被發送完,將會產生這個事件,這時候我們可以往TXD寄存器放新的數據。

EEROR:當UART檢測到有錯誤發生會產生這個事件。

?

UART的引腳配置:

nRF51系列SOC設計得比較有特色,以下引腳可以為任意的一個GPIO。

PSELRXD:配置將用作為RX引腳的GPIO。

PSELCTS:配置將用作為CTS引腳的GPIO。

CTS只用在有硬件流控的場合,這個信號是來自于數據接收端,用來通知發送端可以發送數據了。當這個信號有效(一般為低電平),說明接收端已經準備就緒,比如說接收緩沖區已經清空,可以正常接收數據。這個時候我們可以啟動發送。每發送完一個字節,再發送下一個字節之前我們都要檢測CTS這個信號。當CTS信號無效,數據發送將會被暫停。

PSELRTS:配置將用作為RTS引腳的GPIO。

RTS只用在有硬件流控的場合,這個信號是發送自數據發送端,用來通知數據接收端,準備完畢,可以發送數據。

PSELTXD:配置將用作為引腳的GPIO。

?

本節將在NRF51822芯片是使用UART模塊實現串口收發操作。

?

示例詳解

基于硬件平臺:nrf51822ek_tm開發板。

?

?

本示例所用的最小系統板原理圖:

?

?

  • 工程創建:
  • 打開KEIL,新建一個空工程:Project->NewuVisionProject
  • 工程名為nrfxx-uart確認后按下圖選擇芯片為nrf51822_xxAA->ok

    在彈出的對話框中勾選CMSIS中的CORE;Device中的Startup(后面有nrf51Series字樣的);在nrf_device中勾選nrf_gpio,nrf_gpiote,nrf_delay,nrf_ppi,nrf_error,nrf_uart并在nrf_Libraries中勾選app_error,nrf_assert模塊。

    ?

    OK之后工程自動生成如下代碼:

    新建一個空白文檔,保存為main.c,并加入工程中:

    配置工程,選擇使用MicroLIB庫,可以減小程序體積:

    加入NRF51定義,并選擇化等級3,可以減小程序體積,但仿真運行時可能會出現與代碼順序不一致現象:

    ?

    調試工具選擇J-LINK,并將接口設置為SW口勾選下載程序后自動復位及運行:

    ?

    ?

    ?

  • 工程代碼
  • OK之后在man.c中加入如下代碼:
  • 上圖中代碼的基本功能是在主函數中實現LED燈500ms亮500ms滅循環控制,同時LED第翻轉一次串口打印輸出一次信息“hello zhangshisan this is nrf51822 uart Demo…”,同時如果串口接收到數據則直接通過串口回發回去,實現輸入數據回顯功能,串口引腳TX是P0_9,Rx是P0_11,波特率是115200,無校驗,使能接收和發送,使能數據接收中斷。關于串口的更多接口函數可以在nrf_uart.h中查看,或去網官https://infocenter.nordicsemi.com/index.jsp 查看相應的接口說明文檔。

    ?

  • 編譯工程,下載程序,可以看到開發板的藍燈實現了500ms亮500ms滅循環效果,同時將開發板上的串口端口與電腦連接,打開PC上串口調試助手(串口驅動已成功安裝),打開對應的串口后可以看到串口成功輸出以下數據。
  • 在串口調試助手中的發送窗口輸入一些內容,按發送后可以看到在接口窗口也可接口到串口回發的內容,說明串的接收功能正常,中斷功能正常。

    本示串口示例程序基于nrf官方庫編寫實現,如果需要寄存器實現版本的,在本示例源碼中也有相應的參考實現給出。

    OK,本期實驗完成!下期見!同時如果大家有什么疑問或是有想了解的其它內容,也歡迎大家留言!!最后喜歡這個公眾號的同學們記得加關注了,會有不定期技術干貨推出!!

    文中源碼資料下載,在公眾號里給十三發消息:

    下載|一起學nRF51xx 6

    ?

    關注十三公眾號

    ?

    總結

    以上是生活随笔為你收集整理的一起学nRF51xx 6 - uart的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 亚洲精品一区二区三区区别 | 伦理片中文字幕 | 中文字幕日韩三级 | 一级黄色大全 | 国产真实乱在线更新 | 国产毛片毛片毛片毛片毛片毛片 | 精品无码久久久久国产 | 女人天堂av | 日批视频在线 | 在线观看69 | 91九色蝌蚪91por成人 | jzjzjz欧美丰满少妇 | 中文字幕在线观看网址 | 久久美| 99re在线播放 | 在线性视频 | 国产成人无码精品久久久久久 | 苍井空浴缸大战猛男120分钟 | 国产成人精品视频ⅴa片软件竹菊 | 久操综合 | 久久久一 | 最新在线中文字幕 | 国产日韩欧美在线播放 | 久久91亚洲 | 日韩中文字幕第一页 | 国产av人人夜夜澡人人爽麻豆 | 国模大胆一区二区三区 | 国产精品熟女一区二区不卡 | 亚洲成人a√ | 日韩麻豆视频 | 欧美另类xxxx | 天天艹av| 91尤物视频 | 人人做人人爱人人爽 | 超碰蜜桃 | 亚洲理论电影在线观看 | 肉大榛一进一出免费视频 | 亚洲 欧美 综合 | 久久亚洲AV成人无码国产人妖 | 丰满岳乱妇一区二区三区 | av资源导航 | 午夜精品久久久久久99热 | 亚州av一区二区 | 在线黄色大片 | 欧美丰满老妇性猛交 | 亚洲精品美女久久久 | 久久久久久黄 | 成人性生交大片免费看96 | 久久我不卡| 亚洲不卡电影 | 成人网站免费观看 | 中文国产在线观看 | 日韩精品人妻无码一本 | 三度诱惑免费版电影在线观看 | 日本中文字幕久久 | 欧美三级网站在线观看 | 在线cao| 人人草人| 一级黄色片a | 一区二区三区日韩 | 午夜天堂在线 | 国产日韩欧美在线观看视频 | 精品三级国产 | 亚洲国产精品综合久久久 | 午夜67194| 丰满人妻翻云覆雨呻吟视频 | 激情午夜婷婷 | 日韩国产成人无码av毛片 | 大黄一级片 | 久久久久久婷 | 91黄在线观看 | wwwxxx色| 欧美性视频网站 | 精品中文字幕一区二区 | 女生扒开尿口让男生桶 | 精品一卡二卡三卡 | 天天摸天天看 | 欧美伊人网 | 中文字幕欧美一区 | 久久综合伊人77777蜜臀 | 91黑丝在线观看 | 日韩激情啪啪 | 97超碰碰碰 | 亚洲高清视频一区 | 欧美顶级metart裸体全部自慰 | 国产精品精品软件视频 | 自拍一区在线 | 日韩欧美一区在线观看 | 欧美日韩中字 | 在线观看免费福利 | 久久免费国产 | 1024金沙人妻一区二区三区 | 日本成人毛片 | 欧美亚洲成人网 | 欧美亚洲天堂网 | av免费网| 懂色av一区二区在线播放 | 日韩va视频 | 特色特色大片在线 |