找回密码
 立即注册

QQ登录

只需一步,快速开始

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

基于stm32的一个平衡翘翘板小车源码

[复制链接]
跳转到指定楼层
楼主
ID:236209 发表于 2017-9-27 22:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
之前找的一个程序,不知道可行不可行

单片机源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "sys.h"
  4. #include "tracking.h"
  5. #include "usart.h"        
  6. #include "pwm.h"
  7. #include "encoder.h"
  8. #include "timer.h"
  9. #include "adc.h"
  10. #include "schedule.h"
  11. #include "DataScope_DP.h"
  12. #include "key.h"

  13. extern struct Encoder Encoder_2;
  14. extern struct Encoder Encoder_4;
  15. extern int Encoder_TIM;
  16. extern int Angel_evalue;
  17. extern int now_ang ;
  18. extern float out_c;
  19. extern int Encoder_first;
  20. extern int Encoder_end;
  21. int main(void)
  22. {
  23.         delay_init();                     //延时函数初始化         
  24.         LED_Init();                                   //初始化与LED连接的硬件接口
  25.         KEY_Init();
  26.         Inf_Init();                  //初始化与按键连接的硬件接口
  27.         LED0=0;                                        //点亮LED
  28.         LED1=0;
  29.         LED2=0;
  30.         Buzzer=0;
  31.         Bluetooth_Init(9600);
  32.         MiniBalance_PWM_Init(7199,0);//不分频。PWM频率=72000/(899+1)=80Khz
  33.         EXTIX_Init();
  34.         Encoder_Init_TIM2();
  35.         Encoder_Init_TIM4();
  36.         Angle_Adc_Init();
  37.         PWMLF = 0;
  38.         PWMLB = 0;
  39.         PWMRF = 0;
  40.         PWMRB = 0;
  41. //        delay_ms(100);
  42.         Timer1_Init(49,7199);           //=====定时中断初始化
  43.         while(1)
  44.         {
  45.                 //printf("%d\n",Encoder_TIM);
  46. //               
  47. //                key=KEY_Scan();
  48. //                if(key==1)
  49. //                        LED0=!LED0;
  50. //                else if(key==2)
  51. //                        LED1=!LED1;
  52. //                else if(key==3)
  53. //                        LED2=!LED2;
  54.         printf(" %d\t",Angel_evalue);
  55.         printf(" %d\n",now_ang);
  56.         printf("%f\n",out_c);
  57.                 printf(" %d\n",Encoder_first);
  58.                 printf(" %d\n",Encoder_end);
  59. //                printf("R: %d\n",Read_Encoder(4));
  60. //                printf("%d\n",Read_Velocity(4));
  61.                 if(Encoder_end>(Encoder_first+100))
  62.                 {
  63.                         Encoder_end-=1;
  64.                         Encoder_first+=1;
  65.                 }
  66.         delay_ms(100);
  67.         }
  68. }
复制代码

所有资料51hei提供下载:
2017-7-25-16-50 跷跷板.rar (319.35 KB, 下载次数: 8)


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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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