stm32 智慧型避障小車(二)之sg90

2021-09-10 18:34:59 字數 1309 閱讀 3246

這一篇我要先寫sg90這篇,因為比hsr04簡單。總體的介紹思路是:實物講解、模組原理、**詳解

1、實物講解

首先我們先來看sg90的樣子:

然後再看看它的接線,買過來的sg90舵機模組引出來了三根線,分別為黃色、紅色、棕色,他們分別為訊號線、3.3v電源線和地線,接的時候要注意,不要接錯了。

2、模組原理

1、其實舵機可以分為兩種,一種是模擬舵機,一種是數字舵機,這兩者的區別是:模擬舵機需要一直給與要轉的角度命令,直到到自己想要的角度,注意這個給定的時間許多不許少,就像是小孩子一樣,你要不斷的給與鼓勵和獎賞,才會達到自己的要求;而數字舵機是只需要給定一次角度命令就行了,就像是長大了的孩子,你可以把事情很放心的交給他,說一次就好。

2、說了半天,那麼角度命令是什麼呢?其實就是我們熟悉的pwm訊號,下面給出占空比與旋轉的角度之間的關係:

高電平低電平

旋轉角度

0.5ms

19.5ms

-90度

1.0ms

19ms

-45度

1.5ms

18.5ms

0度2.0ms

18ms

45度2.5ms

17.5ms

90度我要對這個**做一些說明:

1)、高電平加上低電平等於 20ms,那是因為要求的pwm頻率是50hz,1s/50 = 20ms,所以週期就是20ms。

2)、角度怎麼看,想象自己站在xy軸的0座標上,正對著y軸,y軸就是0度。負度在左手邊,正度在右手邊。

3)、其實低電平的時間並沒有那麼死板,只要在0.5ms和20ms之間就可以。

3、**詳解

我使用的是野火指南者開發板,黃色訊號線連線的是pb8。

先來看gpio配置,配置為推挽輸出模式

void sg90_gpio_config(void)

接著是主函式裡的**,我實現的功能是先0度,在-90度,在90度旋轉。

int main(void)

i= 0;

// //舵機的左轉

for(;i<30;i++)

//i = 0;

//舵機的右轉

for(;i<30;i++)

//

}}

打完收工。。。。。。

stm32 藍芽 智慧型小車

電源問題已經解決,還是18650更給力,兩節就可以達到8v上下。原來是模仿網上下的模板,把模板燒進去發現並沒有成功,所以就把原來寫的 全部推翻,重新開始寫。其實寫乙個工程,最快的方法並不是一口氣把所有東西都給新增上,因為一旦出現錯誤,當然肯定會出現錯誤,根本不知道從 下手改bug,所以還不如乙個乙個...

基於STM32的智慧型小車(一)

基於stm32的智慧型小車 在假期自學了stm32,一直想做乙個智慧型小車,剛好這次有時間就在家自己製作了這個基於stm32的智慧型小車,小車基本功能包括循跡 壁障及手機藍芽控制,本人是第一次製作小車,有不對的,望大牛指教。一 製作產品基本材料清單 1 stm32c8t6核心板 一塊 2 l298n...

STM32 遙控 避障車製作記錄3 遙控

本次介紹遙控控制小車 遙控使用的是 2262 2272四路 安防配件 腳位及使用說明 遙控器接收端vt為輸出狀態指示引腳,遙控發射端任意按鍵有按動就可以輸出高電平。接線方式 前進a d2 pa10 後退b d0 pa11 左轉c d3 pa8 右轉d d1 pa9 注意接線共地 control.c ...