|
用的是stm32f103c8t6最小系統(tǒng)板,實(shí)現(xiàn)功能是藍(lán)牙控制舵機(jī)轉(zhuǎn)動(dòng),之后stm32和藍(lán)牙模塊進(jìn)入休眠省電模式
這里采用了軟件發(fā)送AT指令使得藍(lán)牙木塊進(jìn)入休眠,需要注意的是不同廠家生產(chǎn)的藍(lán)牙模塊的AT指令不一樣。
這個(gè)程序很適合stm32新手練手編寫,簡(jiǎn)單實(shí)用,能復(fù)習(xí)到stm32兩大重要功能:脈寬調(diào)制和串口通信,另外對(duì)熟悉stm32f1系列單片機(jī)也有很大幫助
當(dāng)然最重要的是實(shí)用,自己做一個(gè)關(guān)燈裝置,在舍友的驚嘆聲中實(shí)現(xiàn)“魔法關(guān)燈”吧哈哈。
這個(gè)程序已經(jīng)是成熟的版本了,我是通過兩節(jié)南孚給藍(lán)牙模塊供電,四節(jié)南孚給stm32供電,已經(jīng)使用了半個(gè)月了(之前沒有加入藍(lán)牙休眠的時(shí)候一晚上就沒電了)
單片機(jī)源程序如下:
- #include "pwm.h"
- #include "system.h"
- #include "SysTick.h"
- #include "usart.h"
- int main()
- {
- // u8 i=0;
- SysTick_Init(72);
- NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //中斷優(yōu)先級(jí)分組 分2組
- TIM2_CH1_PWM_Init(199,7199);
- USART1_Init(9600);
- TIM_SetCompare3(TIM2,185);
-
- while(1)
- {
- // i++;
- sleep();
- servo_control();
- // if(i%20==0)
- // {
- // led1=!led1;
- // }
- // delay_ms(10);此處加上延時(shí)函數(shù)會(huì)使系統(tǒng)反應(yīng)極其慢
- }
- }
復(fù)制代碼
0.png (3.44 KB, 下載次數(shù): 41)
下載附件
2019-5-6 17:10 上傳
所有資料51hei提供下載:
USART藍(lán)牙控制舵機(jī)關(guān)燈.7z
(177.53 KB, 下載次數(shù): 62)
2019-5-6 17:11 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|