資料介紹
描述
當您獲得一塊新電路板時,如果您沒有一些先前的知識,您可能無法開箱即用。這是相當令人沮喪的。所以這個項目想讓每個人都開始使用電子產(chǎn)品和 Swift 語言。相信我,這并不像你想象的那么難。讓我們更詳細地研究一下。
一開始,我們肯定會從 hello world 項目開始——讓 LED 閃爍。您將交替打開和關(guān)閉 LED 以使其閃爍。
第 1 步:您需要什么
- SwiftIO 板
您會注意到有一個板載 LED。所以你只會在這個項目中處理它,不需要其他組件。
第 2 步:什么是數(shù)字輸出

數(shù)字信號通常有兩種狀態(tài),其值為 1 或 0。對于 SwiftIO 板,1 代表 3.3V,0 代表 0V。同樣的意思還有其他表達方式:高或低,真或假。
在這個項目中,您將控制輸出電壓來打開或關(guān)閉 LED。
第 3 步:關(guān)于 LED

LED或發(fā)光二極管是一種二極管。它有正腿和負腿。只有當你以正確的方向連接它時,電流才能流動。
LED有兩種連接方式:
- 將 LED 連接到電源和數(shù)字引腳。由于電流總是從高電壓流向低電壓,如果管腳輸出高電壓,則LED兩端沒有電壓差,所以LED熄滅。只有當引腳輸出低電壓時,電流才能從電源流到引腳,LED 才會亮。這就是板載 LED 的工作原理。
- 將 LED 連接到數(shù)字引腳和接地。如果引腳輸出高電壓,電流從引腳流向地,LED 將亮起。如果它輸出低電壓,則 LED 熄滅。
你可以在你的板上找到一個 RGB LED。它有三種顏色:紅色、綠色和藍色。當您下載代碼時,它會用作狀態(tài)指示器。此外,您還可以通過設(shè)置輸出電壓來控制其顏色和狀態(tài)。
由于有三種顏色,您可以點亮其中的任何一種:如果打開紅色和藍色,您會注意到它呈現(xiàn)洋紅色。如果三個都亮,LED 似乎是白色的。
而板載 LED 在內(nèi)部連接到 3.3V。如果將其設(shè)置為高壓,則實際上將沒有電流。所以當你施加低電壓時它會被點亮。
第 5 步:代碼
/* 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 blue LED */
let led = DigitalOut(Id.BLUE)
/* The code here will run all the time. */
while true {
/* Set Blue LED off. */
led.write(true)
/* Interval of LED blink (milliseconds). */
sleep(ms: 1000)
/* Set Blue LED on. */
led.write(false)
sleep(ms: 1000)
}
第 6 步:代碼分析
要對 SwiftIO 板進行編程,您需要下載MadMachine IDE來編輯和構(gòu)建代碼。
安裝后,打開它并創(chuàng)建一個新項目。在文件main.swift中,您可以粘貼上面的代碼。

讓我們詳細看一下代碼:
import SwiftIO
import SwiftIOBoard
SwiftIO包含控制您的電路板的所有功能。所有程序都必須首先引用它,以便您可以使用其中的所有內(nèi)容,例如類和函數(shù)。
SwiftIOBoard定義了這個板子對應的 pin id。不同板子的管腳不同。所以這個庫告訴 IDE 你正在處理 SwiftIO 板,而不是任何其他板。然后你可以使用其中的id。
let led = DigitalOut(Id.BLUE)
在設(shè)置特定引腳之前,您需要對其進行初始化。
首先,聲明一個常量:使用關(guān)鍵字let,后跟一個常量名。led
然后使其成為DigitalOut類的實例并初始化該引腳。
要初始化 pin,您需要指明其 id。所有的 id 都列在一個 enum 中,內(nèi)置的 RGB LED 使用 RED、GREEN 或 BLUE 的 id,因此這里的藍色 LED 的 id用點語法寫成。Id.BLUE
while true {
led.write(true)
sleep(ms: 1000)
led.write(false)
sleep(ms: 1000)
}
在死循環(huán)while true中,括號中的所有代碼都會一遍又一遍地運行,除非您關(guān)閉代碼。此處,該引腳輸出高電壓,然后休眠 1 秒。所以在最初的 1 秒內(nèi),總是有一個高電壓。同樣,在接下來的 1s 內(nèi),該引腳輸出低電壓。
該方法write(_:)用于設(shè)置引腳輸出高電壓或低電壓。其參數(shù)為布爾類型:true或false:true對應高電平,false對應低電平。如上所述,您需要設(shè)置一個低電壓來打開 LED。
sleep(ms:) 函數(shù)表示延遲時間,以毫秒計算。必須添加參數(shù)名稱才能傳入?yún)?shù)。ms
第 7 步:運行項目

