精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于51單片機和nRF905芯片實現無線數據傳輸系統的設計

電子設計 ? 來源:電子科技 ? 作者:王華斌,孟立凡, ? 2021-05-05 09:17 ? 次閱讀

作者:王華斌,孟立凡,谷宗冉,吳慧飛

短程、便捷、廉價的無線通信技術正成為關注的焦點,使人們對它的需求越來越高。例如無線數據采集、無線設備管理和監控、無線抄表以及礦井下的無線通信等都是其典型應用。

1 系統總體結構

文中利用51單片機和無線數據收發芯片nRF905構成無線數據傳輸系統,給出了硬件和軟件設計方案。其數據傳輸過程是:從傳感器輸入的模擬信號AD采集后,將數據輸入單片機,然后單片機將該發送數據,通過SPI接口發送給 nRF905,nRF905將數據自動加上前導碼和CRC碼后將數據包發送。當接收端的nRF905接收到有效數據后,DR置高;單片機檢測到DR為高電平后,復位TRX_CE引腳,使nRF905進入空閑模式,通過SPI接口從nRF905中讀出接收數據,然后通過串口在上位機顯示。文中主要介紹的是 51單片機軟件模擬SPI和無線數據收發這兩個部分。圖1是該系統的總體結構框圖。

2 SPI總線

SPI(Serial Peripheral Interface串行外設接口)總線系統是一種同步串行外設接口,它可以使MCU與各種外圍設備以串行方式進行通信以交換信息。該接口一般使用4條線:串行時鐘線(SCK)、主機輸入從機輸出數據線MISO、主機輸出/從機輸入數據線MOSI和低電平有效的從機選擇線SS。可見SPI總線只需要少數的幾根線,就可以實現與具有SPI總線硬件接口功能的各種器件進行通信,并且用SPI總線接口簡化電路設計,節省許多I/O口線供其它功能使用,提高了設計的可靠性。而對于一些不具有SPI硬件接口的器件,可以用I/O口線來模擬SPI。由于nRF905射頻收發模塊是通過SPI接口由MCU控制的,而采用不具有SPI接口的單片機,只能通過單片機的I/O口來模擬SPI總線接口,實現無線通信系統的設計。這樣當傳輸速度要求不是太高時,使用I/O口模擬 SPI總線,既可以增加應用系統接口器件的種類,同時還提高系統的性能,節約成本。

3 nRF905無線收發芯片

nRF905是挪威Nordic VLSI公司推出的單片射頻收發器,工作電壓1.9~3.6 V,工作于433/868/915MHz這3個ISM頻段,頻道轉換時間《650μs,最大數據速率為100kbit/s。nRF905由頻率合成器、接收解調器、功率放大器、晶體振蕩器和GFSK調制器組成。自動產生前導碼和CR校驗碼,可以很容易通過SPI接口進行編程配置。外圍器件連接簡單,無需外部SAw濾波器。nRF905有兩種工作模式和兩種節能模式。兩種工作模式分別是ShockBurst TM發送模式和ShockBurst RM接收模式,兩種節能模式分別是掉電和SPI編程模式,Standby和SPI編程模式。nRF905的工作模式由 TRX_CE,TX_EN,PWR_UP這3個引腳的設置來決定。

4 nRF905和STC89C52RC的硬件連接電路

