找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 10581|回复: 17
打印 上一主题 下一主题
收起左侧

两轮平衡车STM32源代码

  [复制链接]
跳转到指定楼层
楼主
两轮平衡车源代码,希望对大家有用.


stm32主程序:
  1. #include "sys.h"
  2.   /**************************************************************************
  3. 作者:平衡小车之家
  4. **************************************************************************/
  5. u8 Way_Angle=2;                             //获取角度的算法,1:四元数  2:卡尔曼  3:互补滤波 默认搭载卡尔曼滤波
  6. u8 Flag_Qian,Flag_Hou,Flag_Left,Flag_Right,Flag_sudu=2; //蓝牙遥控相关的变量
  7. u8 Flag_Stop=0,Flag_Show=1;                 //停止标志位和 显示标志位 默认停止 显示打开
  8. int Encoder_Left,Encoder_Right;             //左右编码器的脉冲计数
  9. int Moto1,Moto2;                            //电机PWM变量 应是Motor的 向Moto致敬       
  10. int Temperature;                            //显示温度
  11. int Voltage;                                //电池电压采样相关的变量
  12. float Angle_Balance,Gyro_Balance,Gyro_Turn; //平衡倾角 平衡陀螺仪 转向陀螺仪
  13. float Show_Data_Mb;                         //全局显示变量,用于显示需要查看的数据
  14. int main(void)
  15. {
  16.         Stm32_Clock_Init(9);            //系统时钟设置
  17.         delay_init(72);                 //延时初始化
  18.         JTAG_Set(JTAG_SWD_DISABLE);     //=====关闭JTAG接口
  19.         JTAG_Set(SWD_ENABLE);           //=====打开SWD接口 可以利用主板的SWD接口调试
  20.         LED_Init();                     //初始化与 LED 连接的硬件接口
  21.         KEY_Init();                     //按键初始化
  22.         OLED_Init();                    //OLED初始化
  23.         uart_init(72,115200);           //初始化串口1
  24.   uart2_init(36,9600);            //串口2初始化
  25.         MiniBalance_PWM_Init(7199,0);   //=====初始化PWM 10KHZ,用于驱动电机
  26.         Encoder_Init_TIM2();            //=====编码器接口
  27.         Encoder_Init_TIM3();            //初始化编码器2
  28.         IIC_Init();                     //模拟IIC初始化
  29.   MPU6050_initialize();           //=====MPU6050初始化       
  30.         DMP_Init();                     //初始化DMP     
  31.   Timer1_Init(49,7199);           //=====5MS进一次中断服务函数
  32.         while(1)
  33.                 {
  34.       
  35.                                         Temperature=Read_Temperature();  //===读取MPU6050内置温度传感器数据,近似表示主板温度。       
  36.                                         oled_show(); //===显示屏打开
  37.                                 //  printf("平衡倾角%f  左轮编码器%d  右轮编码器%d  电池电压%dmV\r\n",Angle_Balance,Encoder_Left,Encoder_Right,Voltage);//向上位机发送数据
  38.                                         delay_ms(100);        //延时减缓数据传输频率,确保通信的稳定

  39.                 }
  40. }
复制代码

完整代码下载:
平衡车源码.zip (3.94 MB, 下载次数: 286)

评分

参与人数 2黑币 +10 收起 理由
zhao1022 + 5 共享资料的黑币奖励!
wdehyz + 5 很给力!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏6 分享淘帖 顶1 踩1
回复

使用道具 举报

沙发
ID:186537 发表于 2017-4-6 08:09 | 只看该作者
stm32源代码
回复

使用道具 举报

板凳
ID:196311 发表于 2017-5-11 18:47 | 只看该作者
刚想学stm,请问楼主用什么软件打开,谢谢
回复

使用道具 举报

地板
ID:37553 发表于 2017-10-26 11:28 | 只看该作者
谢谢分享,可以学习下
回复

使用道具 举报

5#
ID:275615 发表于 2018-3-2 15:40 | 只看该作者
不错,注解很详细呀
回复

使用道具 举报

6#
ID:285305 发表于 2018-3-2 20:52 | 只看该作者
我是穷人,先留个标记,等有黑币了再下吧!
回复

使用道具 举报

7#
ID:246215 发表于 2018-4-22 22:19 | 只看该作者
下载了,可以直接使用,但是遇到了一些问题
回复

使用道具 举报

8#
ID:403941 发表于 2018-9-30 10:24 | 只看该作者
只有头文件打不开
回复

使用道具 举报

9#
ID:450934 发表于 2018-12-20 17:55 | 只看该作者
是c代码吗?
回复

使用道具 举报

10#
ID:584198 发表于 2019-7-15 09:24 | 只看该作者
有用6050控制电机的吗
回复

使用道具 举报

11#
ID:520880 发表于 2019-7-15 16:36 | 只看该作者
很好的,谢谢
回复

使用道具 举报

12#
ID:580104 发表于 2019-7-15 17:56 | 只看该作者
没币,先留个标记,等有黑币了再下吧!
回复

使用道具 举报

13#
ID:33848 发表于 2019-12-15 12:54 | 只看该作者
没币,先留个标记,等有黑币了再下吧
回复

使用道具 举报

14#
ID:411479 发表于 2020-5-8 20:06 来自手机 | 只看该作者
感谢分享!学习一下。
回复

使用道具 举报

15#
ID:728732 发表于 2020-5-13 21:06 | 只看该作者
厉害了
回复

使用道具 举报

16#
ID:590459 发表于 2020-6-7 22:04 | 只看该作者
有原理图吗?
回复

使用道具 举报

17#
ID:1013529 发表于 2022-5-15 21:01 | 只看该作者
jxdianqi 发表于 2017-5-11 18:47
刚想学stm,请问楼主用什么软件打开,谢谢

keil 5吧
回复

使用道具 举报

18#
ID:990554 发表于 2022-8-14 17:05 | 只看该作者
怎么把文件下载到stm32里面
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表