<li id="m8eoi"><s id="m8eoi"></s></li>
  • <small id="m8eoi"><div id="m8eoi"></div></small>
  • <small id="m8eoi"></small>
  • <s id="m8eoi"><li id="m8eoi"></li></s>
  • <small id="m8eoi"></small><small id="m8eoi"><li id="m8eoi"></li></small><small id="m8eoi"><button id="m8eoi"></button></small><small id="m8eoi"><li id="m8eoi"></li></small><small id="m8eoi"><li id="m8eoi"></li></small>
  • <small id="m8eoi"><li id="m8eoi"></li></small>
  • <small id="m8eoi"><div id="m8eoi"></div></small><xmp id="m8eoi"><div id="m8eoi"></div>
  • <xmp id="m8eoi"><li id="m8eoi"></li>
  • <div id="m8eoi"><li id="m8eoi"></li></div>
  • <small id="m8eoi"><div id="m8eoi"></div></small>
    專注電子技術學習與研究
    當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

    用單片機實現藍牙功能

    作者:佚名   來源:本站原創   點擊數:  更新時間:2009年03月05日   【字體:

      下面的文字只是關于藍芽技術的調制算法方面,我認為只需要將藍芽模塊加在單片機上就可以了,而不必通過單片機編程來實現具體的算法,只需要編寫使兩個模塊的接口就可以,也就是單片機發送信號時的激勵程序,接受外來信號后的處理程序。置于其余就由作為硬件設備的藍芽來自行處理。不過我并不確定,我會查查看的.

      藍牙技術是用于替代電纜或連線的短距離無線通信技術。它需要把數字信號轉換成模擬信號以便在空間中傳輸,它采用的調制方式是高斯頻移鍵控,以下簡稱GFSK, 要了解GFSK,就要先說說頻移鍵控的原理,以下簡稱 FSK

     FSK: 簡單的講,就是用不同的頻率來調制不同的碼元,比如說二進制,有0和1 兩種碼元,那么我就需要兩個頻率f1和f2來調制數字0和1, 在接受端根據頻率f1代表數字0,頻率f2代表數字1的道理把模擬信號還原為數字信號。

     GFSK:就是在進行FSK 調制之前,將原始信號通過一個高斯低通濾波器來限制信號的頻譜寬度,這樣一來可以獲得更加緊湊的頻譜,也就是過濾掉高頻的信號,但是保留了足夠的頻帶能量以便在收端成功恢復信號。高斯低通濾波器限制了帶寬,對基帶信號進行了整形,形成高斯脈沖信號。下面說下加入高斯低通濾波器的好處。

     假設我用-1來代表該信號頻譜覆蓋范圍里最低的頻率成分;用1來代表該信號頻譜覆蓋范圍里最高的頻率成分。一旦信號從-1跳變到1,或者從1跳變到-1的時候,那么被調制的信號的波形變換太快了,很有可能會導致在原始信號的頻率范圍里出現新的頻率成分,那么我們的信號就已經失真了,這是我們最不想看到的結果。而這正是FSK的一個隱憂。高斯低通濾波器使得信號變得平滑,同樣的從-1到1,因為濾波器限制了帶寬,于是實際效果是-1,-98,-93,--- 96,99,1那么用這些變化平滑的數字脈沖信號去調制載波,就會減少上述出現的多余頻率成分的現象。

    那么為什么在藍牙技術中采用了GFSK而不是FSK? 因FSK技術對于信號的頻譜寬度沒有什么限制,頻率間的范圍可能很大,導致跳變實在太快,這樣就造成了失真的可能和頻譜的利用率不高(這句話是我從一英文網上看到的,不過現在還不明白),而藍牙傳輸的頻譜并不大,所以采用GFSK技術。還有,有限的帶寬可以節省電流,那么對于手機和單片機的壽命是有好處的!


    我認為不必深究高斯低通濾波的原理,因為該濾波器是一個硬件設備,作為組件是直接加在藍芽模塊之中的。如果真的要對算法進行編程,那么我們就只需要對濾波器里出來的信號進行處理,也就是如何用程序來表示FSK算法。

    下面我結合具體的藍芽模塊來說下GFSK調制在其中的應用

    藍芽的載波選用全球公用的2.4Ghz

    實際射頻通道為f=2402 k×1mhz,k=0,1,2,…,78 共79個頻帶,并采用跳頻方式來擴展頻帶,跳頻速率為1600跳/s?傻玫79個1mhz帶寬的信道。藍牙設備采用gfsk調制技術,通信速率為1mbit/s,實際有效速率最高可達721kbit/s,通信距離為10m,發射功率為1mw;當發射功率為100mw時,通信距離可達100m

    對于短距離的數據傳輸,當前最普遍的傳輸方法是有線傳輸、紅外傳輸和藍牙傳輸。有線傳輸是較為傳統的數據傳輸方法,需要傳輸電纜。當設備為移動設備或設備數目較多時這將帶來很大的不便;紅外傳輸經常受到溫度、輻射等干擾,且無法穿過實體進行傳輸;使用藍牙技術可以很好地摒棄這兩個缺點,但目前藍牙技術一般被用于高端的電子設備中。對于低端的電子設備,如何使用藍牙技術還是一個有待解決的問題。針對這個問題,單片機學習網設計了一個基于藍牙技術和單片機的數據傳輸系統,為嵌入式電子廠商提供一種技術參考.

    1    系統的整體架構
    該系統由鍵盤、單片機、LED顯示器、固化了電纜通信協議(RFCOMM)的藍牙模塊和PC機組成。

    2    系統的工作原理
    系統的核心是單片機和藍牙模塊。系統上電后,單片機初始化自身和所有外圍接口,藍牙模塊主動尋找其它設備并自動建立連接,然后系統進入就緒等待狀態。按照數據傳輸方向,可以把系統分為發送和接收兩個子系統。
    對于發送子系統,單片機接收由鍵盤傳來的鍵值,按照一定的協議規則對其進行轉換,再顯示到顯示器上。同時,單片機調用自身的鍵值分析程序,分析用戶要輸入數據還是要發送數據。在輸入狀態下,單片機記下用戶所輸入的每一個數據并將其打包、存儲,直到用戶按下“發送”鍵。此時單片機轉變為發送狀態,控制藍牙模塊將剛才存儲的數據發送出去。
    對于接收子系統,單片機按照事先約定的協議接收從藍牙模塊傳來的數據,直到遇到數據結束符。而后單片機對數據進行分析、解包,并將其顯示在顯示器上為了增強可操作性,本數據傳輸系統考慮了單片機和PC機兩種情況。每一個子系統既可以使用單片機和藍牙模塊接口,也可以使用PC機和藍牙模塊接口。采用這樣的技術后,不僅單片機之間可以互傳數據,而且單片機還可以和PC機互傳數據。
    3      系統的程序設計
    單片機上電后,首先要初始化自身。在本系統中,使用了鍵盤掃描和LED顯示接口芯片8279。因此在主程序中還要對8279進行初始化:
                    COM8279 = 0xd1;      //總清除

                 COM8279 = 0x00;      //8*8字符顯示,左邊輸入,編碼掃描鍵盤, 雙鍵封鎖
                    COM8279 = 0x50;      //讀FIFO RAM命令
                    COM8279 = 0x90;      //寫顯示RAM(數碼管選擇)

    之后,可以把程序分為接收、發送和顯示三個主要部分。
    3.1    接收部分
    系統采用查詢的方法采集藍牙模塊傳送過來的串行數據。對鍵盤的按鍵值進行設定由個人的習慣來進行設定。以C語言的形式的偽代碼來表示,接收函數的偽代碼如下:

    void RcvData(void){
    while(DataReceivingNotDone){
        ReceiveNextBit;
    }
    }
    3.2    發送部分
    鍵盤數據經過處理后,轉化為串行數據發送到藍牙模塊,再由藍牙模塊發送出去。發送函數的C語言形式的偽代碼為:

    void SendData(void){
    if( KeyValue < 10 ){    //如果數據是一位數
            SendOneByte();      //發送這一位
    }
    else{                   //如果數據是兩位數
            SendTwoBytes();     //分成兩位發送,先發送高位再發送低位
    }
    }
    3.3    顯示部分
    系統中使用的是八位LED顯示,通過控制顯示的接口芯片8279,可以控制LED顯示的內容。顯示函數如下:

    void DispLong(unsigned int dat,unsigned char addr){
        COM8279 = 0x90 + addr;
        DAT8279 = disp_tab[0];
        COM8279 = 0x90 + addr;
        while(dat){
            DAT8279 = disp_tab[dat % 10];
            dat /= 10;
        }
    }
    4     結束語
    短距離通信的發展趨勢是無線通信。藍牙技術在當前已經應用得比較普遍,但是這種應用往往局限于高端的電子產品中。本文的設計采用低成本的單片機來和藍牙模塊進行技術集成,使得藍牙技術也可以應用在低端電子產品中。如果您有需要可以與51hei.com聯系,本文所設計的數據傳輸系統在實際中運行良好,可以為嵌入式電子廠商提供一種技術參考。

    關閉窗口
    欧美日韩国产图片区一区_亚洲精品第一页国产精品_五月天天天综合精品无码_偷拍自怕亚洲ckplayer_国产日韩精品欧美一区
    <li id="m8eoi"><s id="m8eoi"></s></li>
  • <small id="m8eoi"><div id="m8eoi"></div></small>
  • <small id="m8eoi"></small>
  • <s id="m8eoi"><li id="m8eoi"></li></s>
  • <small id="m8eoi"></small><small id="m8eoi"><li id="m8eoi"></li></small><small id="m8eoi"><button id="m8eoi"></button></small><small id="m8eoi"><li id="m8eoi"></li></small><small id="m8eoi"><li id="m8eoi"></li></small>
  • <small id="m8eoi"><li id="m8eoi"></li></small>
  • <small id="m8eoi"><div id="m8eoi"></div></small><xmp id="m8eoi"><div id="m8eoi"></div>
  • <xmp id="m8eoi"><li id="m8eoi"></li>
  • <div id="m8eoi"><li id="m8eoi"></li></div>
  • <small id="m8eoi"><div id="m8eoi"></div></small>