标题: 两轮差速小车源码(ROS专用) [打印本页]

作者: 爱慕春妮    时间: 2021-10-4 17:27
标题: 两轮差速小车源码(ROS专用)
  1. #include "sys.h"


  2. u8 Flag_Way=0,Flag_Show=0,Flag_Stop=1;                 //停止标志位和 显示标志位 默认停止 显示打开
  3. int Encoder_Left,Encoder_Right;             //左右编码器的脉冲计数
  4. float Velocity,Velocity_Set,Turn,Angle_Set;
  5. int Motor_A,Motor_B,Target_A,Target_B;  //电机舵机控制相关           
  6. int Voltage;                                //电池电压采样相关的变量
  7. float Velocity_KP=62,Velocity_KI=62;               //速度控制PID参数
  8. u8 Urxbuf[4],rxbuf[4],Usart_Flag;
  9. int main(void)
  10. {
  11.         int ua_Encoder,ub_Encoder;
  12.         Stm32_Clock_Init(9);            //=====系统时钟设置
  13.         delay_init(72);                 //=====延时初始化
  14.         JTAG_Set(JTAG_SWD_DISABLE);     //=====关闭JTAG接口
  15.         LED_Init();                     //=====初始化与 LED 连接的硬件接口
  16.         KEY_Init();                     //=====按键初始化
  17.         OLED_Init();                    //=====OLED初始化
  18.         Encoder_Init_TIM2();            //=====编码器接口
  19.         Encoder_Init_TIM3();            //=====初始化编码器
  20.         delay_ms(300);                  //=====延时启动
  21.         uart_init(72,115200);           //=====初始化串口1
  22.   Motor_PWM_Init(7199,0);                                  //=====初始化PWM 10KHZ,用于驱动电机
  23.         Adc_Init();                     //=====电池电压采样adc初始化
  24.         uart2_init(36,115200);                                   //=====串口3初始化 蓝牙
  25.         Timer_Init(49,7199);            //=====定时中断初始化
  26.         while(1)
  27.                 {            
  28.                                         if(Flag_Show==0)         //使用MiniBalance APP和OLED显示屏
  29.                                         {        
  30.                                                         oled_show();          //===显示屏打开
  31.                                         }               
  32.                                 ua_Encoder=Encoder_Left+500;
  33.                                 ub_Encoder=Encoder_Right+500;
  34.                                 usart1_send(0xff);               
  35.                                 usart1_send(0xfe);        
  36.                                 usart1_send(ua_Encoder>>8);
  37.                                 usart1_send(ua_Encoder&0x00ff);
  38.                                 usart1_send(ub_Encoder>>8);
  39.                                 usart1_send(ub_Encoder&0x00ff);               

  40.                                 usart2_send(0xff);               
  41.                                 usart2_send(0xfe);        
  42.                                 usart2_send(ua_Encoder>>8);
  43.                                 usart2_send(ua_Encoder&0x00ff);
  44.                                 usart2_send(ub_Encoder>>8);
  45.                                 usart2_send(ub_Encoder&0x00ff);                                                               
  46.         }
  47. }
复制代码

代码下载: 1.标准版两轮差速小车源码(ROS专用).7z (133.51 KB, 下载次数: 23)





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