nRF905具有標準的SPI硬件接口,對于不帶SPI串行總線接口的STC89C52RC單片機來說,可以使用軟件來模擬SPI的操作。單片機和 NRF905的對應接法是:P1.6接MISO,P1.5口接MOSI,Pl.7口接SCIOCK,P1.3接CSN。選用單片機的P1.5模擬數據輸出端MOSI;Pl.6模擬數據輸入端MISO P1.7模擬SCK的輸出端;P1.3模擬從機選擇端CSN,由程序清零此I/O口,使得與它通信的NRF905做從機。采用SPI的進行數據傳送時,在 SCK的每個下降沿將89C52配置NRF905的命令和數據通過MOSI引腳移入,在SCK的每個上升沿將欲傳給89C52的數據從MISO引腳移出。所以,這里將串行時鐘輸出口P1.7的初始狀態設置為低電平,選通從機,即P1.3=0低電平后,再置P1.1為高電平。這樣,89C52在輸出1位 SCK時鐘的同時,將使NRF905中數據串行左移,從而輸出1位數據至89C52的P1.6口,此后再置P1.7為0,使89C52從P1.5輸出1位數據至NRF905,至此結束了模擬1位數據的傳輸。按上述步驟循環8次,即完成通過SPI總線傳輸1 bit的操作。nRF905有5個內部寄存器,分別是狀態寄存器、RF配置寄存器、發送地址寄存器、發送數據寄存器和接收數據寄存器,這5個寄存器都是通過89C52軟件模擬的SPI接口來配置的。除了對寄存器進行配置外,89C52還要對nRF905的工作模式進行切換控制。

5 電源電路設計

本系統使用兩個電源,單片機STC89C52RC使用5 V電源,NRF905采用3.3 V電源進行供電,然后把STC89C52RC和NRF905共地,否則會出現無法傳輸數據。其中轉換芯片分別使用AMSlll7-5.0轉5 V芯片和AMSl117-3.3轉3.3 V芯片電路圖,如圖3所示。電源電路使用220 V的交流電適配器輸出的9 V直流,經C1濾波進入AMSlll7-5.0,然后在輸出端接一個100μF的電容進行濾波去耦,從而得到5 V直流電壓供單片機使用;然后5 V電壓接入下一級AMSlll7-3.3電源轉換芯片,輸出3.3 V供NRF905使用。

6 軟件設計的C語言實現

對于發送端,首先進行I/O口和SPI接口初始化,然后對nRF905的寄存器進行配置并且初始化各個接口,經過初始化,處理完采集好的數據,設置 nRF905為發送模式,調用發送代碼,延時一段時間,等待數據發送完畢;同理在接收端也執行相同的初始化,不同的只是初始化完畢后,把nRF905模塊設置成接收模式,然后調用接收程序。最后通過串口在上位機進行顯示。

7 實驗分析

文中對其軟硬件進行了設計和調試,構建了基于SPI無線通信系統平臺。實驗證明,通過該系統無線測試板殼應力,在nRF905發射模塊端,敲打板殼使之發生形變,再用應變儀傳感器測得其形變的電壓值,在數據發射之前對此模擬信號進行AD采集,并通過無線發射模塊把采集到的數據發射出去;同時先在離發射模塊相距50 m的位置放置一個接收模塊,接收發射數據并顯示。然后間距每進行一次實驗后增加50 m。以此判斷它們在保證信號傳輸穩定情況下的最遠傳輸距離。測得最佳結果在相距350 m以內的樓宇之間,數據傳輸穩定。超過350 m時,數據顯示出現時顯時無的現象。表1是在300 m左右實際測得的幾組應變值。

8 結束語

文中介紹了用SPI總線接口進行數據傳輸的實現方法,采用nRF905射頻收發芯片和STC89C52RC單片機設計了無線數據傳輸系統,完成硬件電路和系統軟件調試后,進行了無線數據收發實驗。實驗過程是通過應變儀傳感器測板殼形變得到的模擬信號,經AD采集后產生要發送的數據,然后對其進行發射、接收和顯示。實驗結果表明,在相距350 m的樓宇之間通信,該無線傳輸系統工作穩定,接收和發射的數據完全相同,這表明該系統能實現數據的有效傳輸,具有高速、抗干擾能力強等優點。

責任編輯:gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 傳感器
    +關注

    關注

    2541

    文章

    49961

    瀏覽量

    747512
  • 芯片
    +關注

    關注

    450

    文章

    49636

    瀏覽量

    417164
  • 單片機
    +關注

    關注

    6023

    文章

    44376

    瀏覽量

    628392
