找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2118|回复: 0
打印 上一主题 下一主题
收起左侧

stm32 BMP180气压计驱动程序

[复制链接]
跳转到指定楼层
楼主
ID:427949 发表于 2018-11-16 22:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
stm32 BMP180气压计 oled显示

单片机源程序如下:

  1. //  功能描述   : OLED 4接口演示例程(51系列)
  2. //              说明:
  3. //              ----------------------------------------------------------------
  4. //              GND    电源地
  5. //              VCC  接5V或3.3v电源
  6. //              D0   接PB12(SCL)
  7. //              D1   接PB13(SDA)
  8. //              RES  接PC15
  9. //              DC   接PC14
  10. //              CS   接地               
  11. //              ----------------------------------------------------------------


  12. #include "delay.h"
  13. #include "sys.h"
  14. #include "oled.h"
  15. #include "bmp.h"
  16. #include "myiic.h"
  17. #include "usart.h"

  18. extern short AC1;
  19. extern short AC2;
  20. extern short AC3;
  21. extern unsigned short AC4;
  22. extern unsigned short AC5;
  23. extern unsigned short AC6;
  24. extern short B1;
  25. extern short B2;
  26. extern short MB;
  27. extern short MC;
  28. extern short MD;

  29. int main(void)
  30. {        
  31.           u8 BMP180_ID=0;
  32.           long UT,UP;
  33.                 delay_init();                     //延时函数初始化         
  34.                 NVIC_Configuration();          //设置NVIC中断分组2:2位抢占优先级,2位响应优先级         LED_Init();                             //LED端口初始化
  35.                 OLED_Init();                        //初始化OLED  
  36.                 OLED_Clear()          ;
  37.                 IIC_Init();      //BMP180初始化
  38.           uart_init(9600);
  39.                
  40.         while(1)
  41.         {        
  42.                 BMP180_ID = BMP180_ReadOneByte(0xd0);//读取ID地址
  43.                 Read_CalibrationData();
  44.                 UT=Get_BMP180UT();
  45.                 UP= Get_BMP180UP();
  46.                 Convert_UncompensatedToTrue(UT,UP);
  47.                 OLED_Clear();
  48.                 OLED_ShowCHinese(20,0,0);//电
  49.                 OLED_ShowCHinese(38,0,1);//子
  50.                 OLED_ShowCHinese(56,0,2);//气
  51.                 OLED_ShowCHinese(74,0,3);//压
  52.                 OLED_ShowCHinese(92,0,4);//计                 
  53.                
  54.                  OLED_ShowCHinese(0,2,5);//温
  55.         OLED_ShowCHinese(20,2,6);//度
  56.                 OLED_ShowChar(40,2,':');
  57.                 OLED_ShowNum(55,2,True_Temp,3,16);
  58.                 OLED_ShowCHinese(90,2,9);//单位
  59.                
  60.                 OLED_ShowCHinese(0,4,7);//气
  61.         OLED_ShowCHinese(20,4,8);//压
  62.                 OLED_ShowChar(40,4,':');
  63.                 OLED_ShowNum(55,4,True_Press/1000,3,16);
  64.     OLED_ShowString(90,4,"kPa");
  65. //               
  66.         OLED_ShowCHinese(0,6,11);//高
  67.         OLED_ShowCHinese(20,6,12);//度
  68.                 OLED_ShowChar(40,6,':');
  69.         OLED_ShowNum(50,6,True_Altitude,3,16);
  70.         OLED_ShowChar(75,6,'m');
  71.                
  72.         //OLED_ShowNum(90,6,BMP180_ID,3,16);//显示ASCII字符的码值         
  73.                         

  74. //                 printf("\n\rAC1 is %d\r",AC1);
  75. //                 printf("\n\rAC2 is %d\r",AC2);
  76. //                 printf("\n\rAC3 is %d\r",AC3);
  77. //                 printf("\n\rAC4 is %d\r",AC4);
  78. //                 printf("\n\rAC5 is %d\r",AC5);
  79. //                 printf("\n\rAC6 is %d\r",AC6);
  80. //                 printf("\n\rc=%d\r",BMP180_ID);
  81. //                 
  82. //                 printf("\n\rTruePressure is %f\r",True_Press);
  83. //                 printf("\n\rTrue_Temp is %f\r",True_Temp);
  84. //                 printf("\n\True_Altitude is %f\r",True_Altitude);
  85. //                 //printf("\n\rc=%d\r",BMP180_ID);
  86.                  
  87.                 delay_ms(1000);

  88.         }         
  89.         
  90. }
复制代码

所有资料51hei提供下载:
bmp180气压计.rar (297.55 KB, 下载次数: 87)


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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