資料介紹
描述
如果您想顯示消息或顯示數(shù)據(jù),LCD 是一個(gè)不錯(cuò)的選擇。你可以找到各種液晶顯示器。在本任務(wù)中,您將看到一個(gè) 16x2 字符 LCD。讓我們?cè)谏厦骘@示短語(yǔ)“Hello World”。
第 1 步:您需要什么

您需要的零件都包含在這個(gè)Maker 套件中。
- SwiftIO 板
- 盾
- 16x2 液晶
- 4 針電纜
第 2 步:16x2 液晶顯示器

這種 LCD 有 16 列和 2 行。所以它可以顯示32個(gè)字符。每個(gè)字符由 5 列 8 行組成,即 40 個(gè)像素。
在其坐標(biāo)系中,左上角為原點(diǎn) (0, 0)。它的坐標(biāo)系如上。
此 LCD 支持 I2C 通信。控制它的所有命令都在其數(shù)據(jù)表中。但你不必?fù)?dān)心。您可以在項(xiàng)目中找到該文件LCD1602.swift。它已經(jīng)為您完成了工作,您可以直接使用這些方法來(lái)控制您的 LCD。
第 3 步:什么是 I2C 通信

內(nèi)部集成電路,簡(jiǎn)稱I2C(I 2 C或I squared C),是一種適用于短距離通信的協(xié)議。它允許多個(gè)從設(shè)備僅使用兩條線與一個(gè)主設(shè)備進(jìn)行通信,這構(gòu)成了其與其他協(xié)議相比的巨大優(yōu)勢(shì)。
對(duì)于通信協(xié)議,總是有主設(shè)備和從設(shè)備。主設(shè)備控制通信過(guò)程。當(dāng)主設(shè)備被調(diào)用時(shí),從設(shè)備會(huì)響應(yīng)主設(shè)備。在我們的項(xiàng)目中,SwiftIO 板始終是主機(jī),其他設(shè)備充當(dāng)從機(jī)。
兩條線包含一條 SCL 和一條 SDA 線:
- SCL (串行時(shí)鐘)承載主機(jī)產(chǎn)生的時(shí)鐘信號(hào)。通過(guò)預(yù)設(shè)速度,設(shè)備可以知道傳輸每個(gè)比特的時(shí)間,并可以預(yù)測(cè)數(shù)據(jù)傳輸是否完成。因此,它可以保證設(shè)備之間的同步數(shù)據(jù)傳輸。
- SDA (串行數(shù)據(jù))是數(shù)據(jù)線。所有數(shù)據(jù)都由主設(shè)備或從設(shè)備在這條線上傳輸。數(shù)據(jù)通常以字節(jié)為單位。每個(gè)通信協(xié)議都指定了它自己的關(guān)于如何發(fā)送數(shù)據(jù)的系統(tǒng)。我們不會(huì)在這里過(guò)多地談?wù)撍?/font>
為什么只有兩條線可以支持多個(gè)設(shè)備而不會(huì)混淆?這是因?yàn)槊總€(gè) I2C 設(shè)備都有其唯一的地址。您總能在其數(shù)據(jù)表中找到它。在通信開(kāi)始時(shí),主機(jī)將發(fā)送所需設(shè)備的地址。只有相應(yīng)的設(shè)備會(huì)響應(yīng)并為接下來(lái)的過(guò)程做準(zhǔn)備。因此,不同設(shè)備之間不會(huì)混淆。
簡(jiǎn)而言之,如果要與某些設(shè)備進(jìn)行通信,則需要在數(shù)據(jù)表中找到該命令對(duì)應(yīng)的數(shù)據(jù),然后根據(jù)通信協(xié)議的規(guī)則發(fā)送數(shù)據(jù)。
第 4 步:電路

