資料介紹
描述
如果您想顯示消息或顯示數據,LCD 是一個不錯的選擇。你可以找到各種液晶顯示器。在本任務中,您將看到一個 16x2 字符 LCD。讓我們在上面顯示短語“Hello World”。
第 1 步:您需要什么
您需要的零件都包含在這個Maker 套件中。
- SwiftIO 板
- 盾
- 16x2 液晶
- 4 針電纜
第 2 步:16x2 液晶顯示器
這種 LCD 有 16 列和 2 行。所以它可以顯示32個字符。每個字符由 5 列 8 行組成,即 40 個像素。
在其坐標系中,左上角為原點 (0, 0)。它的坐標系如上。
此 LCD 支持 I2C 通信。控制它的所有命令都在其數據表中。但你不必擔心。您可以在項目中找到該文件LCD1602.swift
。它已經為您完成了工作,您可以直接使用這些方法來控制您的 LCD。
第 3 步:什么是 I2C 通信
內部集成電路,簡稱I2C(I 2 C或I squared C),是一種適用于短距離通信的協議。它允許多個從設備僅使用兩條線與一個主設備進行通信,這構成了其與其他協議相比的巨大優勢。
對于通信協議,總是有主設備和從設備。主設備控制通信過程。當主設備被調用時,從設備會響應主設備。在我們的項目中,SwiftIO 板始終是主機,其他設備充當從機。
兩條線包含一條 SCL 和一條 SDA 線:
- SCL (串行時鐘)承載主機產生的時鐘信號。通過預設速度,設備可以知道傳輸每個比特的時間,并可以預測數據傳輸是否完成。因此,它可以保證設備之間的同步數據傳輸。
- SDA (串行數據)是數據線。所有數據都由主設備或從設備在這條線上傳輸。數據通常以字節為單位。每個通信協議都指定了它自己的關于如何發送數據的系統。我們不會在這里過多地談論它。
為什么只有兩條線可以支持多個設備而不會混淆?這是因為每個 I2C 設備都有其唯一的地址。您總能在其數據表中找到它。在通信開始時,主機將發送所需設備的地址。只有相應的設備會響應并為接下來的過程做準備。因此,不同設備之間不會混淆。
簡而言之,如果要與某些設備進行通信,則需要在數據表中找到該命令對應的數據,然后根據通信協議的規則發送數據。
第 4 步:電路
將屏蔽罩放在 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文件已根據其數據表配置了 LCD。它包含在項目中,因此您可以直接使用這些方法來控制您的 LCD
讓我們看一下文件main.swift
。
import SwiftIO
import SwiftIOBoard
導入必要的庫:SwiftIO和SwiftIOBoard。SwiftIO用于控制 SwiftIO 板的輸入和輸出。SwiftIOBoard定義板的引腳名稱。
let i2c = I2C(Id.I2C0)
let lcd = LCD1602(i2c)
初始化 I2C 接口。初始化LCD,需要告訴I2C接口,其他參數已經有了默認值。
lcd.write(x: 0, y: 0, "Hello World!")
然后您將使用該方法write(x:y:_:)
顯示字符串。它有三個參數。首先,您需要設置起點的坐標。在這里,您從原點 (0, 0) 開始。第三個參數是您要顯示的內容。它是一個字符串。所以你在雙引號內添加內容。
由于文本將始終顯示在 LCD 上,因此您可以將其寫在循環上方。即使循環中沒有任何內容,您也需要將其添加到您的代碼中。
第 7 步:運行項目
下載代碼后,屏幕會顯示“Hello World!”字樣。
- 如何連接16x2 LCD顯示器
- 基于HC-05藍牙模塊控制16x2 LCD顯示屏
- 支持物聯網的16x2 LCD屏幕
- 用Arduino和16x2 LCD顯示器制作倒計時繼電器
- 帶16x2 LCD顯示屏和4x4鍵盤的計算器
- 帶有藍色藥丸的16x2 LCD
- 在Arduino上使用16x2 LCD
- Casil LED背光16x2 LCD顯示模塊項目
- 如何連接和使用16x2 I2C LCD的教程
- 使用16x2 LCD顯示屏來展示股票信息
- 使用16x2 LCD鍵盤屏蔽的按鈕
- 帶LCD I2C 16x2顯示屏的Arduino DTH22濕度溫度
- 使用Swift語言在LCD上顯示溫度
- 在16x2 LCD顯示器上創建自定義動畫
- VU表lcd 16x2開源分享
- 如何在LCD上顯示漢字和英文 2373次閱讀
- LCD1602液晶顯示屏的工作原理詳解 2.5w次閱讀
- LCD1602顯示屏如何使用 2725次閱讀
- 如何在STM32F103C8中使用中斷 2336次閱讀
- 如何編寫第一個hello world程序 8142次閱讀
- 探索鴻蒙OS應用開發的hello world代碼 1813次閱讀
- digilentPmodCLP字符型LCD模塊介紹 2261次閱讀
- 米爾科技HELLO WORLD主板介紹 2325次閱讀
- 米爾科技Linux簡單Hello World應用程序的教程 1300次閱讀
- 源創通信SinoV-MIDSPAN-16-G-AT中跨設備介紹 980次閱讀
- 51單片機對LCD1602顯示的四線驅動 6527次閱讀
- 如何使用SAM4E單片機點亮LCD并顯示出文字 3059次閱讀
- 如何利用PIC16F877單片機的c語言寫一個時鬧鐘程序 2451次閱讀
- 16x2點陣字符液晶模塊設計實現 1380次閱讀
- lcd1602顯示程序 2.9w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多