去年閑來無聊,正好手里有兩個帶有編碼器的電機和一個STM32開發(fā)板就做了一個平衡車,
來玩 ,控制器是 STM32F303 電機驅(qū)動芯片是TB6612FNG,有不足請大家指點。
IMG_20180228_200834.jpg (3.31 MB, 下載次數(shù): 81)
下載附件
2018-2-28 20:26 上傳
IMG_20180228_200820.jpg (3.13 MB, 下載次數(shù): 77)
下載附件
2018-2-28 20:26 上傳
IMG_20180228_200814.jpg (3.61 MB, 下載次數(shù): 82)
下載附件
2018-2-28 20:26 上傳
單片機源程序如下:
- /**
- ******************************************************************************
- * @file main.c
- * @author fengzi
- * @version
- * @date
- * @brief Main program body
- ******************************************************************************
- */
- #include "main.h"
- #include "delay.h"
- #include "led.h"
- #include "usart.h"
- #include "W25QXX.h"
- #include "stdio.h"
- #include "mpu6050.h"
- #include "inv_mpu.h"
- #include "inv_mpu_dmp_motion_driver.h"
- #include "exti.h"
- #include "control.h"
- #include "motor.h"
- #include "encoder.h"
- int main(void)
- {
-
- delay_init();//系統(tǒng)定時器初始化
- NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設置系統(tǒng)中斷優(yōu)先級分組2
- uart_init(128000);
- LED_Init(); //led初始化
- key_Init(); //按鍵初始化
- CUSTOM_W25Qxx_Init();//25q64初始化
- CUSTOM_EXTI_Init(); //mpu6050外部中斷5ms
- CUSTOM_PWM_Init(7199,0);
- Encoder_Init_TIM2();
- Encoder_Init_TIM4();
- MPU6050_Init();
- mpu_dmp_init();
- while (1)
- {
- if(delay_50ms>=10)
- {
- delay_50ms = 0;
- Task_20HZ();
- }
- if(delay_500ms>=100)
- {
- delay_500ms = 0;
- Task_2HZ();
- }
-
- }
- }
- /****************************END OF FILE****/
復制代碼
0.png (43.17 KB, 下載次數(shù): 86)
下載附件
2018-2-28 21:32 上傳
所有資料51hei提供下載:
STM32F303.rar
(654.52 KB, 下載次數(shù): 54)
2018-2-28 21:33 上傳
點擊文件名下載附件
源碼 下載積分: 黑幣 -5
|