因為是新申請的部落格,所以申請了總想往裡面加點東西,所以把我之前在機智雲寫的帖子複製了過來
(各位抱歉,由於之前上傳的檔案可能有錯誤,之前上傳的檔案pwm不能用,那麼我又重新上傳了乙個檔案,這個檔案的pwm載入到電機上了,之前的電機正反轉功能沒有了,有錯誤的檔案我也沒刪除大家對照著看下吧!)
本人qq 522414928 (void loop)
phone 13473465975 (
打廣告了哈,其實我也不是啥名人,就是分享一下我的開發過程,希望對看過我的帖子的人有幫助
)廢話不多說,下面開始 我的分享
需要的東西 gokit 2.0 stm32底板 (
其他的開發板使用者也可以看看我的程式及過程,然後看看能不能移植,c語言好的話沒問題的
)1 首先第一步 建立新產品 (我的是建好的哈,大家應該都明白,方案選的是wifi,產品分類產品名稱都自己看著弄就行)
這是我建好的那個 看下圖
2 第二部 就比較關鍵了建立資料點,我建了很多哈,因為我把 12個外部引用的引腳都開發了,雖然不知道接什麼裝置 好了,看下圖就明白了
這個也是我之前建好的,大家看明白
3 第三部 本來應該是手機端軟體「機智雲」掃碼檢視虛擬裝置有沒有錯誤,(其實這是不必要的,因為我認為是不會出錯的,***雲端一定是對應的)
具體如下:
4 第四部 用keil 5軟體 開啟project 資料夾下的
這個是project 資料夾
開啟之後,是這樣的,看圖 ok,就是這樣
首先,我們新建兩個檔案,pwm1.c 和pwm2.h (叫什麼你隨意,學過stm32的都懂)儲存在hal資料夾下的hal_pwm1資料夾下,下面這樣
然後往裡面新增程式,看圖吧(裡程式不全,具體程式我就複製在這兩個程式下邊)
pwm1.c裡的
#include
#include "hal_pwm1/pwm1.h"
void
tim3gpioconfig(void)
void tim3modeconfig(void)
void pwm1init(void)
void pwm1control(uint8_t m1,uint8_t m2)
void pwm1status(motor_t status)
else
else
} }
pwm1.h裡的
7這一步就是新增程式初始化到 main.c 看圖更詳細 在main.c裡面 包含檔案
#include "hal_pwm1/pwm1.h"
然後在void userinit(void)
這個函式裡面新增
pwm1init()
(按照我的來就可以了,不懂得再問我)
8 這一步可以算改程式的最後一步了,在gizwits_product.c 這個程式裡面找到case event_pwm1: 然後在//user handle 前面加上一句程式 pwm1status(pwm1value); (警告,你的程式可能沒有
event_pwm1,這是根據你之前在資料點那起的名字所決定的
)這是帖子原位址
二次開發點亮乙個led詳細過程:
STM32 PWM占空比和訊號週期的控制因素分析
博文基於stm32f103zet6晶元,標準韌體庫3.5.0和mdk5編寫 博文並不討論pwm的基礎知識,而是直接去談對pwm靈活的控制問題 想全面了解的可以看看我寫的專門針對pwm的部落格 如有不足之處還行多多指教 占空比 0 100 訊號週期 pwm訊號裡乙個高電平和乙個低電平的時間和 對這兩個...
控制led 用pwm的方法控制LED亮度
在本課程中,您將學習如何通過電位計來更改led的亮度。電位器實際上是乙個可調的電阻,阻值隨意手柄的轉動而變化,模擬電路中,我們可以將電位器串聯在電路中,改變led亮度。本次實驗,電位器只提供乙個訊號,實際燈的亮度由arduino控制。二 材料準備 1 arduino uno開發板 1 麵包板 若干杜...
PWM 用按鍵控制 LED 的亮度
以前寫過一篇關於 pwm 的博文,已經有一年了,鏈結如下 文中使用了示波器來顯示不同占空比的波形。其實,利用 led 也能通過亮度來表現出 pwm 引數的變化,用實物進行測試,效果很好,但是用 proteus 進行 試驗,卻只是看到閃爍的厲害,基本上看不出亮度的變化。近來發現,加上乙個大電容,就可以...