Raspberry Pi 使用3個GPIO輸出,控制2個7段顯示器

Raspberry Pi 使用3個GPIO輸出,控制2個7段顯示器

如果善用7447這顆BCD轉7段顯示器的IC,那麼就可以使用4個資料輸入訊號,轉換成7段顯示器可以顯示的數字,那麼一個7段顯示器只要使用4條信號線就可以了。這也是作者之前這篇文章【使用7447控制7段顯示器】所介紹的內容。而在這篇文章【使用74595控制8個LED】中,我們瞭解到74959這顆Shift Register位移暫存器IC,可以使用3個GPIO控制8個LED,不知道讀者有沒有想到什麼了?沒錯,8個輸出即可當做2個7447的BCD輸入端,也就是1個74595連接2個7447,其中一個使用位元組中的高位元nibble,而另外一個使用低位元部份的nibble,如此,就可以達成用3個GPIO獨立控制2個7段顯示器數字的目標了。

Raspberry Pi連接74595 Shift Register實驗

Raspberry Pi連接74595 Shift Register實驗

之前的實驗是使用7447來控制7段顯示器,一個7447的輸入是4條線,因此會用掉樹莓派的4個GPIO連接埠。但是,如果想要在有限的IO下控制最多的輸出,其實使用Shift Register是最好的選擇。74595則是最常見的8位元輸出Shift Register。它主要使用3條輸入訊號,其中一條用來輸入資料,而另外一條則是時脈Clock,再另外一條則是控制是否要輸出的閂鎖Latch信號。

Raspberry Pi使用按鈕來控制7段顯示器做倒數計時

Raspberry Pi使用按鈕來控制7段顯示器做倒數計時

使用樹莓派來做輸出一般來說都算是比較簡單,大部份沒有數位電路觀念的朋友,透過簡單的接線,直接由Raspberry Pi的GPIO連線到輸出的元件,再全部用程式來控制也說得過去。如果是點亮幾個LED還算是容易,但是如果需要連線到7段顯示器來顯示出數字的話,全部用GPIO來連接a, b, c, d, e, f, g,就要用掉7個輸出埠,算是滿浪費的,因比較折衷的方法,則是透過TTL 7447這個BCD轉7段顯示器的IC,只要用到4個輸出端,在運用上較為合理。此外,輸入的部份,如果冒然把電源導入,有燒毀樹莓派的風險,還要簡單地接一個Pull Down或Pull Up的電路,比較安全。

適合想要快速上手的Python新書上市囉

適合想要快速上手的Python新書上市囉

本書實務經驗分享
‧避開精巧但難懂的語法,以實用性為主的程式設計教學內容
‧利用Web Framework製作可連結資料庫的動態網站
‧善用Python模組,學習以最簡短的程式碼做最佳的應用
‧運用Git及BitBucket進行雲端App主機部署

第 1 頁 / 共 4 頁1234