電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>使用Swift語言在16x2 LCD上顯示Hello World

使用Swift語言在16x2 LCD上顯示Hello World

2022-11-03 | zip | 0.11 MB | 次下載 | 免費

資料介紹

描述

如果您想顯示消息或顯示數(shù)據(jù),LCD 是一個不錯的選擇。你可以找到各種液晶顯示器。在本任務(wù)中,您將看到一個 16x2 字符 LCD。讓我們在上面顯示短語“Hello World”。

第 1 步:您需要什么

poYBAGNiUUyAZ99TAACMkC1yvXg775.png
?

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

  • SwiftIO 板
  • 16x2 液晶
  • 4 針電纜

第 2 步:16x2 液晶顯示器

pYYBAGNiUU6Ac6RRAAB2CoxTXPk037.png
?

這種 LCD 有 16 列和 2 行。所以它可以顯示32個字符。每個字符由 5 列 8 行組成,即 40 個像素。

在其坐標系中,左上角為原點 (0, 0)。它的坐標系如上。

此 LCD 支持 I2C 通信。控制它的所有命令都在其數(shù)據(jù)表中。但你不必擔心。您可以在項目中找到該文件LCD1602.swift它已經(jīng)為您完成了工作,您可以直接使用這些方法來控制您的 LCD。

第 3 步:什么是 I2C 通信

poYBAGNiUVCAJUAdAAAlSJmDgIU716.png
?

內(nèi)部集成電路,簡稱I2C(I 2 C或I squared C),是一種適用于短距離通信的協(xié)議。它允許多個從設(shè)備僅使用兩條線與一個主設(shè)備進行通信,這構(gòu)成了其與其他協(xié)議相比的巨大優(yōu)勢。

對于通信協(xié)議,總是有主設(shè)備和從設(shè)備。主設(shè)備控制通信過程。當主設(shè)備被調(diào)用時,從設(shè)備會響應(yīng)主設(shè)備。在我們的項目中,SwiftIO 板始終是主機,其他設(shè)備充當從機。

兩條線包含一條 SCL 和一條 SDA 線:

  • SCL (串行時鐘)承載主機產(chǎn)生的時鐘信號。通過預(yù)設(shè)速度,設(shè)備可以知道傳輸每個比特的時間,并可以預(yù)測數(shù)據(jù)傳輸是否完成。因此,它可以保證設(shè)備之間的同步數(shù)據(jù)傳輸。
  • SDA (串行數(shù)據(jù))是數(shù)據(jù)線。所有數(shù)據(jù)都由主設(shè)備或從設(shè)備在這條線上傳輸。數(shù)據(jù)通常以字節(jié)為單位。每個通信協(xié)議都指定了它自己的關(guān)于如何發(fā)送數(shù)據(jù)的系統(tǒng)。我們不會在這里過多地談?wù)撍?/font>

為什么只有兩條線可以支持多個設(shè)備而不會混淆?這是因為每個 I2C 設(shè)備都有其唯一的地址。您總能在其數(shù)據(jù)表中找到它。在通信開始時,主機將發(fā)送所需設(shè)備的地址。只有相應(yīng)的設(shè)備會響應(yīng)并為接下來的過程做準備。因此,不同設(shè)備之間不會混淆。

簡而言之,如果要與某些設(shè)備進行通信,則需要在數(shù)據(jù)表中找到該命令對應(yīng)的數(shù)據(jù),然后根據(jù)通信協(xié)議的規(guī)則發(fā)送數(shù)據(jù)。

第 4 步:電路

pYYBAGNiUVOAHlCdAAC7tDBbBtU196.png
?

將屏蔽罩放在 SwiftIO 板的頂部。

將 LCD 連接到 I2C0 引腳。您可以看到有三個可用的 I2C0。你可以選擇其中任何一個。

第 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。它包含在項目中,因此您可以直接使用這些方法來控制您的 LCD

讓我們看一下文件main.swift。

import SwiftIO
import SwiftIOBoard

導(dǎo)入必要的庫:SwiftIOSwiftIOBoard。SwiftIO用于控制 SwiftIO 板的輸入和輸出。SwiftIOBoard定義板的引腳名稱。

let i2c = I2C(Id.I2C0)
let lcd = LCD1602(i2c)

初始化 I2C 接口。初始化LCD,需要告訴I2C接口,其他參數(shù)已經(jīng)有了默認值。

lcd.write(x: 0, y: 0, "Hello World!")

然后您將使用該方法write(x:y:_:)顯示字符串。它有三個參數(shù)。首先,您需要設(shè)置起點的坐標。在這里,您從原點 (0, 0) 開始。第三個參數(shù)是您要顯示的內(nèi)容。它是一個字符串。所以你在雙引號內(nèi)添加內(nèi)容。

由于文本將始終顯示在 LCD 上,因此您可以將其寫在循環(huán)上方。即使循環(huán)中沒有任何內(nèi)容,您也需要將其添加到您的代碼中。

第 7 步:運行項目

下載代碼后,屏幕會顯示“Hello World!”字樣。


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

評論

查看更多

下載排行

本周

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

本月

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

總榜

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