STM32l151带MPU6050中断唤醒并发送数据到云平台

发布者:春林初盛最新更新时间:2019-09-09 来源: eefocus关键字:STM32l151  MPU6050  中断唤醒  云平台 手机看文章 扫描二维码
随时随地手机看文章

最近在调试STM32L151带mpu6050的中断唤醒的项目,下面写一下项目经历:


1.首先贴出我的主函数


int main(void)

 

SystemInit();

delay_init(72);  //初始化延时函数

 

MY_GPIO_AN();//全部 模拟输入

//NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置系统中断优先级分组2

  Base_TIM6_Init();

uart_init(115200); //初始化串口波特率为115200

  SYS_RTCInit(60*5); //12h*/

RTC_WakeUpCmd(DISABLE);

ADC_SX_DMA_Config(); //初始化 四项电压采集 A 046

  GPIO_Setup(); //开机和电源引脚

LS_A9500_PWL;

  LS_A9500_KEYL;

  GpioState1 = GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8);

C_Get_State();

 // MPU_Init_agin();

 

while(1)

{

if((RTC_flag==1)||QD_Wakeup_Flag==1||first_flag==1)

{

uart_init(115200); //初始化串口波特率为115200

  delay_ms(26);

    GPIO_Setup();//9500开关

LS_A9500_PWL;

    LS_A9500_KEYL;

if(Turn_ON_A9500())

{

int m=0;

if(gprs_init())

{  

MPUAGAIN:

     m++;

   MPU_Init_agin();

for(i=0;i<10;i++)

if(m>10)

break;

MPU_Get_Accelerometer(&aacx,&aacy,&aacz); //得到加速度传感器数据

MPU_Get_Gyroscope(&gyrox,&gyroy,&gyroz); //得到陀螺仪数据

//    imuUpdate(aacx, aacy, aacz, gyrox, gyroy, gyroz,x3, y3, z3,&quaNow);//姿态解算结果

lmd=32767/2; //计算 加速度计灵敏度

ax=aacx/lmd;  //x轴加速度

ay=aacy/lmd;

az=aacz/lmd;

 

pr=-aacx/sqrt(aacz*aacz+aacy*aacy); 

rr=aacy/sqrt(aacz*aacz+aacx*aacx);

 

pitch=((atan(pr)*180)/3.1415926); //俯仰角

roll=((atan(rr)*180)/3.1415926);//横滚角

 

   if(pitch==0||roll==0)

goto MPUAGAIN;

else break;

a = pitch*100;

c = roll*100;

 

b =(int)a;

if(b<0)

b=abs(b);

 

d=(int)c;

if(d<0)

d=abs(d);

 

USART0_TX_Buffer[18]=b>>8; //将b转化为16进制  并放在数组的28 、29两个字节内

USART0_TX_Buffer[19]=b;

 

USART0_TX_Buffer[20]=d>>8;

USART0_TX_Buffer[21]=d;

 C_Get_State();

if(RTC_flag==1)

  for(i=0;i<1;i++)

 {

    {                                         

        //free_UART0_Recv_Buffer();//清除串口2接收

       Send_to_Server();//上传数据到云平台 

       //free_UART0_Recv_Buffer();

    }

}  

 

if(first_flag==1)

{

    for(i=0;i<1;i++)

  {

 

        Send_to_Server();//上传数据到云平台

   }

}

if(QD_Wakeup_Flag==1)

   {

   for(i=0;i<1;i++)

{

Send_to_Server();//上传数据到云平台

}

  }

 

    } // if(gprs_init())

 

}//if(Turn_ON_A9500())

  RTC_flag=0;

  QD_Wakeup_Flag=0;

  first_flag=0;

}//if(RTC_flag==1|First_flag==1)

else if((0 == QD_Wakeup_Flag)&&(0 == RTC_flag)&&(0==first_flag)){

delay_init(72);  //初始化延时函数

MPU_Init();//mpu6050低功耗初始化

Turn_OFF_A9500();

mpu6050int_init();//外部中断初始化

RCC_Enter_Stop();//进入低功耗

Delay_ms(1000);

  

                 }

 }//大while

}//main

关键字:STM32l151  MPU6050  中断唤醒  云平台 引用地址:STM32l151带MPU6050中断唤醒并发送数据到云平台

上一篇:正点原子 第6讲 STM32芯片解读
下一篇:正点原子STM32F4外部中断实验

推荐阅读最新更新时间:2024-11-08 15:29

