资料介绍
描述
在这个项目中,我们将学习如何使用Meadow.Foundation将模拟操纵杆与 Meadow 一起使用。当您移动操纵杆时,我们将使用四个 LED 来点亮它们。构建此项目所需的大部分内容都包含在Wilderness Labs Meadow F7 w/Hack Kit Pro 中。
Meadow.Foundation是一个平台,用于在 Meadow 上使用 .NET 快速轻松地构建连接的事物。它由Wilderness Labs 创建,完全开源,由 Wilderness Labs 社区维护。
如果您是 Meadow 的新手,我建议您通过控制板载 RGB LED 项目转到 Meadow 入门,以正确设置您的开发环境。
第 1 步 - 组装电路
像下面的 Fritzing 图一样将操纵杆和 LED 连接到 Meadow:

第 2 步 - 创建 Meadow 应用程序项目
在 Visual Studio 2019 for Windows或macOS中创建一个新的Meadow Application项目并将其命名为JoystickLeds 。
第 3 步 - 编写 JoystickLeds 的代码
在 Meadow 中,有两种方法可以监控输入发生的任何变化。第一个是经典的 .NET Eventing 模式,其中 anevent在更改时引发,第二个是IObservable模式,这是一种更强大和灵活的反应式方法。对于这个项目,我们采用第一种方法,这意味着 Meadow 开始监控操纵杆的两个模拟输入(一个用于 X 轴,一个用于 Y 轴)的变化,并且在检测到变化时触发一个事件。
复制下面的代码:
public class MeadowApp : App {,>
PwmLed Up, Down, Left, Right;
AnalogJoystick joystick;
public MeadowApp() {
Console.WriteLine("Initializing...");
Up = new PwmLed(Device.CreatePwmPort(Device.Pins.D07, 100, 0.0f),
TypicalForwardVoltage.Red);
Down = new PwmLed(Device.CreatePwmPort(Device.Pins.D04, 100, 0.0f),
TypicalForwardVoltage.Red);
Left = new PwmLed(Device.CreatePwmPort(Device.Pins.D02, 100, 0.0f),
TypicalForwardVoltage.Red);
Right = new PwmLed(Device.CreatePwmPort(Device.Pins.D03, 100, 0.0f),
TypicalForwardVoltage.Red);
joystick = new AnalogJoystick(
Device.CreateAnalogInputPort(Device.Pins.A01),
Device.CreateAnalogInputPort(Device.Pins.A00),
null, true);
joystick.SetCenterPosition();
joystick.Updated += JoystickUpdated;
joystick.StartUpdating();
}
void JoystickUpdated(object sender, JoystickPositionChangeResult e) {
if (e.New.HorizontalValue < 0.2f) {
Left.SetBrightness(0f);
Right.SetBrightness(0f);
}
if (e.New.VerticalValue < 0.2f) {
Up.SetBrightness(0f);
Down.SetBrightness(0f);
}
if (e.New.HorizontalValue > 0)
Left.SetBrightness(Math.Abs(e.New.HorizontalValue));
else
Right.SetBrightness(Math.Abs(e.New.HorizontalValue));
if (e.New.VerticalValue > 0)
Down.SetBrightness(Math.Abs(e.New.VerticalValue));
else
Up.SetBrightness(Math.Abs(e.New.VerticalValue));
Console.WriteLine($"({e.New.HorizontalValue}, {e.New.VerticalValue})");
}
}
在 MeadowApp 的构造函数中,我们将所有四个 LED 初始化为PwmLeds( up、和) down,以及 2 轴( )。注意在创建操纵杆对象时的最后一个参数中,我们传递了值。这是为了表明操纵杆是倒置的,因此驱动程序将通过反转位置值来纠正方向。leftrightAnalogJoystickjoystickIsInverted,true
实例化后AnalogJoystick,我们调用SetCenterPosition()设置在模拟端口中读取的当前值并将它们设置为初始位置。然后,我们注册joystick到Updated每当我们移动它时都会触发的事件,最后我们调用StartSampling()操纵杆激活。
最后,JoystickUpdated事件处理程序将检查 X 轴和 Y 轴的值,并根据其位置调整相应 LED 的亮度。请注意,还有一个初始阈值,我们检查它是否位于其任一轴的中心,因此我们关闭了这些 LED。
第 4 步 - 运行项目
单击Visual Studio中的“运行”按钮。它应该类似于以下 GIF:
查看 Meadow.Foundation!
就您可以使用 Meadow.Foundation 做的大量令人兴奋的事情而言,这个项目只是冰山一角。
- 它带有一个庞大的外设驱动程序库,其中包含适用于最常见传感器和外设的驱动程序。
- 外设驱动程序封装了核心逻辑并公开了一个简单、干净、现代的 API。
- 该项目得到了不断发展的社区的支持,该社区不断致力于构建酷炫的互联事物,并且总是乐于帮助新来者和讨论新项目。
参考
- 如何使用模拟操纵杆来控制LED
- Arduino基于网络的操纵杆
- PHPoC基于网络的操纵杆
- 使用Meadow制作EdgeASketch
- 使用Meadow通过按钮滚动LED骰子
- DIY按钮操纵杆模块 0次下载
- 基于Arduino Pro Mini的操纵杆手柄和DIY相机滑块 0次下载
- 使用操纵杆来控制RGB LED
- 由操纵杆控制的SCARA手臂
- 带操纵杆的量子位模拟器
- 如何用操纵杆控制伺服
- Press to Talk:一键式USB操纵杆
- 使用PWM和操纵杆来控制RGB
- 使用操纵杆模块和LCD制作游戏
- 复古操纵杆的自动开火
- 有铅锡膏跟无铅锡膏可以一起用吗 367次阅读
- 零线和地线连在一起为什么漏电保护器跳闸 5040次阅读
- 拨动开关是如何工作的,五种拨动开关接线图分享 2.3w次阅读
- 玩嗨OpenHarmony:基于OpenHarmony的小游戏:一起学做FlappyBird 1658次阅读
- 跟大家一起推导一遍差分运放的计算过程 1554次阅读
- 使用操纵杆和Arduino控制多个LED灯亮灭的过程 7476次阅读
- digilentPmodJSTK二轴操作杆介绍 1278次阅读
- digilentPmodJSTK2二轴操纵杆简介 1535次阅读
- 游戏手柄的工作原理及故障方法与检修方法 1.9w次阅读
- 物联网安全最重要的元素是什么_如何确保物联网安全 3602次阅读
- 如何将数字世界与模拟世界联系在一起? 5293次阅读
- 使用我们的身体来操作无人机,要比普通的操纵杆或者手柄使用起来更直观、更精确 7547次阅读
- 3个齿轮在一起到底能不能转起来呢?和一些奇特的齿轮组合 1.4w次阅读
- 将深度学习和常微分方程结合在一起,提供四大优势 1.1w次阅读
- 铜线和铝线不能接一起的原因以及接一起的方法 4.6w次阅读
下载排行
本周
- 1NB-IoT芯片厂商的资料说明
- 0.31 MB | 22次下载 | 1 积分
- 2智慧监狱建设的核心终端—智慧监仓屏
- 0.25 MB | 2次下载 | 免费
- 3PC318C016M/D 200V半桥栅极驱动器技术手册
- 0.77 MB | 2次下载 | 免费
- 45.0SMDJ200A单向TVS瞬态抑制二极管规格书
- 0.88 MB | 1次下载 | 免费
- 5PC318C041EQ 200V半桥栅极驱动器技术手册
- 0.50 MB | 次下载 | 免费
- 6PC318C042NM 200V半桥栅极驱动器技术手册
- 0.55 MB | 次下载 | 免费
- 7技嘉H110主板IT8628E_BX IO电路图资料
- 2.61 MB | 次下载 | 1 积分
- 8H110主板CPU PWM芯片ISL95858HRZ-T核心供电电路图资料
- 0.63 MB | 次下载 | 1 积分
本月
- 1元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 241次下载 | 免费
- 2元宇宙底层硬件系列报告
- 13.42 MB | 184次下载 | 免费
- 32022 年展望報告 – 半導體產業
- 1.43 MB | 136次下载 | 免费
- 4晶振与滤波器应用电路《电子工程师必备:元器件应用宝典》
- 1.57 MB | 90次下载 | 免费
- 5汽车电子行业深度解析:智能化与电动化方兴未艾
- 6.47 MB | 71次下载 | 免费
- 6中国DPU行业白皮书
- 23.80 MB | 37次下载 | 免费
- 7晶科鑫代理线-微盟电子2021年度产品目录选型手册
- 14.75 MB | 27次下载 | 免费
- 8NB-IoT芯片厂商的资料说明
- 0.31 MB | 22次下载 | 1 积分
总榜
- 1matlab软件下载入口
- 未知 | 935137次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420064次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233089次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191425次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183352次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81602次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73822次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65991次下载 | 10 积分
电子发烧友App






创作
发文章
发帖
提问
发资料
发视频
上传资料赚积分
评论