Presentation is loading. Please wait.

Presentation is loading. Please wait.

第八章 LED矩陣與SPI介面控制 建立自訂函數 認識變數的有效範圍 LED矩陣簡介 認識SPI介面與MAX7219 顯示靜態與動態矩陣圖像

Similar presentations


Presentation on theme: "第八章 LED矩陣與SPI介面控制 建立自訂函數 認識變數的有效範圍 LED矩陣簡介 認識SPI介面與MAX7219 顯示靜態與動態矩陣圖像"— Presentation transcript:

1

2 第八章 LED矩陣與SPI介面控制 建立自訂函數 認識變數的有效範圍 LED矩陣簡介 認識SPI介面與MAX7219 顯示靜態與動態矩陣圖像
指標與程式記憶體

3 建立自訂函數 具有特定功能並且能被重複使用的程式碼,叫做「函數」。 自訂函數的語法範例 參閱 8-2

4 變數的有效範圍 參閱 8-7

5 LED矩陣簡介 LED矩陣(LED Matrix)是一種把數十個LED排列封裝在一個方形元件的顯示單元 LED矩陣的內部結構 參閱 8-9

6 認識SPI介面與MAX7219 SPI介面的全名是Serial Peripheral Interface(序列周邊介面),廣泛用於各種電子裝置。 SPI採用四條線連結主機和周邊設備,這四條連線的名稱和用途如下: SS:周邊選擇線(Slave Select),指定要連線的周邊設備。此線輸入0,代表選取,1代表未選。 MOSI:從主機往周邊傳送的資料線(Master Output, Slave Input)。 MISO:從周邊往主機傳送的資料線(Master Input, Slave Output)。 SCK:序列時脈線(Serial Clock)。 參閱 8-11

7 Arduino Uno SPI接腳 在SPI介面中,除了第10腳的SS(周邊選擇線)可以用其他接腳替換,其餘3個接線都必須連接在特定的腳位。
參閱 8-12 MAX7219的時序圖,裝置的SS接腳必須為0,才能接收和傳遞資料。

8 LED矩陣電路 驅動一個8×8單色 LED矩陣的電路圖 參閱 8-14 可以採用市售的MAX7219與8×8rm LED矩陣的套件

9 MAX7219的暫存器 MAX7219內部包含用於設定晶片狀態,以及LED顯示資料的暫存器,每個暫存器都有一個識別位址。
暫存器名稱 位址 資料0(Digit 0) 0x1 資料1(Digit 1) 0x2 資料2(Digit 2) 0x3 資料3(Digit 3) 0x4 資料4(Digit 4) 0x5 資料5(Digit 5) 0x6 資料6(Digit 6) 0x7 資料7(Digit 7) 0x8 不運作(No-Op) 0x0 解碼模式(Decode Mode) 0x9 顯示強度(Intensity) 0xA 掃描限制(Scan Limit) 0xB 停機(Shutdown) 0xC 顯示器檢測(Display Test) 0xF 參閱 8-18 用常數儲存 暫存器的位址

10 顯示單一矩陣圖像 傳送資料給MAX7219需要四個步驟, 如右邊的"max7219"的自訂函數所示: 底下的陣列資料用於描述
一個8×8 LED矩陣圖像: 參閱 8-20

11 在序列埠監控視窗輸出矩形排列的星號(一)
如何呈現6個水平排列的星號? 用6個"print()"函數顯示星號。 用一個for迴圈完成。 參閱 8-24

12 在序列埠監控視窗輸出矩形排列的星號(二)
完成6×3排列顯示效果的雙重迴圈程式 參閱 8-26

13 顯示動態LED矩陣圖像 參閱 8-28 二維陣列定義 LED矩陣圖像: 雙重迴圈程式先讀取第一張圖片裡的八行資料,再切換到下一張讀取:

14 LED矩陣跑馬燈 先把動畫字元暫存在變數,再逐行移動(複製)其中的數據,就能產生捲動效果。 參閱 8-31

15 指標與「程式記憶體」 除了透過名稱,還可以透過記憶體位址存取變數資料。 參閱 8-39
在常數宣告敘述中加入PROGMEM關鍵字,可避免資料被複製到主記憶體。 讀取程式記憶體的值, 必須透過「指標」。


Download ppt "第八章 LED矩陣與SPI介面控制 建立自訂函數 認識變數的有效範圍 LED矩陣簡介 認識SPI介面與MAX7219 顯示靜態與動態矩陣圖像"

Similar presentations


Ads by Google