收藏 人收藏

    評論

    相關推薦

    基于nRF905無線串口通信系統

    本文介紹了一種硬件設計簡單、數據傳輸可靠的無線串口通信系統的設計與實現。文中從基于nRF905芯片
    發表于 03-04 12:21

    stm32單片機驅動nrf905的問題

    我用51單片機與 stm32單片機進行無線通信,現在,M3可以發送數據51
    發表于 10-13 00:22

    NRF905無線傳輸模塊驅動51單片機傳輸數據

    NRF905無線傳輸模塊驅動51單片機傳輸數據
    發表于 05-04 21:24

    一種基于nRF905和C8051F單片機無線數據傳輸系統設計

    無線射頻器收發組成的一種無線數據傳輸系統的方案。該系統由發射和接收模塊組成,發射模塊主要將要發送的數據
    發表于 07-19 06:02

    如何利用ATmega16和nRF905實現無線數據傳輸設備設計?

    本文介紹利用ATmega16單片機無線數據收發芯片nRF905構成的短距離無線
    發表于 06-01 06:54

    基于PC 無線水文信息數據傳輸系統的設計與實現

    基于PC 無線水文信息數據傳輸系統的設計與實現摘要:PC
    發表于 04-23 14:10 ?29次下載

    基于nRF905無線數據傳輸系統

    介紹了單片射頻收發器nRF905,設計了基于nRF905和MCU的無線通信系統;給出了相關的硬件設計電路和完整的通信協議;經過實際
    發表于 12-13 17:11 ?141次下載

    基于SPI總線的無線數據傳輸系統設計

    基于SPI總線的無線數據傳輸系統設計   摘要: 通過基于SPI總線的無線數據通信設備,利用無線
    發表于 03-13 11:42 ?3727次閱讀
    基于SPI總線的<b class='flag-5'>無線</b><b class='flag-5'>數據傳輸</b><b class='flag-5'>系統</b>設計

    NRF905無線串口通信系統

    本文介紹了一種硬件設計簡單、數據傳輸可靠的無線串口通信系統的設計與實現。文中從基于nRF905芯片
    發表于 03-22 14:23 ?216次下載

    NRF905無線收發芯片原理及設計實現

    介紹了無線收發芯片nRF905 的功能, 及其與51 單片機的接口設計。單片機可以很容易地通過S
    發表于 03-02 16:43 ?444次下載
    <b class='flag-5'>NRF905</b><b class='flag-5'>無線</b>收發<b class='flag-5'>芯片</b>原理及設計<b class='flag-5'>實現</b>

    nRF905無線數據傳輸系統

    nRF905無線數據傳輸系統
    發表于 11-06 11:32 ?0次下載

    基于nRF905芯片無線傳輸設計與實現

    介紹 了利 用nRF905芯片進行 無線傳輸的設計 思想和 實現方法。整個無線
    發表于 10-25 18:04 ?547次下載

    nRF905無線數據傳輸系統

    電子設計研發部分的研發人員常用資料,nRF905無線數據傳輸系統,感興趣的可以瞧一瞧。
    發表于 11-03 14:53 ?0次下載

    NRF905無線收發芯片原理及設計實現

    介紹了無線收發芯片nRF905 的功能,及其與51單片機的接口設計。單片機可以很容易地通過SPI
    發表于 06-17 08:00 ?11次下載
    <b class='flag-5'>NRF905</b><b class='flag-5'>無線</b>收發<b class='flag-5'>芯片</b>原理及設計<b class='flag-5'>實現</b>

    NRF905無線模塊軟硬件開發包資料包括AVR MSP430 C51單片機軟件DEMO源碼: 51

    NRF905無線模塊軟硬件開發包資料包括AVR MSP430 C51單片機軟件DEMO源碼: 51系(周立功
    發表于 07-22 12:44 ?36次下載
    <b class='flag-5'>NRF905</b><b class='flag-5'>無線</b>模塊軟硬件開發包資料包括AVR MSP430 C<b class='flag-5'>51</b><b class='flag-5'>單片機</b>軟件DEMO源碼: <b class='flag-5'>51</b>系