電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>使用Swift語言通過按鈕控制LED

使用Swift語言通過按鈕控制LED

2022-11-10 | zip | 0.11 MB | 次下載 | 免費(fèi)

資料介紹

描述

在之前的兩個(gè)項(xiàng)目中,LED 會自動打開和關(guān)閉。現(xiàn)在,您將使用按鈕自己控制 LED。

第 1 步:您需要什么

poYBAGNomumAdbHBAACdnA049Fw964.png
?

您需要的零件都包含在此Maker 套件中。

  • SwiftIO 板
  • 按鍵模塊
  • 4 針電纜

第 2 步:按鈕

poYBAGNomuyAPJA6AAA88DVOupY698.png
?

按鈕或按鈕始終用于控制其他設(shè)備,例如電燈開關(guān)或遙控器。這個(gè)按鈕是瞬時(shí)的,所以它的狀態(tài)只會隨著你按下它而改變,一旦你松開它,它就會回到原來的狀態(tài)。

這種紐扣通常有四個(gè)腳。同側(cè)的兩條腿短接。

所以當(dāng)你連接單個(gè)按鈕時(shí),最好將兩條腿連接在對角線上。

而套件中的按鈕模塊使用 Grove 連接器,您可以直接構(gòu)建電路而無需擔(dān)心連接錯(cuò)誤。

此外,該按鈕還有一個(gè)已知問題:彈跳。由于機(jī)械和物理問題,當(dāng)您緩慢按下或松開按鈕時(shí),按鈕內(nèi)部可能有多個(gè)觸點(diǎn)。微控制器可能會將其視為幾臺印刷機(jī)。按鍵模塊采用硬件去抖方式,不會遇到這個(gè)問題。

第 3 步:電路

pYYBAGNomvCAZZrxAADpb2h3Blk369.png
?

屏蔽是一種模塊化電路板,可以更輕松地連接電路。屏蔽罩兩側(cè)的管腳與 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

首先,導(dǎo)入兩個(gè)庫:SwiftIOSwiftIOBoard。

let led = DigitalOut(Id.RED)
let button = DigitalIn(Id.D10)

初始化紅色板載 LED 和按鈕連接的數(shù)字引腳 (D10)。

在循環(huán)中,您將使用該if-else語句來檢查按鈕狀態(tài)。它具有以下形式:

if condition {
    statement1
} else {
    statement2
}

條件總是有兩個(gè)結(jié)果,真或假。如果為真,則執(zhí)行statement1;如果為假,statement2 將被執(zhí)行。

然后讓我們回顧一下代碼。

if button.read() {
        led.write(false)
    } else {
        led.write(true)
    }

該方法read()允許您獲取值。返回值為真或假。所以你可以根據(jù)值知道按鈕的狀態(tài)。如果按下按鈕,該值將為真,因此該引腳輸出低電壓以打開板載 LED。一旦松開按鈕,輸入值為 false,LED 將關(guān)閉。

第 6 步:運(yùn)行項(xiàng)目

當(dāng)您將代碼下載到您的電路板時(shí),紅色 LED 熄滅。如果按下按鈕,LED 會亮起。松開按鈕后,LED 熄滅。


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)