謝作如 趙葉瀅
市場上的搶答器大多是由單片機以及外圍電路組成,需要進行編程才能實現(xiàn)對“搶答”的判斷(如圖1)。如果使用555之類的集成塊來實現(xiàn),涉及的電路將非常復(fù)雜,而使用Boson Kit中的邏輯模塊,不用編程就能做出一個兩人用的搶答器,而且邏輯清晰。
邏輯分析
為了便于區(qū)分二路的輸入,我們用藍色和紅色來表示。首先看一個邏輯示意圖(如圖2),該圖所示的是搶答器的運行原理。說起來并不復(fù)雜,只要有按鈕按下時,對應(yīng)的小燈亮起,同時要阻止另外的小燈變亮,哪怕其對應(yīng)的按鈕按下也無法變亮,就能區(qū)分出誰先按下按鈕了。
Boson Kit的核心板實際上就是一個電源板,只要輸入為真(按鈕按下),對應(yīng)的輸出也是真(小燈亮起)。如何讓小燈亮起的同時,阻止另一盞小燈亮起呢?其實只要認(rèn)真歸納,我們會發(fā)現(xiàn)小燈亮起需要同時滿足兩個條件:對應(yīng)的按鈕按下,且另一個按鈕沒有按下。Boson Kit中不是用“與(and)”和“非(not)”這兩個邏輯模塊嗎?用這兩個模塊將按鈕的狀態(tài)輸送到另一個按鈕即可。如下頁圖3所示,如果紅色按鈕按下,藍色按鈕即使按下,也無法輸出“真”的狀態(tài)了。
模塊搭建
弄清楚原理后,我們可以試著搭建了。既然是“搶答”,我們選擇了按鈕作為輸入模塊。為了方便辨認(rèn),LED小燈最好選擇和按鈕相同的顏色。我們需要的元件見下頁表。
我們把這些元件,按照下頁圖4的參考電路進行連接。
圖4的線路圖看起來十分復(fù)雜,我們可以將它分為上下對稱的兩部分,分別為藍色按鈕電路和紅色按鈕電路。先以藍燈點亮的情況為例,當(dāng)按下藍色按鈕時,藍色按鈕發(fā)出的信號A通過線路1(圖4中藍色箭頭)到達AND模塊,并輸入值為“真”(1)的信號。若此時紅色按鈕沒有按下,則紅色按鈕發(fā)出的值為“假”(0)的信號B沿線路2(圖4中紅色箭頭)到達分離模塊后,再通過線路2-1(圖4中綠色箭頭)經(jīng)過NOT模塊將信號B的值從“真”轉(zhuǎn)變?yōu)椤凹佟?,輸入到藍色按鈕連接的AND模塊中。此時,AND模塊上收到兩個值為“真”的信號,即兩個條件——“藍色按鈕按下”和“紅色按鈕沒有按下”都已成立,電源板接收到此信號后,輸出狀態(tài)1,將藍燈點亮。
如果在按下藍色按鈕時,紅色按鈕也已按下,那么紅色按鈕輸出的值為“真”的信號B經(jīng)過NOT模塊轉(zhuǎn)變?yōu)椤凹佟?,藍色按鈕對應(yīng)的AND模塊上會接收到值為“真”的信號A和值為“假”的信號B,即“藍色按鈕按下”和“紅色按鈕沒有按下”這兩個條件沒有同時成立,那么藍燈不會亮起。
反之亦然。藍色和紅色按鈕總是在點亮自己對應(yīng)的小燈同時,阻止對方的小燈點亮,這樣我們就完成了這個有趣的二路搶答器。
拓展研究
圖4的連接方式,是將所有邏輯模塊調(diào)置于主板輸入端,使電路看起來較為清爽,同時也有利于后期做外部包裝時的布線安排。倘若追求電路的趣味性和邏輯性,也可將分離模塊調(diào)整至主板輸出端,使NOT模塊可以跨越輸入輸出兩端,形成一個大循環(huán)(如圖5)。
考慮到現(xiàn)實中使用的搶答器除了亮燈以外,還需要用聲音進行提示,可在輸出端加裝蜂鳴器(如圖6),使用分離模塊可以使小燈與蜂鳴器同時啟動。
如果不想使用兩個蜂鳴器分別代表兩位選手,只想達到有人搶答成功就發(fā)出蜂鳴聲這一效果,可以使用or模塊來實現(xiàn),連接方式如圖7所示。
除了以上的拓展外,還可以加延時模塊,實現(xiàn)按鈕的“消抖”。因為按鈕按下的時候,可能會出現(xiàn)瞬間的抖動(接觸不緊密),導(dǎo)致不能很好地阻止另一盞小燈亮起。這時Boson Kit套件中的延時模塊就派上用場了。
外觀美化
連接好電路,搶答器的基本功能就實現(xiàn)了。再分別將按鈕和小燈安裝在一個紙盒上,做出搶答器的外觀。如果覺得按鈕的帽蓋面積過小,可以使用瓶蓋或PVC片進行加大,使它看上去更像一個搶答器。我們制作的搶答器比較簡陋,外觀如圖8所示。
做好這個二路搶答器后,相信大家都體會到Boson Kit套件的魅力了——不用編程,就能搭建出具備一定“智能”的電子作品。還是回到上一個欄目中提到的一句話:如果充分利用“與”“或”“非”這三個邏輯模塊,理論上可以做出非常復(fù)雜的作品。以搶答器為例,如果模塊足夠多,四路、八路的搶答器也都能搭出來。趕緊整理下自己的創(chuàng)意,用Boson Kit實現(xiàn)出來吧。
如果對相關(guān)內(nèi)容感興趣,請關(guān)注主持人博客。