Tag Archives: 電子電路相關

[教學文] 快說!怎樣不用Arduino也能做出電子鐘!!(顯示器篇)

站在火車站大廳,抬頭仰望就可看見有一個大大的時鐘,醒目地提醒旅客們現在的時刻;在電梯門前,望著旁邊的指示器,看看電梯現在位在哪個樓層。這種分成七節,外觀很像方形的8的東西,就是我們的七段顯示器。

本文就是要帶大家一窺七段顯示器的奧秘!

作者/攝影

CAVEDU實習生 陳俊霖

文章分類教學技術文
時間

1hr

成本

約60元

難度**(1-10)
材料表
  • 指撥開關(4位元) *1

  • 三用電表 *1

  • 杜邦線or單心線

  • 555 *1

  • 7490 *1

  • 7447 *1

  • 220Ω *11

  • LED *4

  • 七段顯示器 *1

  • 1kΩ *4

  • 51kΩ *1

  • 47kΩ *1

  • 10u電解電容 *1

  • 0.1u陶瓷電容 *1

(若想購買相關材料,請洽機器人王國商城)

上一篇文章  [教學文] 不用Arduino做出電子鐘?!(計數器篇) 中,我們介紹怎麼使用7490,接下來,就讓我們把計算的數字「視覺化」吧!

 

我們使用最常見的七段顯示器(7-segment display)作為數字顯示器。

圖1 七段顯示器外觀

 

下圖是七段顯示器,以及7447接腳圖和連接範例:

圖2 七段顯示器接腳圖

 

圖3 七段顯示器連接範例

 

原廠datasheet 網址(RS Components ): 7-segment-display 圖中的顯示器是共陽極。

 

Step1:在選擇驅動IC時,要先確認自己使用的七段顯示器是共陰極或共陽極。

先拿出我們的三用電表,若是數位型的三用電表,先將檔位調整至歐姆檔的X1。接下來,將紅棒放在七段顯示器的正中央接腳(COM)上。黑棒則隨意置於其它不是COM的腳位,以測試這個顯示器是否有字節故障。數位電表中,紅棒是正極,黑棒是負極。

圖4 數位電表七段顯示器測試

 

若使用指針型三用電表的讀者們,一樣將檔位調整至歐姆檔的X1,但這次我們將黑色棒放置於七段顯示器的中央接腳(COM)上,紅色隨意置於其他不是COM的腳位,測試這個顯示器是否有字節故障。指針電表中,黑棒是正極,紅棒是負極

圖5 指針電表七段顯示器測試

 

數位型電表與指針型電表接腳相反的原因,是因內部結構不同,剛好兩種電表在歐姆檔時,兩隻探棒內部連接至電池的極性相反。比較好記的方法是,記得數位型電表紅色就是正(比較直觀),指針型則與數位型相反。這部分在許多場合需要判讀零件的正負接腳時非常重要,若因不小心買錯零件而需重新設計整個電路將會得不償失。

 

確認好自己的七段顯示器規格後,就來選擇驅動IC吧!

 

Step2:常見的驅動七段顯示器專用IC有7447與7448。7447是驅動共陽極的七段顯示器;而7448則是驅動共陰極。我們這次使用共陽極的七段顯示器,因此使用7447進行解說。下圖是7447的腳位圖:

圖6 74LS47腳位圖

 

74LS47 datasheet 原廠網址(TI):  74LS47 BCD to seven segment decoder
將IC放置於麵包版上後,如圖7連接電路。

圖7 指撥開關和七段顯示器

 

電路說明:

LT、BI、RBI 三隻腳位是用來控制7447的,功能如同上次的7490的RST接腳,因此全部接至電源正極即可。若想更了解這幾隻腳位的用途,可參考上方的datasheet連結。

 

A、B、C、D 是我們的資料輸入腳位,輸入二進制資料(BCD碼)至7447後,會轉換成對應的顯示器輸出。

 

a~g則是七段顯示器的LED腳位。

 

最左邊的圖示是指撥開關,每一個開關接一個下拉電阻到地,以確保開關未動作時不會浮接。

圖8 麵包板接線參考圖

 

圖9 實體圖

 

若接線皆正確,那麼讀者的七段顯示器應該可以工作了!若有不亮或顯示亂碼的狀況,可以檢查一下指撥開關的地方是否接觸不良,或是LT、BI、RBI 三隻腳是否接至正極,又或是七段顯示器的規格用錯了。

 

