资料介绍
描述
该项目在 Raspberry Pi 套件组件上使用适用于 Windows 10 IoT Core 的 Adafruit 入门包来创建一个项目,该项目使用传感器读取温度、气压、湿度和高度。这适用于较旧的 Raspberry Pi 2 套件或带有 Raspberry Pi 3 的较新版本。
注意:此项目假定您拥有 BME280 传感器随附的套件版本。
此项目源自Microsoft 创建的原始Weather Station V 2.0项目。
硬件
根据本项目“原理图”部分的接线图中的布局连接 Raspberry Pi 2、面包板和 BME280 传感器。
软件
首先,您需要安装 Visual Studio 2015,转到“新建 -> 项目”并创建一个新的“空白应用程序(通用 Windows)”应用程序模板以从一个新的空白 UWP 应用程序开始。
逐步编码
1. 如上所述创建一个新的空白 UWP 应用程序。
2. 添加对“UWP 的 Windows IoT 扩展”Windows 通用扩展的引用。
3.将对 BuildAzure.IoT.Adafruit.BME280 Nuget 包的引用添加到 UWP 应用程序。
4. 添加一个变量来保存对 MainPage 类的 DispatcherTimer 的引用。
5. 添加以下设置代码以使用 OnNavigatedTo 的覆盖在 MainPage 类中设置 DispatcherTimer 和 Tick 事件处理程序:
DispatcherTimer _timer;
public MainPage()
{
this.InitializeComponent();
}
protected override async void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
_timer = new DispatcherTimer();
_timer.Interval = TimeSpan.FromSeconds(5);
_timer.Tick += _timer_Tick;
_timer.Start();
}
private void _timer_Tick(object sender, object e)
{
}
6. 在 MainPage 类中,添加一个变量以保存对 BME280Sensor 对象的引用以及“_timer”变量。
BuildAzure.IoT.Adafruit.BME280.BME280Sensor _bme280;
6. 在“OnNavigatedTo”方法中,添加代码以在“_timer.Start()”方法调用之前某处初始化 BME280Sensor 对象。
_bme280 = new BuildAzure.IoT.Adafruit.BME280.BME280Sensor();
await _bme280.Initialize();
7. 在MainPage 类中,添加常量、浮点变量来保存表示海平面的压力值。
const float seaLevelPressure = 1022.00f;
8. 在“_timer_Tick”处理程序中,添加以下代码以从 BME280 传感器读取温度、湿度、压力和高度值:
var temp = _bme280.ReadTemperature();
var humidity = _bme280.ReadHumidity();
var pressure = _bme280.ReadPressure();
var altitude = _bme280.ReadAltitude(seaLevelPressure);
9. 接下来,添加代码以将 BME280 传感器读数写入调试控制台:
Debug.WriteLine("Temp: {0} deg C", temp);
Debug.WriteLine("Humidity: {0} %", humidity);
Debug.WriteLine("Pressure: {0} Pa", pressure);
Debug.WriteLine("Altitude: {0} m", altitude);
10. 您的应用程序已准备好部署到 Raspberry Pi!
预期产出
温度:24.46189摄氏度
湿度:54.372%
压力:99738.73帕
海拔:205.1726米
PS 您可以从该项目的代码部分查看/下载完整代码。
- 适用于AWS IoT Greengrass的Xilinx KV260入门指南 0次下载
- Windows IoT Core呼吸分析仪 0次下载
- Windows IoT Core示波器 0次下载
- HomeBear.Blinkts Windows 10 IoT核心版开源 0次下载
- 适用于AWS的M5Core2/Core2上的亚马逊Alexa 0次下载
- 适用于Arduino的Adafruit NeoPixel Shield 0次下载
- 适用于 H8/36079 CPU 板原理图的 Renesas 入门套件 0次下载
- 适用于 M16C/29 教程手册的 Renesas 入门套件 0次下载
- 适用于 H8SX/1622教程手册的 Renesas 入门套件 0次下载
- 适用于 H8S/2472教程手册的 Renesas 入门套件 0次下载
- 适用于 H8S/2456R 教程手册的 Renesas 入门套件 0次下载
- 适用于 M16C/6C 教程手册的 Renesas 入门套件 0次下载
- 适用于 M16C/65 教程手册的 Renesas 入门套件 0次下载
- 适用于Windows 10 IoT的HD44780 LCD模块驱动程序 0次下载
- 适用于AWS IoT EduKit的追踪器 0次下载
- 一款用于Windows的开源反rookit (ARK)工具 1749次阅读
- 适用于您的汽车SoC的10BaseT1-S VIP 1107次阅读
- 创建STM32工程模板 843次阅读
- 一次学会使用Adafruit IO平台! 2811次阅读
- 一款适用于红蓝对抗的演练工具Goblin介绍 695次阅读
- 如何使用NSIS创建Windows安装程序 3259次阅读
- 如何编写适用于Go项目的Makefile 1821次阅读
- 基于一种适用于SSL产品的LED控制电路设计 907次阅读
- 如何利用NodeJS中创建一个加密货币应用程序 602次阅读
- 赛普拉斯推出微型无电池传感器Beacon套件,可适用各种物联网IoT应用 1072次阅读
- Super Sabre电源连接器系统,适用于大电流应用 730次阅读
- TC1948P是红外线遥控发射电路,适用于录像机 2868次阅读
- FAIR和INRIA的合作提出人体姿势估计新模型,适用于人体3D表面构建 5516次阅读
- 利用C语言创建windows窗口的程序解析 1w次阅读
- 适用于RS232串口的温度检测电路 2428次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多