OLED1306 顯示器
OLED1306 顯示器積木屬於 micro:bit 的擴展模組,可以控制 OLED 顯示單色的英文字和數字,彌補 micro:bit 的 5x5 LED 無法顯示較多英文和數字的限制,OLED1306 解析度為 128 x 64,也可繪製一些簡單的幾何造型,做出有趣的應用。
OLED1306 顯示器積木有幾個分類:初始化 OLED、顯示數字、顯示文字、繪製四邊形、繪製垂直 / 水平直線、繪製像素、反轉顏色、清除畫面、關閉 / 開啟螢幕、縮放畫面。
micro:bit 連接 OLED1306 顯示器
按照下圖,使用「擴充板、杜邦線、麵包板」,將 micro:bit 連接 OLED1306 顯示器。
OLED1306 為單色顯示器,如果是標榜「雙色」,表示顯示器的上方為黃色,下方為藍色,並非可以同一個位置顯示兩種不同顏色。
加入 OLED1306 顯示器積木
開啟 MakeCode 的擴展功能,搜尋「oled」,從搜尋結果中選擇「OLED12864_I2C」的項目,點選加入 OLED1306 顯示器積木。
推薦 OLED12864_I2C 這個項目,因為它的功能較為完整好用。
加入後,在積木清單裡就會出現「OLED12864_I2C」的選項。
初始化 OLED ( init OLED )
OLED1306 是 I2C 的裝置,I2C 裝置都有一個位址 ( Address ),可以讓 micro:bit 進行識別和通訊,在使用 OLED1306 之前,必須要設定位址,這組積木可使用的位址有 60 和 61,預設直接用 60 就能初始化並進行控制。
通常初始化只需要設定一次,因此這個積木會直接放在「當啟動時」積木裡。
顯示數字 ( show a number )
「顯示數字」積木可以讓 OLED 在指定的座標顯示數字,可修改 xy 座標、顯示的數字 number 和數字顏色,若數字長度超過一行的顯示範圍,會自動折行到第二行。
「顯示數字」的座標並非真正的「座標」,而是字元大小,座標的範圍取決於畫面是否縮放。
- 放大模式 ( zoom: true ):x 範圍 0~63,y 範圍 0~31。
- 正常模式 ( zoom: false ):x 範圍 0~127,y 範圍 0~63。
數字顏色只能填入 1 和 0,1 為白色 ( 或藍色 ),0 為黑色 ( 背景白色或藍色 )。
因為 OLED 顯示數字是採用「覆蓋」的做法,以下圖的例子,如果要按下 A 或 B 按鈕切換數字,可先放入「清除畫面」積木,避免數字互相重疊。
顯示文字 ( show a string )
「顯示文字」積木可以指定 LCD 顯示器的顯示座標,顯示對應的文字,可修改 xy 座標、顯示的文字 string 和文字顏色,若文字長度超過一行的顯示範圍,會自動折行到第二行。
「顯示文字」的座標並非真正的「座標」,而是字元大小,座標的範圍取決於畫面是否縮放。
- 放大模式 ( zoom: true ):x 範圍 0~11,y 範圍 0~3。
- 正常模式 ( zoom: false ):x 範圍 0~23,y 範圍 0~7。
文字顏色只能填入 1 和 0,1 為白色 ( 或藍色 ),0 為黑色 ( 背景白色或藍色 )。
因為 OLED 顯示文字是採用「覆蓋」的做法,以下圖的例子,如果要按下 A 或 B 按鈕切換文字,可先放入「清除畫面」積木,避免文字互相重疊。
繪製四邊形 ( draw a rectangle )
「繪製四邊形」積木可以指定「左上」( x1,y1 ) 與「右下」(x2,y2) 的座標,繪製一個「空心」的四邊形。
下圖的例子,按下 A 按鈕時,OLED 就會畫出四個逐漸往右下移動的四邊形。
- 注意,OLED 預設採用 zoom:true ( 放大 ) 模式,所以數值會乘以 2 顯示。
- 注意,OLED 繪圖的 x 與 y 必須是「正整數」。
繪製垂直 / 水平直線 ( draw a line )
「繪製垂直 / 水平直線」積木可以指定線段的「起點」和「長度」,繪製垂直或水平的直線。
下圖的例子,micro:bit 啟動後,OLED 會由中心點畫出十字形狀 ( 上到下一直線、左到右一直線 )。
- 注意,OLED 預設採用 zoom:true ( 放大 ) 模式,所以數值會乘以 2 顯示。
- 注意,OLED 繪圖的 x 與 y 必須是「正整數」。
繪製像素 ( draw pixel )
「繪製像素」積木可以讓 OLED 在指定的座標繪製「單一像素」( 一個點 ),是相當方便好用的積木。
下圖的例子,micro:bit 啟動後,OLED 會畫出一個 X 的形狀 ( 左上到右下一直線、右上到左下一直線 )。
- 注意,OLED 預設採用 zoom:true ( 放大 ) 模式,所以數值會乘以 2 顯示。
- 注意,OLED 繪圖的 x 與 y 必須是「正整數」。
反轉顏色 ( invert display )
「反轉顏色」積木若設定 true,會將 OLED 的白色 ( 或藍色 ) 變成黑色,黑色變成白色,預設 false。
清除畫面 ( clear )
「清除畫面」積木可以將 OLED 的畫面內容清空。
關閉 / 開啟螢幕 ( turn on / off )
「關閉 / 開啟螢幕」積木可以關閉或開啟 OLED,和清除畫面不同,關閉 OLED 時,內容仍然存在,打開 OLED 之後又可以看見內容。
縮放畫面 ( zoom )
「縮放畫面」積木可以針對 OLED 解析度進行縮放,預設使用 true。
- true:放大模式,解析度從 128x64 變成 64x32。
- false:正常模式,解析度 128x64。
下圖的例子,micro:bit 啟動後,OLED 會顯示 hello 文字,按下 A 或 B 按鈕可以進行縮放。
意見回饋
如果有任何建議或問題,可傳送「意見表單」給我,謝謝~