资源简介
0.96OLED实现数字、汉字、字符串、图片及上下按键功能切换显示

代码片段和文件信息
#include “control.h“
int walk_flag = ACCELERATEisturn = 0;
long Ctl_Tick = 0;
float Angle_Pre = 0;
int Encoder_Least;
int i = 0;
/**************************************************************************
函数功能:所有的控制代码都在这里面
5ms定时中断由MPU6050的INT引脚触发
严格保证采样和数据处理的时间同步
**************************************************************************/
int EXTI9_5_IRQHandler(void)
{
if(PBin(5)==0)
{
Ctl_Tick+=5; //中断时钟
Get_Angle(); //===更新姿态
switch(walk_flag)//
{
case LEFT: //左转
isturn = Roll_Left(Angle_Balance);Set_Pwm(Moto1Moto2); //isturn 判断转弯是否结束
if(isturn == -1) //转完弯
{
walk_flag = ACCELERATE; //加速
isturn = 0;
}
break;
case RIGHT:
isturn = Roll_Right(Angle_Balance);Set_Pwm(Moto1Moto2); //isturn 判断转弯是否结束
if(isturn == -1) //转完弯
{
walk_flag = ACCELERATE; //加速
isturn = 0;
}
break;
case STRAIGHT: //直走
// Encoder_Left += Read_Encoder(2);
// Encoder_Right += Read_Encoder(4);
//printf(“Encoder_Left %dEncoder_Right %d\r\n“Encoder_LeftEncoder_Right);\
if()
// if(Ctl_Tick < 5000)
velocity_angle(Angle_Balance);//调节走直
if(Angle_Balance>160||Angle_Balance<-160)
{
walk_flag = LOCK;
}
if(PBin(4))//左边探测到 探测到是1
{
PWM_LEFT = 500;
delay_diy(1000);
}
else if(PAin(7))//右边探测到 探测到是1
{
PWM_RIGHT = 500;
delay_diy(1000);
}
Set_Pwm(Moto1Moto2);
break;
case ACCELERATE://加速
// Encoder_Left += Read_Encoder(2);
// Encoder_Right += Read_Encoder(4);
//printf(“Encoder_Left %dEncoder_Right %d\r\n“Encoder_LeftEncoder_Right);
velocity_angle(Angle_Balance);
if(i<100)
{
Moto1 *= i*0.01;
Moto2 *= i*0.01;
i++;
}
else
{
walk_flag = STRAIGHT;
i = 0;
}
Set_Pwm(Moto1Moto2);
break;
case LOCK: //抱死
Lock();break;
case SLOW: //减速
Encoder_Left += Read_Encoder(2);
Encoder_Right += Read_Encoder(4);
//printf(“Encoder_Left %dEncoder_Right %d\r\n“Encoder_LeftEncoder_Right);
velocity_angle(Angle_Balance);
if(i<100)
{
Moto1 *= (100-i)*0.01;
Moto2 *= (100-i)*0.01;
i++;
}
else
{
walk_flag = LEFT;
i = 0;
}
break;
default:
break;
}
}
EXTI->PR=1<<5; //清除LINE5上的中断标志位
return 0;
}
/**************************************************************************
函数功能:速度PI控制 控制小车走直线
入口参数:左轮编码器、右轮编码器
返回 值:1表示速度调节成功
作 者:平衡小车之家
**************************************************************************/
int velocity(int encoder_leftint encoder_right)
{
static float Velocity;
static float Encoder_Integral;
float kp=20ki=0;
//=============速度PI控制器=======================//
Encoder_Least =(Encoder_Left-Encoder_Right); //===获
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-04-20 10:31 BALANCE\
目录 0 2019-04-20 10:31 BALANCE\CONTROL\
文件 5608 2019-04-20 10:26 BALANCE\CONTROL\control.c
文件 649 2019-04-18 20:29 BALANCE\CONTROL\control.h
目录 0 2019-04-20 10:31 BALANCE\MPU6050\
目录 0 2019-04-20 10:31 BALANCE\MPU6050\eMPL\
文件 19342 2012-12-14 11:16 BALANCE\MPU6050\eMPL\dmpKey.h
文件 6765 2012-12-14 11:16 BALANCE\MPU6050\eMPL\dmpmap.h
文件 89465 2019-04-19 18:45 BALANCE\MPU6050\eMPL\inv_mpu.c
文件 4865 2015-04-19 10:38 BALANCE\MPU6050\eMPL\inv_mpu.h
文件 58387 2014-05-09 12:20 BALANCE\MPU6050\eMPL\inv_mpu_dmp_motion_driver.c
文件 3538 2012-12-14 11:16 BALANCE\MPU6050\eMPL\inv_mpu_dmp_motion_driver.h
文件 6869 2019-04-18 22:59 BALANCE\MPU6050\mpu6050.c
文件 4979 2015-04-18 21:10 BALANCE\MPU6050\mpu6050.h
文件 3062 2018-11-25 19:11 BALANCE\MPU6050\mpuiic.c
文件 1477 2018-11-25 19:11 BALANCE\MPU6050\mpuiic.h
目录 0 2019-04-20 14:24 DEVICES\
目录 0 2019-04-20 10:31 DEVICES\DataScope_DP\
文件 3255 2019-04-18 22:43 DEVICES\DataScope_DP\DataScope_DP.C
文件 399 2019-04-18 17:11 DEVICES\DataScope_DP\DataScope_DP.h
目录 0 2019-04-20 10:31 DEVICES\ENCODER\
文件 0 2018-05-20 21:24 DEVICES\ENCODER\debug.log
文件 2734 2019-04-18 19:35 DEVICES\ENCODER\encoder.c
文件 472 2019-04-17 21:44 DEVICES\ENCODER\encoder.h
目录 0 2019-04-20 14:32 DEVICES\EXTI\
文件 4003 2019-04-20 14:32 DEVICES\EXTI\exti.c
文件 126 2019-04-20 14:28 DEVICES\EXTI\exti.h
目录 0 2019-04-20 10:31 DEVICES\HONGWAI\
文件 541 2019-04-20 09:43 DEVICES\HONGWAI\scan.c
文件 93 2019-04-19 19:40 DEVICES\HONGWAI\scan.h
目录 0 2019-04-20 10:31 DEVICES\KEY\
............此处省略189个文件信息
相关资源
- 无边框图片浏览器(透明背景)
- Scratch 变脸(将人物图片变成各种各样
- stm32f103c8t6 4 oled.rar
- 基于MFC扩展CListCtrl子项显示图片并叠
- 在大图中查找小图显示位置
- Img2Lcd(将图片转换为数组的工具)
- [免费]基于stm32f103ze 的OLED驱动代码
- 图片存储到数据库保存二进制文件并
-
图片和xm
l格式互换 - 将yuv各种格式的图片转换为jpg格式的
- 傻瓜式的图片去水印下载
- 图片上传组件v1.0
- 230张网页背景图片(网页制作)
- 超强JPG图片压缩工具,减小图片文件
- 百度图片识别源码.rar
- 常用电子元器件图片识别
- eclipse安卓工程相册、相机选择图片功
- Qt图片浏览器 --基于Qt的Graphics View f
- Delphi图片按钮控件,很好用
- 从图片中读取条形码
- delphi外部图片拖拽
- 基于V4L2的视频采集,能够采集YUVJPE
- css3图片放大缩小切换幻灯片效果
- delphi基于gdi+的图片旋转任意角度
- 易语言图片快速无极限
- 易语言图片放大
- STM32F103实现OV7670摄像头显示
- cropper.js h5裁剪上传图片 代码齐整
- 仿QQ头像裁剪功能
- TPG图片转换器V1.0绿色免费版
评论
共有 条评论