STM32读取MS5837压力数据,转化为深度。传输方式IIC
单片机源程序如下:
- #include "led.h"
- #include "delay.h"
- #include "sys.h"
- #include "usart.h"
- #include "key.h"
- #include "myiic.h"
- #include "MS5837.h"
- #include "dac.h"
- #include "timer.h"
- int main(void)
- {
- NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);// 设置中断优先级分组2
- delay_init(); //延时函数初始化
- uart_init(115200); //串口初始化为115200
- LED_Init(); //初始化与LED连接的硬件接口
- Dac1_Init();
-
- TIM3_Int_Init(24999, 17279);
- delay_ms(1000);
- IIC_Init(); //初始化IIC PC11 PC12口子
- delay_ms(100);
- MS583703BA_RESET(); // Reset Device 复位MS5837
- delay_ms(100); //复位后延时(注意这个延时是一定必要的,可以缩短但似乎不能少于20ms)
- MS5837_init(); //初始化MS5837
-
- while(1)
- {
- delay_ms(50);
-
- MS583703BA_getTemperature();//获取温度
- MS583703BA_getPressure(); //获取大气压
-
-
- printf(" Temp : %llu\r\n",TEMP); //串口输出原始数据
- printf(" Pressure : %u\r\n\r\n\r\n",Pressure); //串口输出原始数据
-
- }
- }
复制代码
所有资料51hei提供下载:
MS5837串口输出.rar
(282.32 KB, 下载次数: 307)
|