完成代碼后,是時候?qū)⑵湎螺d到您的開發(fā)板上了。
確保 SD 卡已插入插槽。按下載按鈕。
等待幾秒鐘。您會注意到板載 LED 變?yōu)?/font>綠色常亮,并且 IDE 狀態(tài)欄中的消息表明板已準備就緒,然后您可以單擊 IDE 上的下載按鈕。
下載代碼后,板載 LED 開始閃爍。
- 使用Swift語言通過按鈕控制LED
- 使用Swift語言一個一個地閃爍RGB LED
- 使用Swift語言更改LED閃爍率
- 使用Swift語言控制伺服
- 單片機實驗:P0端口驅(qū)動LED閃爍(Proteus仿真+C語言程序)
- 使用單片機實現(xiàn)TIMER0控制LED閃爍的C語言程序免費下載 7次下載
- 單片機C語言程序設(shè)計實例之閃爍的LED 5次下載
- 使用單片機實現(xiàn)閃爍1個LED的C語言程序?qū)嵗赓M下載 9次下載
- 使用單片機實現(xiàn)不同頻率閃爍多個LED燈的C語言程序?qū)嵗赓M下載 15次下載
- 使用單片機實現(xiàn)不同頻率閃爍1個LED燈的C語言程序?qū)嵗赓M下載 9次下載
- 蘋果Swift語言入門教程中文 2次下載
- 用C語言編寫程序?qū)崿F(xiàn)通過按鍵使LED燈周期閃爍 10次下載
- LED閃爍程序【C語言+匯編版】 0次下載
- LED燈閃爍程序【匯編版】 0次下載
- LED燈閃爍程序【C語言版】 0次下載
- 三種種常用的LED閃爍電路 3.4k次閱讀
- 一個帶有閃爍LED的門鈴電路 3.1k次閱讀
- LED平板燈閃爍的原因 2.2w次閱讀
- 一種可以實現(xiàn)無閃爍LED照明的靈活的紋波抑制電路介紹 2.7k次閱讀
- 閃爍LED構(gòu)成的閃光電路 1.3w次閱讀
- 聲控閃爍LED燈電路 1.6w次閱讀
- 帶閃爍LED的門鈴電路講解 6.3k次閱讀
- 關(guān)于led射燈在閃爍時的解決辦法 1.1w次閱讀
- 如何采用PIC單片機的C代碼來控制LED閃爍 2.6k次閱讀
- 詳解無閃爍LED驅(qū)動調(diào)光控制設(shè)計 4.8k次閱讀
- LED燈閃爍是怎么回事 2w次閱讀
- 最全關(guān)于關(guān)燈LED微亮和節(jié)能燈閃爍的問題分析 1.4w次閱讀
- 單片機閃爍燈匯編語言源代碼大全(四款閃爍燈的匯編語言源代碼) 2.6w次閱讀
- LED閃爍燈制作教程 2.7w次閱讀
- 單片機C語言程序設(shè)計之定時器控制4個LED滾動閃爍 8.7k次閱讀
下載排行
本周
- 1新一代網(wǎng)絡(luò)可視化(NPB 2.0)
- 3.40 MB | 1次下載 | 免費
- 2冷柜-電氣控制系統(tǒng)講解
- 13.68 MB | 1次下載 | 10 積分
- 3MDD品牌三極管MMBT3906數(shù)據(jù)手冊
- 2.33 MB | 次下載 | 免費
- 4MDD品牌三極管S9012數(shù)據(jù)手冊
- 2.62 MB | 次下載 | 免費
- 5LAT1218 如何選擇和設(shè)置外部晶體適配 BlueNRG-X
- 0.60 MB | 次下載 | 3 積分
- 6LAT1216 Blue NRG-1/2 系列芯片 Flash 操作與 BLE 事件的互斥處理
- 0.89 MB | 次下載 | 3 積分
- 7收音環(huán)繞擴音機 AVR-1507手冊
- 2.50 MB | 次下載 | 免費
- 8MS1000TA 超聲波測量模擬前端芯片技術(shù)手冊
- 0.60 MB | 次下載 | 免費
本月
- 1愛華AIWA HS-J202維修手冊
- 3.34 MB | 37次下載 | 免費
- 2PC5502負載均流控制電路數(shù)據(jù)手冊
- 1.63 MB | 23次下載 | 免費
- 3NB-IoT芯片廠商的資料說明
- 0.31 MB | 22次下載 | 1 積分
- 4UWB653Pro USB口測距通信定位模塊規(guī)格書
- 838.47 KB | 5次下載 | 免費
- 5蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 6蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
- 7100W準諧振反激式恒流電源電路圖資料
- 0.09 MB | 2次下載 | 1 積分
- 8FS8025B USB的PD和OC快充協(xié)議電壓誘騙控制器IC技術(shù)手冊
- 1.81 MB | 1次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191439次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論