將屏蔽罩放在 SwiftIO 板的頂部。
將 LCD 連接到 I2C0 引腳。您可以看到有三個(gè)可用的 I2C0。你可以選擇其中任何一個(gè)。
第 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 I2C0 and the lcd. */
let i2c = I2C(Id.I2C0)
let lcd = LCD1602(i2c)
/* Set the display area and print the message on the LCD. */
lcd.write(x: 0, y: 0, "Hello World!")
while true {
}
第 6 步:代碼分析
LCD1602.swift文件已根據(jù)其數(shù)據(jù)表配置了 LCD。它包含在項(xiàng)目中,因此您可以直接使用這些方法來(lái)控制您的 LCD
讓我們看一下文件main.swift。
import SwiftIO
import SwiftIOBoard
導(dǎo)入必要的庫(kù):SwiftIO和SwiftIOBoard。SwiftIO用于控制 SwiftIO 板的輸入和輸出。SwiftIOBoard定義板的引腳名稱。
let i2c = I2C(Id.I2C0)
let lcd = LCD1602(i2c)
初始化 I2C 接口。初始化LCD,需要告訴I2C接口,其他參數(shù)已經(jīng)有了默認(rèn)值。
lcd.write(x: 0, y: 0, "Hello World!")
然后您將使用該方法write(x:y:_:)顯示字符串。它有三個(gè)參數(shù)。首先,您需要設(shè)置起點(diǎn)的坐標(biāo)。在這里,您從原點(diǎn) (0, 0) 開(kāi)始。第三個(gè)參數(shù)是您要顯示的內(nèi)容。它是一個(gè)字符串。所以你在雙引號(hào)內(nèi)添加內(nèi)容。
由于文本將始終顯示在 LCD 上,因此您可以將其寫在循環(huán)上方。即使循環(huán)中沒(méi)有任何內(nèi)容,您也需要將其添加到您的代碼中。
第 7 步:運(yùn)行項(xiàng)目
下載代碼后,屏幕會(huì)顯示“Hello World!”字樣。
- 如何連接16x2 LCD顯示器
- 基于HC-05藍(lán)牙模塊控制16x2 LCD顯示屏
- 支持物聯(lián)網(wǎng)的16x2 LCD屏幕
- 用Arduino和16x2 LCD顯示器制作倒計(jì)時(shí)繼電器
- 帶16x2 LCD顯示屏和4x4鍵盤的計(jì)算器
- 帶有藍(lán)色藥丸的16x2 LCD
- 在Arduino上使用16x2 LCD
- Casil LED背光16x2 LCD顯示模塊項(xiàng)目
- 如何連接和使用16x2 I2C LCD的教程
- 使用16x2 LCD顯示屏來(lái)展示股票信息
- 使用16x2 LCD鍵盤屏蔽的按鈕
- 帶LCD I2C 16x2顯示屏的Arduino DTH22濕度溫度
- 使用Swift語(yǔ)言在LCD上顯示溫度
- 在16x2 LCD顯示器上創(chuàng)建自定義動(dòng)畫(huà)
- VU表lcd 16x2開(kāi)源分享
- 使用MCUXpresso for VS Code插件開(kāi)發(fā)Zephyr的hello world 1.8k次閱讀
- 如何在LCD上顯示漢字和英文 5.1k次閱讀
- LCD1602液晶顯示屏的工作原理詳解 3.4w次閱讀
- 如何在STM32F103C8中使用中斷 3.7k次閱讀
- 如何編寫第一個(gè)hello world程序 9.7k次閱讀
- 探索鴻蒙OS應(yīng)用開(kāi)發(fā)的hello world代碼 2.9k次閱讀
- digilentPmodCLP字符型LCD模塊介紹 3k次閱讀
- 米爾科技HELLO WORLD主板介紹 3.1k次閱讀
- 米爾科技Linux簡(jiǎn)單Hello World應(yīng)用程序的教程 1.9k次閱讀
- 源創(chuàng)通信SinoV-MIDSPAN-16-G-AT中跨設(shè)備介紹 1.6k次閱讀
- 51單片機(jī)對(duì)LCD1602顯示的四線驅(qū)動(dòng) 7.4k次閱讀
- 如何使用SAM4E單片機(jī)點(diǎn)亮LCD并顯示出文字 3.6k次閱讀
- 如何利用PIC16F877單片機(jī)的c語(yǔ)言寫一個(gè)時(shí)鬧鐘程序 2.9k次閱讀
- 16x2點(diǎn)陣字符液晶模塊設(shè)計(jì)實(shí)現(xiàn) 1.7k次閱讀
- lcd1602顯示程序 3w次閱讀
下載排行
本周
- 1新一代網(wǎng)絡(luò)可視化(NPB 2.0)
- 3.40 MB | 1次下載 | 免費(fèi)
- 2冷柜-電氣控制系統(tǒng)講解
- 13.68 MB | 1次下載 | 10 積分
- 3MDD品牌三極管MMBT3906數(shù)據(jù)手冊(cè)
- 2.33 MB | 次下載 | 免費(fèi)
- 4MDD品牌三極管S9012數(shù)據(jù)手冊(cè)
- 2.62 MB | 次下載 | 免費(fèi)
- 5LAT1218 如何選擇和設(shè)置外部晶體適配 BlueNRG-X
- 0.60 MB | 次下載 | 3 積分
- 6LAT1216 Blue NRG-1/2 系列芯片 Flash 操作與 BLE 事件的互斥處理
- 0.89 MB | 次下載 | 3 積分
- 7收音環(huán)繞擴(kuò)音機(jī) AVR-1507手冊(cè)
- 2.50 MB | 次下載 | 免費(fèi)
- 8MS1000TA 超聲波測(cè)量模擬前端芯片技術(shù)手冊(cè)
- 0.60 MB | 次下載 | 免費(fèi)
本月
- 1愛(ài)華AIWA HS-J202維修手冊(cè)
- 3.34 MB | 37次下載 | 免費(fèi)
- 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊(cè)
- 1.63 MB | 23次下載 | 免費(fèi)
- 3NB-IoT芯片廠商的資料說(shuō)明
- 0.31 MB | 22次下載 | 1 積分
- 4UWB653Pro USB口測(cè)距通信定位模塊規(guī)格書(shū)
- 838.47 KB | 5次下載 | 免費(fèi)
- 5蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 6蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
- 7100W準(zhǔn)諧振反激式恒流電源電路圖資料
- 0.09 MB | 2次下載 | 1 積分
- 8FS8025B USB的PD和OC快充協(xié)議電壓誘騙控制器IC技術(shù)手冊(cè)
- 1.81 MB | 1次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開(kāi)源硬件-PMP21529.1-4 開(kāi)關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





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