Step3:我們將四個指撥開關撥出我們想要的數字,0往下撥,1往上撥。我們若輸入十進制的5,轉換成二進制就是「0101」,那麼七段顯示器就會對應輸出5了!

 

Step4:我們把上一次接好的555與7490計數電路(Q0~Q3)接至7447解碼電路上。7490的數字輸出對應接入7447資料輸入,如下面電路圖所示:

圖10 自動計數電路

 

接好後,接上電源,專屬的0~9計數時鐘就完成了!實體電路圖如圖11,看起來稍微有點複雜,但還是可以完成的。

圖11 自動計數實體電路圖

 

 

看著它自己從0數到9,還有一旁LED相對應的跳動,是不是很有趣呢!只要把兩個7490串在一起,甚至可做出從0數至99的計數器呢!有這個應用,就可組合出專屬的時鐘了。

 

不僅如此,若讀者也可以自己做開發板的相關應用。除可利用它來顯示溫度、電壓、電流之外,還可將開發板連上網路,顯示網頁的瀏覽次數、貼文的按讚次數,甚至是Youtube的訂閱者數目喔!

 

小小的七段顯示器配合Maker的創意,可以產生出眾多應用,從小小的零件變成如此重要的工具呢!

相關文章

Arduino使用grove套件做小音樂盒

本文分享使用Arduino感測器套組Arduino groove kit心得

初學Arduino有bug時,常常不知道是電路沒接好還是程式寫錯了,debug看線路就會看到眼花撩亂。grove出的這塊base shield讓接電線變得容易許多。這塊板子將腳位都拉出來整理好,只要搭配他的相容套件,就不需要再因為看麵包版上的接線看到頭昏眼花了。

撰文:CAVEDU 陳韋綸

 

 

base shield

 

Base shield將arduino上的5V、ground、digital腳位、跟I2C等都整理出來,直接插上去就可以使用了,D2到D8分別對應到Arduino板上的2號到8號。

一般Adruino接線 使用base shield

一般的arduino接線                                                                                                     使用base shield

 

在智慧型手機這麼發達的今天,很多東西都可以用觸控的方式去控制了,今天就來用grove base shield跟grove touch sensor做觸控的小音樂盒吧!

 

準備材料

  1. Arduino控制板
  2. Grove base shield
  3. Grove touch sensor
  4. 蜂鳴器

grove touch

 

1、grove出的 touch sensor,使用電容式感測,只要碰到或在附近他就會輸出ON的訊號。

組裝示意圖

 

開始動手作

先裝上grove 的 base shield 擴充版將觸控感應器連到D8、蜂鳴器連到D6

 

組裝時接線都有防呆,所以不用擔心接錯方向

 

2、將下面的程式燒進去arduino就可以用囉

const int alarmpin = 6; //set the buzzer to D6
const int touchsensorpin = 8; // set the touch sensor to D8

void setup() {

  pinMode(touchsensorpin,INPUT); 
}

void loop() {

  int sensorvalue = digitalRead(touchsensorpin); //read touch sensor value
  
  //make sound if touched
  if(sensorvalue == 1){
    tone(6,440,200);
  }    
  
  delay(200);
}
Grove+Touch+Buzzer

程式說明

  • 第一二行設定蜂鳴器跟觸控感應器的腳位,注意蜂鳴器的腳位一定要在有PWM輸出的腳位
  • 第六行將觸控感應器設定為讀取信號
  • 第十一行讀取觸控感應器的狀態,若是有碰到會讀到1(TRUE),沒碰到會讀到0(FALSE)
  • 第十三行做判斷,有碰到就發出聲響
  • 第十四行讓蜂鳴器產生聲響的程式碼 tone( 腳位 , 頻率 , 時間 )

 

只要碰到就會發出聲音

很簡單吧!接下來只要再多準備幾個觸控感應器跟開關,就可以做自己的小音樂盒囉!

 

Grove最大的好處是他除了擴充版以外,還有很多像這次用的觸控感應器這樣的套件,只要把現插上去就可以直接使用了,有興趣都可以到他們的網站找找有沒有需要的套件吧!

http://www.seeedstudio.com/wiki/Grove_System

 

 

 

「用Arduino Yún自造智慧家電」工作坊

