标题: 两轮平衡车STM32源代码 [打印本页]

作者: sui    时间: 2017-4-6 08:05
标题: 两轮平衡车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, 下载次数: 287)

作者: sui    时间: 2017-4-6 08:09
stm32源代码
作者: jxdianqi    时间: 2017-5-11 18:47
刚想学stm,请问楼主用什么软件打开,谢谢
作者: skycnfish3    时间: 2017-10-26 11:28
谢谢分享,可以学习下
作者: mengstudent    时间: 2018-3-2 15:40
不错,注解很详细呀
作者: 清之铭    时间: 2018-3-2 20:52
我是穷人,先留个标记,等有黑币了再下吧!
作者: Anger    时间: 2018-4-22 22:19
下载了,可以直接使用,但是遇到了一些问题
作者: zhao13    时间: 2018-9-30 10:24
只有头文件打不开
作者: z1195226039    时间: 2018-12-20 17:55
是c代码吗?
作者: dfsdad    时间: 2019-7-15 09:24
有用6050控制电机的吗
作者: ※※※    时间: 2019-7-15 16:36
很好的,谢谢
作者: 嘟嘟胖子    时间: 2019-7-15 17:56
没币,先留个标记,等有黑币了再下吧!
作者: love2008    时间: 2019-12-15 12:54
没币,先留个标记,等有黑币了再下吧
作者: xxxue    时间: 2020-5-8 20:06
感谢分享!学习一下。
作者: hashjkxkj    时间: 2020-5-13 21:06
厉害了
作者: 你个陈里人    时间: 2020-6-7 22:04
有原理图吗?
作者: 此生皆浮梦lhd    时间: 2022-5-15 21:01
jxdianqi 发表于 2017-5-11 18:47
刚想学stm,请问楼主用什么软件打开,谢谢

keil 5吧

作者: 衡南    时间: 2022-8-14 17:05
怎么把文件下载到stm32里面





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1