DIY小四軸之電路設計(三)

DIY小四軸之電路設計(三)

上次我們分析過空心杯電機的驅動、基本傳感器的電路配置,下面我們來聊聊2.4G通信電路和最小系統

五、2.4G通信電路

飛行器必須要和外部通信,比如和手柄通信,常用的通信手段有2.4G通信、藍牙通信等等。2.4G通信的解決方案有兩個,一個是直接在四軸上做一個排針接口,然後接入某寶上可以輕鬆買到的2.4G模塊。
在這裏插入圖片描述
另一個方案是將2.4G通信電路直接開在飛行器電路板上面,當然這個方案略顯複雜,可能不適合新手,不感興趣的可以跳過去看後面。這裏介紹一款Si24R1的2.4G通信芯片。

Si24R1數據手冊: https://wenku.baidu.com/view/13e8aa404128915f804d2b160b4e767f5bcf8004.html.

Si24R1是一款工作在2.4~2.5GHz 世界通用ISM 頻段、專爲低功耗無限場合設計,集成嵌入式ARQ基帶協議引擎的無線收發器芯片。工作頻率範圍爲2400MHz—2525MHz,共有126個1MHz的帶寬的信道。

它與單片機之間通過SPI通信,之所以選擇SPI通信,是因爲它比IIC和USART等通信方式都要快,畢竟通信模塊本身就需要去傳輸大量信息。其引腳定義如下圖:
在這裏插入圖片描述
爲了方便理解,我們對照一個已經成型的電路圖來講解。
在這裏插入圖片描述
中間的芯片是Si24R1芯片,下面的Y2是一個四引腳16MHz的晶振,左側出來的部分是天線配置電路,左下角是電源轉換電路,我們一個部分一個部分地來看。

首先是電源轉換電路,是通過R10和R11兩個0值電阻將RF_3V3和3V3連在一起,將RF_GND與GND連在一起,0值電阻就是沒有電阻,作用是方便調試,只要將電阻焊上去整個2.4G射頻電路才啓動。

其次是Si24R1芯片的SPI部分,正常的SPI通信至少需要四根線:
(1)SDO/MOSI – 主設備數據輸出,從設備數據輸入;
(2)SDI/MISO – 主設備數據輸入,從設備數據輸出;
(3)SCLK – 時鐘信號,由主設備產生;
(4)CS/SS – 從設備使能信號,由主設備控制。
這裏分別對應上面的4、5、3、2號引腳,這些引腳需要被接在單片機設定好的引腳上面。

其次是CE引腳,它的作用是選擇芯片的收發模式。然後是IRQ引腳,它的作用是接收中斷信號,如果單片機代碼寫得比較好,可是嘗試使用中斷去控制芯片,通信速度會快很多。

其次是VDD和VSS,分別代表電源正極和負極,電源正負極之間需要接濾波電容,不同大小的濾波電容可以過濾掉不同頻率的交流分量。

其次是XC2和XC1是晶振接口,爲什麼這個芯片明明接了SCLK,有了時鐘信號,還需要晶振呢?這是因爲SCLK是針對於SPI通信協議來說的,它統一了單片機和芯片ARQ引擎之間的時間關係;而這個晶振提供的時鐘信號是針對內置的射頻電路包括FSK調製器和解調器使用的,它統一的是模塊和模塊的天線、調製解調部分的時間關係。

言歸正傳,四腳無源晶振是有極性的,OSCO-XC2,OSCI-XC1這個關係不能顛倒。兩個電容(負載電容)的作用是把電能轉換成其他形式的能。如果沒這兩個電容的話,振盪部分會因爲沒有迴路而停振。具體的需要去了解晶振電路。

再向後看就是天線部分,這個部分建議大家直接參考Si24R1的數據手冊,裏面有一個最基本的配置電路。具體天線電路設計到更深層的射頻電路知識,我也不是很瞭解。

六、單片機最小系統

現在我們有了電機驅動電路作爲飛行器的翅膀、有了傳感器配置電路作爲飛行器的眼睛、有了電源電路作爲飛行器的心臟,有了2.4G射頻電路作爲遙控器通信的手段,下面我們需要給飛行器安裝一個大腦。

單片機作爲一個控制系統,是四軸飛行器的大腦,我們需要把大腦給搭建好,隨後才能去控制周圍的電路。
在這裏插入圖片描述
單片機說簡單點,本質上不就是這個芯片嘛,我們需要設計一個電路來驅動這個芯片。驅動這樣一個芯片,外圍電路得滿足四種基本需求:電源、復位、時鐘、調試接口。恰好滿足這四種功能的單片機電路,稱之爲單片機的最小系統。當然這部分需要參考的自然是我們的芯片手冊,下面我們以STM32C8T6爲例,來分開講一下這四種電路是怎樣的。

1.電源:單片機一般都是3.3v供電

在這裏插入圖片描述
這裏介紹幾種常用的引腳字符:
VCC:C=circuit 表示電路的意思, 即接入電路的電壓
VDD:D=device 表示器件的意思, 即器件內部的工作電壓;
VSS:S=series 表示公共連接的意思,通常指電路公共接地端電壓

VDDA,VSSA是模擬部分的電源,A=Analog,爲所有的模擬電路部分供電,包括:ADC模塊,復位電路,PVD(可編程電壓監測器),PLL,上電覆位(POR)和掉電覆位(PDR)模塊,控制VBAT切換的開關等。即使不 使用ADC功能,也需要連接VDDA。

VDDA的電壓的精確度直接影響到ADC的精確度。所以在一些比較專業的設計中呢,VDDA通常是通過一個精準3V3芯片來供電的,在這裏我們不需要ADC功能特別準確,所以我們就用兩個濾波電容,意思意思就可以了。

2.時鐘電路:
一般的晶振都是應該去設計外部容抗匹配,如下如所示:
在這裏插入圖片描述
三個引腳的晶振其實是把兩個電容集成到裏面去了,晶振兩端的引腳就是晶振引腳,中間的引腳是地線,外部不需要另外接匹配電容了。
在這裏插入圖片描述
3.啓動與復位
單片機啓動的模式有三種,是由單片機BOOT0和BOOT1兩個引腳上的電平決定的,三種模式如下:

BOOT0 BOOT1 啓動模式
低電平 低或高 從主閃存存儲器啓動
高電平 低電平 從系統存儲器啓動
高電平 高電平 從內置SRAM啓動

(1)用戶閃存 : 芯片內置的Flash,正常的工作模式。
(2)SRAM: 芯片內置的RAM區,就是內存,可以用於調試。
(3)系統存儲器: 芯片內部一塊特定的區域,芯片出廠時在這個區域預置了一段Bootloader,就是通常說的ISP程序。這個區域的內容在芯片出廠後沒有人能夠修改或擦除,即它是一個ROM區。啓動的程序功能由廠家設置。

我們通常用前兩種啓動模式,所以只需要讓BOOT1總是置爲低電平;而BOOT0是可變的就可以了。

4.調試接口一般有SWD和JTAG接口,當然如果想用USART1也是可以的,把對應IO口用排母接出來可以了,具體的內容查詢STM32對應的芯片手冊。

電路的設計到這裏就結束了,以後會看個人情況來更新STM32平臺上的代碼部分。歡迎留言交流,如有不對之處,懇請指出。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章