阿里推自研AI芯片背后:打造了更强大的阿里云平台
“我手里的这款芯片真的很大,性能非常好。” 9月25日,阿里云智能总裁张建锋在2019杭州云栖大会上发布AI芯片——含光800。这是阿里巴巴第一次用了自己的硬件架构,集成了阿里算法到芯片里面去,也是互联网公司研发的第一款大的芯片。 过去半年,平头哥先后发布玄铁910、无剑SoC平台,随着含光800的发布,平头哥端云一体产品系列初步成型。这款性能强大的云端AI芯片通过阿里云对外输出,无疑将进一步提升阿里云的行业竞争力。 含光800绽放光芒 含光,古代上品名剑。该剑含而不露,光而不耀,平头哥以此名来象征“含光800”带来的无形却强劲的算力。 作为阿里巴巴第一颗自研AI芯片,含光800绽放出全球性能最强的AI芯片“光芒”。在业界标
[手机便携]
安富利出席首届物联网方案商联盟沙龙
中国深圳 2016年5月20日讯 安富利今日出席了首届物联网方案商联盟沙龙并致辞,探讨了如何突破中国物联网(IoT)困局。此次沙龙活动是联盟举办的首次交流活动,汇聚了来自不同领域的方案商大咖,共同分享行业应用案例。其他出席的企业还包括:品网科技、风向标科技、创达云睿智能、广东寰宇电子、深圳市云设施科技、安心网以及北京洋浦伟业科技等。 安富利电子组件技术市场部高级经理黎伟昌(Gary Lai)发表演讲 麦肯锡预测,未来十年,IoT创造的总体市场规模预计达6.2万亿美元。尽管在过去2到3年的持续发展与不同生态的导入下, IoT市场出现了单品链接,云链接以及电商营销这些特点,但是由于生态系统概念还比较薄弱,众多智慧产品无法实现
[物联网]
安富利出席首届物联网方案商联盟沙龙
RTC_WakeUp中断唤醒STM32F4停止模式
RTC_WakeUp唤醒STM32F4停止模式(借鉴的是原子哥写的代码): 首先我们先初始化RTC配置: //RTC初始化 u8 MyRTC_Init(void) { RTC_InitTypeDef RTC_InitStructrue; u16 retry=0x1FFF; RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR,ENABLE);//使能PWR时钟 PWR_BackupAccessCmd(ENABLE);//使能后备寄存器 if(RTC_ReadBackupRegister(RTC_BKP_DR0)!=0x5050) { RCC_LSEConfig(R
[单片机]
STM32l151低功耗芯片串口通信
参考原子的stm32f系列的串口通信实验,移植到stm23l系列的程序代码。 1、采用串口中断方式,串口接收到消息产生中断,因此需要使能RXNE寄存器。HAL库函数的调用方式是__HAL_UART_ENABLE_IT(&UartHandle1, UART_IT_RXNE); UartHandle1是UART_HandleTypeDef类型,具体参考stm32lxx_hal_uart.h文件。 2、关于串口初始化,由于HAL库中的串口初始化函数HAL_UART_Init();会调用HAL_UART_MspInit();后者是一个关于串口1和串口2的I/O端口模式选择及初始化的函数。 为了使程序能顺利进入中
[单片机]
Ixia率先面向所有领先公有云平台提供端到端可视性
Ixia 于今日宣布已进一步扩展 CloudLens™可视性平台 ,将其支持范围从现有的AWS、Windows、Linux延伸至Microsoft Azure、Google Cloud、IBM Bluemix,以及阿里云。自此,Ixia CloudLens将成为业界首款针对所有领先多系统云平台的可视性解决方案。 IT基础架构正成为在多云平台上自托管应用与基于云服务的混合体。由于私有数据中心的内置应用与多种公有云上的应用之间需要交换业务数据,这就让在各种混合环境中获得端到端的可视性成为了一种挑战。同时,缺乏针对云流量的细粒度接入会带来网络的盲点,给应用性能及安全性带来威胁,从而导致不良的客户体验并增加了网络安全风险。
[网络通信]
Ixia率先面向所有领先公有<font color='red'>云平台</font>提供端到端可视性
华为轮值CEO徐直军:增加2000人 华为全力打造云平台
在数字化转型时代,云计算已经成为关键的支撑技术,同时云服务也已成为基本的商业模式。在长沙华为中国生态伙伴大会2017上,华为轮值CEO徐直军在“拥抱公有云,共建云生态”主题演讲中表示:“从2017年开始,华为将以公有云服务为基础,强力投资打造开放的公有云平台,并将聚焦重点行业,携手合作伙伴构建云生态,共同做大产业蛋糕。为此,华为将成立专门负责公有云的Cloud BU,在2017年增加投入2000人!”那么就请跟随eeworld物联网小编来详细的了解下吧。 其中在提供公有云服务方面,华为将基于高速互联的基础设施,提供覆盖全国的、专业、安全、可信赖的公有云服务;而在构建公有云平台方面,华为将开放华为二十多年来积累的能力,如华为在通信
[网络通信]
STM32系列第31篇--MPU6050六轴传感器
简介: MPU6050是InvenSense公司推出的全球首款整合性6轴运动处理组件,内带3轴陀螺仪和3轴加速度传感器,并且含有一个第二IIC接口,可用于连接外部磁力传感器,利用自带数字运动处理器(DMP: Digital Motion Processor)硬件加速引擎,通过主IIC接口,可以向应用端输出完整的9轴姿态融合演算数据。 有了DMP,我们可以使用InvenSense公司提供的运动处理资料库,非常方便的实现姿态解算,降低了运动处理运算对操作系统的负荷,同时大大降低了开发难度 。 特点: 自带数字运动处理( DMP: Digital Motion Processing ),可以输出6轴或9轴(需外接磁传感器)姿态解算数
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved