不知道为什么,三个BMP读取值不同,我觉得应该是硬件问题!
文章目录
- 1.主程序
- 2.程序
1.调试程序可在不同的地方设置printf();看运行情况; 2. /*s32—int32_t *u32 —uint32_t * 运行结果: 压力:南京101200pa 温度:2772代表2772.72C
1.主程序
//PA6----SCL //PA7---SDA /*s32---int32_t *u32 ---uint32_t * * #include "sys.h" #include "usart.h #include "bmpiic.h" #include "bm280.h" int main(void) { s32 bmp280_temp; u32 bmp280_press; NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2抢占优先级,二位响应优先级 uart_init(9600); / delay_init(); //延迟初始化 BMP280_Init(); while(1) { BMP280_ReadPressureTemperature(&bmp280_press,&bmp280_temp); //bmp280获得气压值和温度 printf("\r\nTemperatureU %u C PressureU %u Pa",bmp280_temp,bmp280_press); printf("\r\nTemperatureD %d C PressureD %u Pa",bmp280_temp,bmp280_press); delay_ms(1000); } }
运行结果: 压力:南京101200pa 温度:2772代表2772.72C
2.程序
链接:https://pan.baidu.com/s/19RWZ6nZxWWw2dUhPZf8zJA 提取码:kbl7