资料介绍
描述
在之前的两个项目中,LED 会自动打开和关闭。现在,您将使用按钮自己控制 LED。
第 1 步:您需要什么
您需要的零件都包含在此Maker 套件中。
- SwiftIO 板
- 盾
- 按键模块
- 4 针电缆
第 2 步:按钮
按钮或按钮始终用于控制其他设备,例如电灯开关或遥控器。这个按钮是瞬时的,所以它的状态只会随着你按下它而改变,一旦你松开它,它就会回到原来的状态。
这种纽扣通常有四个脚。同侧的两条腿短接。
所以当你连接单个按钮时,最好将两条腿连接在对角线上。
而套件中的按钮模块使用 Grove 连接器,您可以直接构建电路而无需担心连接错误。
此外,该按钮还有一个已知问题:弹跳。由于机械和物理问题,当您缓慢按下或松开按钮时,按钮内部可能有多个触点。而微控制器可能会将其视为几台印刷机。按键模块采用硬件去抖方式,不会遇到这个问题。
第 3 步:电路
屏蔽是一种模块化电路板,可以更轻松地连接电路。屏蔽罩两侧的管脚与 SwiftIO 板上的管脚相同。此外,它有许多 Grove 连接器,因此您可以使用 4 针电缆连接针脚,而不是四根跳线。
将屏蔽罩放在 SwiftIO 板的顶部。确保以正确的方向连接它们。
使用 4 针电缆将按钮模块连接到针 D10。您会注意到每条电缆都有四种颜色的电线:黑色通常用于接地,红色通常用于电源。
好了,电路完成了。真的很方便不是吗?
第 4 步:代码
/* Import the SwiftIO library to use everything in it. */
import SwiftIO
/* Import the board library to use the Id of the specific board. */
import SwiftIOBoard
/* Initialize the red onboard led. */
let led = DigitalOut(Id.RED)
/* Initialize an input pin D10 on board. */
let button = DigitalIn(Id.D10)
while true {
/* Read the button value. If it is pressed, turn on the led. */
if button.read() {
led.write(false)
} else {
led.write(true)
}
sleep(ms: 10)
}
第 5 步:代码分析
import SwiftIO
import SwiftIOBoard
首先,导入两个库:SwiftIO和SwiftIOBoard。
let led = DigitalOut(Id.RED)
let button = DigitalIn(Id.D10)
初始化红色板载 LED 和按钮连接的数字引脚 (D10)。
在循环中,您将使用该if-else
语句来检查按钮状态。它具有以下形式:
if condition {
statement1
} else {
statement2
}
条件总是有两个结果,真或假。如果为真,则执行statement1;如果为假,statement2 将被执行。
然后让我们回顾一下代码。
if button.read() {
led.write(false)
} else {
led.write(true)
}
该方法read()
允许您获取值。返回值为真或假。所以你可以根据值知道按钮的状态。如果按下按钮,该值将为真,因此该引脚输出低电压以打开板载 LED。一旦松开按钮,输入值为 false,LED 将关闭。
第 6 步:运行项目
当您将代码下载到您的电路板时,红色 LED 熄灭。如果按下按钮,LED 会亮起。松开按钮后,LED 熄灭。
- 使用Meadow通过按钮滚动LED骰子
- 用按钮控制LED
- 使用Swift语言闪烁LED
- 使用Swift语言一个一个地闪烁RGB LED
- 使用Swift语言更改LED闪烁率
- 使用Swift语言控制直流电机
- 使用Swift语言控制伺服
- 使用Swift语言在LCD上显示温度
- 将Swift语言应用到MCU开发中(下)
- 基于计数器按钮控制的电机程序启动与停止 16次下载
- FPGA入门系列实验教程之如何进行按键消抖控制LED亮灭 13次下载
- 苹果Swift语言入门教程中文 2次下载
- 按钮控制LED程序(按下亮再按一下灭)【汇编版】 0次下载
- 按钮控制LED程序【汇编版】 0次下载
- SWIFT设计软件工具
- 按钮的使用和维护方法 按钮的常见故障及其排除方法 1777次阅读
- 单按钮开/关电源控制 798次阅读
- 按钮联锁的正反转控制线路讲解 6270次阅读
- 数字电位计的按钮控制控制开关转换器的稳压输出 2193次阅读
- 按钮互锁正反转控制电路的保护措施 5037次阅读
- 通过红外对管进行手势识别控制的LED灯设计 3598次阅读
- 面向未来的五款编程语言 1832次阅读
- 51单片机通过I/O口对LED进行控制的设计 4879次阅读
- 按钮互锁正反转控制电路 2.7w次阅读
- 控制按钮的结构和符号_控制按钮的分类 1.4w次阅读
- 51单片机案例分析:按钮控制灯亮接线原理 1w次阅读
- PLC顺序控制正反转控制按钮开关冲孔加工等原理动图大全 1.6w次阅读
- PWM控制LED灯的亮度程序(C 语言) 3.2w次阅读
- 单片机C语言程序设计之定时器控制4个LED滚动闪烁 7565次阅读
- 急停按钮工作原理_急停按钮电气符号_急停按钮型号介绍 12.2w次阅读
下载排行
本周
- 1普中科技HC6800-EM3使用操作手册
- 21.69 MB | 3次下载 | 2 积分
- 2PCB板EMC/EMI的设计技巧
- 0.20 MB | 3次下载 | 免费
- 32024PMIC市场洞察
- 2.23 MB | 2次下载 | 免费
- 4MSP430™闪存器件引导加载程序(BSL)
- 1.45MB | 2次下载 | 免费
- 5PL4807单节锂离子电池充电器中文手册
- 1.36 MB | 2次下载 | 免费
- 6LTH7充电电路和锂电池升压5V输出电路原理图
- 0.04 MB | 1次下载 | 免费
- 7HT2120两节锂电池保护板电路
- 0.22 MB | 1次下载 | 免费
- 8BQ77207EVM用户指南
- 865.23KB | 1次下载 | 免费
本月
- 1XL4015+LM358恒压恒流电路图
- 0.38 MB | 151次下载 | 1 积分
- 2PCB布线和布局电路设计规则
- 0.40 MB | 33次下载 | 免费
- 3智能门锁原理图
- 0.39 MB | 13次下载 | 免费
- 4GB/T4706.1-2024 家用和类似用途电器的安全第1部分:通用要求
- 7.43 MB | 11次下载 | 1 积分
- 5JESD79-5C_v1.30-2024 内存技术规范
- 2.71 MB | 10次下载 | 免费
- 6elmo直线电机驱动调试细则
- 4.76 MB | 9次下载 | 6 积分
- 7WIFI智能音箱原理图完整版
- 0.09 MB | 7次下载 | 10 积分
- 8PC1013三合一快充数据线充电芯片介绍
- 1.03 MB | 7次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935115次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420061次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233084次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191367次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183332次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81581次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73806次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65985次下载 | 10 积分
评论
查看更多