极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 21321|回复: 5

arduino增强包使用教程--第二课-- OCROBOT MANGOII 1602液晶屏显示当前气压实验

[复制链接]
发表于 2013-8-21 12:39:34 | 显示全部楼层 |阅读模式
本帖最后由 迷你强 于 2013-8-30 10:04 编辑

本实验基础平台:F101入门套件 + F102进阶套件    或    F101+F102增强套包   或 MANGO II + F102进阶套件



      本课内容包括两个部分,第一部分是上次的驱动1602液晶显示器,第二部分是从气压计读取当前气压值与温度,并且显示在屏幕上。

      BMP085的驱动库并不是arduino IDE内置的,所以我们需要先下载驱动   

http://wiki.ocrobot.com/doku.php?id=zh:sensor:bmp085
可参照wiki说明下载库文件并且解压缩释放到<你的arduino主目录>/libraries/下,重新启动arduino IDE即可正常调用此库

然后我们来看设计图





我们参考上图来连接好电路。




这样,我们就初步搭好电路了,BMP085气压传感器是I2C通讯接口的传感器,OCROBOT MANGO II板的I2C 接口是A4 A5,其他如2560 或莱昂纳多板请参考主板标示进行连接

程序如下

  1. /*
  2. 作者:迷你强
  3. 时间:2013年8月21日
  4. IDE版本号:1.0.4
  5. 发布地址:[url]www.geek-workshop.com[/url]
  6. 作用:让液晶屏显示两行内容,分别显示当前气压与温度

  7. */
  8. /*======通用I2C驱动库调用======*/
  9. #include <Wire.h>

  10. /*========BMP085气压计库调用=====*/
  11. #include <Adafruit_BMP085.h>
  12. Adafruit_BMP085 bmp;
  13. /*==========LCD库调用 =======*/
  14. #include <LiquidCrystal.h>

  15. LiquidCrystal lcd(12, 11, 5, 4, 3, 2);   //定义传输IO口,可根据实际情况调整IO口使用

  16. void setup() {

  17.   lcd.begin(16, 2);            // 定义显示屏类型,目前定义为1602 每行16个字符共2行
  18.   bmp.begin();                 //初始化气压计
  19. }

  20. void loop() {
  21. lcd.clear();   //LCD清空屏幕
  22.   
  23. /*=====数据采集=====*/
  24.   float temp = bmp.readTemperature();    //读取温度数据 (BMP085)
  25.   long pa = bmp.readPressure();          //读取气压数据 (BMP085)
  26.   float hpa = pa /100.0 ;                //将Pa换算成hPa
  27.       
  28. /*=====显示内容=====*/      
  29.   lcd.print("Atm:");   
  30.   lcd.print(hpa);
  31.   lcd.print("hPa");     //显示第一行内容,当前气压值
  32.   lcd.setCursor(0, 1);         //换行到第二行开始位置
  33.   lcd.print("TEMP:");      //显示第二行内容,当前温度值
  34.   lcd.print(temp,1);       //保留温度的1位有效小数
  35.   lcd.print("C");
  36. delay(10000);      //控制屏幕刷新速度,每10秒跟新一次
  37. }
复制代码



整体运行演示视频

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2013-8-21 16:01:07 | 显示全部楼层
首占沙发,强烈支持强哥发教导贴,谢谢!
回复 支持 反对

使用道具 举报

发表于 2013-8-22 15:25:52 | 显示全部楼层
好贴必须顶的
回复 支持 反对

使用道具 举报

发表于 2014-1-7 15:06:35 | 显示全部楼层
应该是把 Pa 换成 kPa把   hPA是什么单位   而且 1kPa = 1000Pa  
标准大气压是101.325kPa
回复 支持 反对

使用道具 举报

发表于 2014-8-8 08:23:19 | 显示全部楼层
看起来很不错
回复 支持 反对

使用道具 举报

发表于 2015-12-28 15:06:08 | 显示全部楼层
1602液晶屏 LCD1602A 显示 蓝屏
回复 支持 反对

使用道具 举报

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

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-18 10:13 , Processed in 0.046796 second(s), 26 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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