發表文章

目前顯示的是有「COM」標籤的文章

Python可以這樣玩(16):共陰/共陽七段顯示器

圖片
七段顯示器是內建八個 LED 的顯示元件,為了方便解說,內部 LED 分別標上 a~g 和 dp (點 p )代號。連接電源方式不同,區分共陽 ( 陰 ) 極。 首先教大家如何背起來每個接腳以及顯示面板上面的發光二極體的對應關係,發光二極體的順序請先畫一個 “0” ,由 “0” 這個數字順時鐘畫一圈, a – f 的位置就沒有問題了, g 代表中間橫槓, dp 代表小數點。 PIN 腳共有十個,中間上下兩個都是 COM ,左上右下先忽略,也是從 12 點 COM 開始順時鐘畫一圈,分別就是 a – f ,剩下的左上就是 g ,右下就是 dp 。 下面則是共陽與共陰的示意圖: 自己用順時鐘原則測試一下,下面展示了呈現某個數字所需點亮的 LED 代號: 以共陽為例,如果我們希望顯示數字 0 ,由於陽極連接 5V ,我們就必須讓 a = b = c = d = e = f = LOW ,也就是 0 伏特的電壓,而 g = p = HIGH ,也就是 5 伏特的電壓,那麼沒有電位差的 g, p 就不會亮燈,自然就顯示數字 0 了。而共陰則是完全相反。 我手上有兩個七段顯示器,但是我實在弄不清楚哪個是共陽哪個是共陰,這種情況,我可以用 Python 簡單的測試一下,首先假設是共陽,我把 COM 接到 PIN 2 ,然後把七段顯示器的 a 腳地,打開 Python IDE ,輸入以下指令: >>> import pyfirmata >>> board = pyfirmata.Arduino('COM3') >>> board.digital[2].write(1) >>>   如果最上面那條 LED 亮了,就代表是共陽,反之,我們將共陰顯示器的 COM 接地,然後把顯示器腳 b 接到 Arduino 的 PIN 7 ,接著輸入下面的指令: >>> board.digital[7].write(1) >>>   這樣右上方的 LED 就會亮起,如下圖,右邊為共陽 (BHLA7417) ,左邊為共陰 (AHLA7...