野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11465|回复: 8

江湖救急啊

[复制链接]
发表于 2017-11-30 21:08:12 | 显示全部楼层 |阅读模式
我用 mpu6050 模块读取当前倾角(用的是野火的例程),当达到某一角度时,电机启动 延时一段时间,这个控制程序是放在 main 函数 while(1) 的 if 语句中,可是不明白为什么程序进入 if 语句中就出不来了,然后电机就一直在那工作。唉,都快急死了。还请各位大哥大姐都来帮帮我,感激不尽!!!
回复

使用道具 举报

发表于 2017-11-30 23:08:17 | 显示全部楼层
你有没有写停止的判断啊?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-1 10:37:22 | 显示全部楼层
张宙辕 发表于 2017-11-30 23:08
你有没有写停止的判断啊?

int main(void)
{        
//                float Pitch,Roll,Yaw;
         USART_Config();        
         ADCx_Init();
         // 配置串口
//  BASIC_TIM_Init();
         delay_init();
         IIC_Init();
         NVIC_Configuration();          //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
        DMP_Init();
         Motor_12_Config(); //L298电机驱动初始化
        printf("\r\n ----这是一个ADC单通道DMA读取实验----\r\n");
         
         while (1)
         {               
                   ADCcaclulate();
                         printf("Read_DMP Return is %d\n",Read_DMP(&Pitch,&Roll,&Yaw));
                   fanguanjiao = Pitch;
//                printf("Pitch is:%f,Roll is:%f,Yaw is:%f\n",Pitch,Roll,Yaw);
                   printf("fanguanjiao is:%f",fanguanjiao);

                   if(fanguanjiao>30)
                         {
                          Motor_1_PRun();
                          delay_1ms(2000);
                          Motor_1_STOP();
                          delay_1ms(1000);
                    Motor_1_NRun();
                          delay_1ms(2000);        
                         }                                                               
//    printf("Read_DMP Return is %d\n",Read_DMP(&Pitch,&Roll,&Yaw));
//                printf("Pitch is:%f,Roll is:%f,Yaw is:%f\n",Pitch,Roll,Yaw);
         }
}
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-1 10:38:08 | 显示全部楼层
张宙辕 发表于 2017-11-30 23:08
你有没有写停止的判断啊?

这个是 if 的程序
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-1 16:42:45 | 显示全部楼层
大佬们都来看看啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-1 16:45:11 | 显示全部楼层
不开心
回复

使用道具 举报

发表于 2017-12-2 00:34:07 | 显示全部楼层
你这个pitch的赋值也没有,你确定能进if?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-2 10:41:15 | 显示全部楼层
张宙辕 发表于 2017-12-2 00:34
你这个pitch的赋值也没有,你确定能进if?

Read_DMP(&Pitch,&Roll,&Yaw)

这不是赋值吗?
可以进 if 的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-3 13:14:30 | 显示全部楼层
谢谢大家,我的问题解决啦
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2025-1-16 01:13 , Processed in 0.026826 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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