20150425_163934
這次的智慧家電研習工作坊,這次上課對象是對有Aruduino使用基礎的Maker及Pre-Startup,這次來的同學有好多是在台灣擔任工程師的前輩阿,這次的上課內容是一天使用ArduinoYun上網到物聯網應用。

20150425_155253

本次上課內容有:

認識 Arduino Yún 開發板

–       安裝 Arduino 程式編輯介面

–       Arduino Yún  使用環境建置:透過網路將程式上傳到Arduino Yun。

–       Arduino  無線網路介面設定

–     使用ArduinoYun偵測周圍環境的溫度濕度

端家電監控(1)

–       認識Restful API

–       量測家電能源消耗狀況

–       遠端啟動以及關閉繼電器

Temboo 網路服務

–       自動上傳能源消耗資料到 Google Doc

–       運用雲端資源,整合紀錄並分析數據

–       發送警告電子郵件

 

 

大家開始組裝溫溼度感應器。恩恩,今天室內溫度大約是26度,濕度是46%

20150425_155103

 

這是很好用的Temboo網站,可以讓我們跟Google Gmail、雲端試算表進行連線

20150425_155210

 

開始製作家電控制器囉,大家很認真地在剝延長線,通電的那瞬間大家都好緊張啊。

20150425_154527

我們的鄭經理也上台跟我們分享一些有關電路設計、3D列印設計的相關軟體套件

20150425_152509

 

今天也是圓滿的結束囉,謝謝大家~~~

20150425_163934

 

今天的講義都在這裡,招待不周~

1_ArduinoYun物聯網

2_ArduinoYun物聯網

3_ArduinoYun物聯網

 

 

 

[Raspberry Pi 2]樹莓派2效能測試,使用Chrome 瀏覽器與 openCV

RaspberryPi 2號稱CPU效能比過去快上六倍,快六倍究竟是什麼樣的感覺呢?這次使用Linux系統的Google Chrome與opecncv這兩個需要消耗較大CPU運算來做測試。剛拿到樹莓派2的朋友們,要讓過去系統可以相容於Pi 2請看這篇

這次使用top指令來觀察Pi2的系統執行能力,首先輸入:

$top

002

出現上圖的視窗,以灰色的一行作分類,上半部顯示的是Pi2的四核心運算率,分別是:CPU0、CPU1、CPU2、CPU3,如果沒有出現,按數字鍵[1]即可

下半部顯示的是正在執行的命令,如果出現的資料太多,按下鍵盤的[i]鍵就會切換顯示方式

  • USER:顯示執行命令的帳號
  • %CPU:顯示CPU的使用率
  • %MEN:顯示記憶體的使用率
  • COMMAND:執行的命令名稱

讓我們來看看在Pi B+執行 Google Chrome 的速度如何?

我們可以看到執行 Chrome需要使用CPU 高達 70%的運算,在整個系統上資源使用量是排第一名,右下角的圖形化CPU也是整片都滿滿的綠色,代表CPU全部的使用率達百分之百。Pi B+只有CPU0可以進行運算,系統跑起來會LAG,如果要執行其他程式需要等待約一到數分鐘才能打開。

接著來看看Pi2執行 Chrome 又是如何?

如圖所見,這個瀏覽器開了兩個分頁,但是CPU只使用了百分之30,而且在運算上會分擔給四個CPU,所以每個CPU執行的速度還是很快,由於我還開了其他的程式,例如截圖軟體,所以Chrome在使用整個系統的資源量是排第七第八名。

接著來看看Pi B+執行OPENCV佔的資源如何:

CPU使用率佔百分之七十,系統使用資源量排名第一,不用說整個CPU圖片為滿滿的綠色。

接著看Pi2執行opencv

CPU使用為 59%,我們看看右下角,CPU使用量顯示,綠色居然沒超過四分之一,小編實地測試,使用Pi2時,opencv只要畫素高,經過計算會照成圖片顯示DELAY,但是總CPU使用量不會超過四分之一,應該是Pi2作業系統(OS)的使用預設是不會讓單一程式佔走大部分的運算資源,在使用時,不會讓使用者感覺系統LAG,經過測試,Pi2在需要較高運算的程式上,的確比之前的Pi快上許多。

目前CAVEDU 已經開始供貨給玩家囉,Raspberry Pi2售價是台幣1500元,Raspberry Pi B+是900元,Raspberry Pi B 降價成500元!!歡迎到我們的FB粉絲頁商城訂購~~