單機遊戲下載單機遊戲下載基地
最新遊戲| 熱門遊戲| 遊戲大全| 遊戲專題

星界邊境鎖存器和觸發器基礎實例教程

2016/9/11 12:40:38來源:飛翔整理編輯:飛翔小編瀏覽量:109標簽:星界邊境

您的位置:首頁攻略秘籍遊戲攻略→ 星界邊境鎖存器和觸發器基礎實例教程

【飛翔導讀】雖然Impervium控製台(Impervium consoles)好棒好棒的,不過有時候你會因為某些原因而想要用按鈕來開關某樣東西,但是按鈕發射的是一個脈衝信號,那我們怎麼用按鈕來製作一個開關裝置呢

對於完全不懂或者稍微懂一些數字電路的人來說,其實我的建議是:不需要去仰慕那些別人做出來的什麼什麼觸發器,什麼什麼譯碼器。你所需要的,不是在遊戲裏造出一個運算器,而是做出一些實用的東西來!

而實用的東西,其實用到的電路並不難,關鍵是創意和想法。
比如這篇教程是我在官方論壇上看到的一篇非常不錯的教程,作者由淺入深給大家展示鎖存器(Latch)的用處。教程的最後做出的一個實例是在聯機時可以使用的一個交易室,簡單而且實用。

我是學工科的,對於數字電路不能說有多在行,但是好歹也學過,也算略知一二,很多東西都忘了,這樣的教程對我來說是非常實用而且有啟發性的。所以決定給大家翻譯一下,意在告訴大家,不要被電路嚇著了,讓我們一起來做一些簡單實用但是有創意的東西!

PS:貼吧也是我發的~


[GUIDE] LATCHES AND FLIP-FLOPS (WITH USEFUL EXAMPLES!)

這篇教程主要是要教大家如何使用鎖存器(Latch),同時也可以讓大家在這個貼子裏展示你所製作的任何時序邏輯電路。而如果你要找基礎的電路教程,可以看這裏:

鎖存器(Latch)是什麼?鎖存器是一種非常簡單的存儲單元。一個鎖存器可以存儲一個二進製值(1或0)。
在Starbound裏麵使用的是一個D鎖存器,它有2個輸入端和1個輸出端。



D:D代表數據(Data)。你輸入的是什麼決定了輸出的就是什麼。
Enable:Enable決定了D端有沒有連接上輸出端。當Enable為開(1),輸出的值就等於輸入的值。當Enable為關(0),輸出的值就被固定在它之前的狀態了,此時D端不再起任何作用。

如果你願意,你可以把Enable想象為像開關一樣在控製D端和輸出端。嚴格來說這是不正確的,但也不失為一個不錯的比喻。

(譯者注:記住這個結論!這是基礎!!)


(圖注:1=閉合,即開狀態,0=打開,即關狀態;為防止混淆,以下翻譯全部稱1為開,0為關——譯者注)

對於那些想要了解技術原理的人,這是D鎖存器在邏輯電路中的實現。C代表控製(Control),也就是Enable。
還有兩個輸出端,考慮到Starbound隻有正輸出端Q,你並不需要去理解這張圖之後再去使用鎖存器。
(譯者注:【Q】和【Q非】輸出是互補關係,一個是1,另一個一定是0,所以隻需要一個輸出端就行)



我知道你一定在想:“這真是極好的!但是我到底該怎麼去用這玩意?”
好問題!鎖存器有很多的用處,這裏就有幾個基礎的例子。


鎖定陷阱 Locking Trap

鎖存器最簡單也是最常用的用途就是“鎖住”某樣東西,我用一個陷阱來當例子。

如果我走上一個壓力板,Enable端和D端同時被激活,同時陷阱也被激活。當我從壓力板上下來的時候,陷阱還是會繼續保持激活狀態——這是因為Enable端和D端同時被關掉了,輸出端被固定在激活狀態。(這就是鎖住了,譯者注)

重置(reset)按鈕用於關閉陷阱。按鈕被連接到Enable端,可以使輸出端的狀態變為關。

如果你用一個按鈕去代替壓力板,這就是一個偷懶的辦法來製造一個開關裝置,而不使用控製台。之後我們會看到,如何來製造一個一鍵切換開關。




振蕩器(2-clock[2周期])

這個電路使用一個非門反饋回路和一個開關(一個Impervium控製台)來創建一個振蕩器。(注意不是壓力板,這是個控製台console,如果你還不能造這個東西,完全可以其他控製台代替,比如猴子的電腦,而眾所周知,在SB中console其實就是一個開關,譯者注)
當開關打開的時候,輸入端將會在開與關之間快速閃爍。當開關關閉的時候,輸出端狀態就固定住了。你可以用這個來讓燈閃爍,製造一個偽隨機擲硬幣的裝置,等等…

你可以把奇數個非門串聯在一起,創建一個反饋延遲,來減緩震蕩頻率。
如果你想更多了解時鍾信號,可以看後麵關於時鍾說明。




D觸發器 D-Flip-flop

鎖存器屬於電平敏感,意思就是隻要當Enable端為打開狀態的時候,輸出就可以被改變。
而觸發器則是邊沿敏感,意思就是當時鍾信號改變的時候,輸出狀態改變(在時鍾輸入的上升沿和下降沿,取決於類型)。這對於製作狀態機、計數器和寄存器非常有用。
(譯者注:為了讓大家不被大片的專有名詞給嚇著了,我來解釋一下:數字電路中把低電平定義為0,高電平定義為1,從0到1的過程被稱為上升沿,反之被稱為下降沿。具體來說,一個按鈕從未激活到激活的過程,就叫上升沿,反之叫下降沿。

如下所示的觸發器就是一個下降沿觸發的D觸發器。當Clock端(時鍾信號)從開變為關的時候,輸出狀態將會改變。這大概是最簡單的觸發器了,隻需要兩個鎖存器和一個非門。注意clock端連接著兩個點。

下一個例子裏麵我們將會用到這個觸發器。

(譯者補充:作者在這個例子用的是開關,效果是,當且僅當clock端的開關由開狀態變為關狀態時,輸出端狀態才會改變,並且隻會變成和D端相同的狀態。
這裏有個衍生:如果你把開關換成2個壓力板,會發現結果變得直觀而且很有意思!當從右往左走經過2個壓力板的時候,輸出保持為開,然後再從從左往右返回的時候,輸出變為關。一個實用的應用就是,進門自動開門/燈,出門自動關門/燈。如果要改變順序的話,隻要簡單把兩個壓力板的連接反一下就行。




用按鈕操縱的開關 Pushbutton Toggle

雖然Impervium控製台(Impervium consoles)好棒好棒的,不過有時候你會因為某些原因而想要用按鈕來開關某樣東西,但是按鈕發射的是一個脈衝信號,那我們怎麼用按鈕來製作一個開關裝置呢?

有一個辦法就是使用我們剛才介紹過的觸發器,不同的是還要加入一個我們之前在振蕩器中用過的非門。
這樣就創建了一個狀態機,其輸出狀態與它之前的狀態相反:
Q[n] = NOT( Q[n-1] )

按鈕就是這個狀態機的時鍾信號,每按一下按鈕就會引入一個脈衝信號,用來更新狀態。

如果我們使用一個鎖存器,在有按鈕脈衝的時候,輸出狀態會改變好幾次。由於觸發器是邊沿敏感,隻有在每次脈衝的時候才會更新,所以我們需要的是一個觸發器,而不是一個鎖存器。




交易室 Trading Room

Eht和我用按鈕開關做了一個交易室。Starbound目前還沒有用於交易機製,所以我想,製作一個不依賴於信譽係統的交易方式會很有意思。下麵是它的工作原理:

1. 兩個玩家從各自的一邊進入房間,然後關上他們身後的門。門隻能從內側來控製。
2. 左邊的玩家在上麵,而右邊的玩家在下麵,兩個人都各自在兩扇門之間扔下一個物品。當另一個玩家也已經扔下他的物品的時候,你需要站到壓力板上,表示你已經做好準備來完成交易了。
3. 兩個玩家都需要站在各自的壓力板上,以便讓站在上方的玩家按一下那個按鈕,這會切換所有門的狀態(使用了2個切換狀態機)。這樣就可以防止你接觸到你所扔下的物品,同時讓你可以去撿起對方玩家扔下的物品。兩個玩家交換了位置,從另一個玩家的那扇門出去。

關於振蕩器(亦稱時鍾)的說明


你可以用不同於之前的鎖存器時鍾的方法來創建時鍾。

一個相當緩慢的時鍾就是定時器元件(遊戲自帶的Timer,譯者注),它大約每秒閃爍一次。你可以在輸入端輸入1來凍結它的狀態。

最快的振蕩器就是把非門首尾相連。我們可以叫它1-clock[單周期](從Minecraft術語那偷來的),因為每次閃爍之間隻有一個非門的延遲。

把奇數個非門串聯在一起,就可以創建3-clock[3周期]、5-clock[5周期],以此類推,很明顯這些會慢3倍和5倍。使用偶數個則會創建一個穩定的回路,這是沒用的。

Kudos to MeMyselfAnDie for how to control odd-numbered clocks. It hadn't occurred to me in the first version of this note.(恕我無能,這句實在不知道什麼意思……MeMyselfAnDie似乎是官方論壇上的某個人)



如果你想要偶數周期的時鍾,利用與門添加一個使能電路:



如果你想要一個非常非常緩慢而且可控的時鍾,最好的辦法就是用觸發器。把前麵的“按鈕開關”裏的按鈕換成計時器(timer),然後把輸出端連接到另一個按鈕開關的clock端,將可以慢兩倍,繼續連接直到最後變得足夠慢。做出來的這個裝置叫做二進製計數器,我已經在這個帖子裏貼出了一個4位二進製計數器。


(這張圖位於原帖12L)

這個方法遠比慢時鍾更高效,因為隨著門數量的增加,緩慢程度會呈幾何增長,而不是鏈式的線性變化。


  • 星界邊境MOD
星界邊境MOD
(14) 星界邊境MOD

《星界邊境》是少數借助Kickstater平台(一個捐助獨立遊戲製作者的網站)開發的遊戲,這是一款太空版《泰拉瑞亞》類型的遊戲。為什麼這樣說呢,因為遊戲中可愛的像素畫風;更因為有著Tiy -- 他是動作冒險類遊戲《泰拉瑞亞》的開發者之一,是製作這部遊戲的首腦。在《星界邊境》,你將扮演一個剛剛從自己的母星中逃離,便在另一個星球墜毀的角色。從此你就開始了自己的冒險生涯,在這個無限的宇宙中探索、發現,掙紮求存。

... 更多>>
  • 星界邊境鐵血戰士麵具mod

    01-02 / 11KB

    推薦理由:在《星界邊境》玩家可以安裝一些MOD來增加遊戲元素,下麵這個是鐵血戰士麵具mod,造型雖然有些粗糙,但是也
  • 星界邊境秒回滿血床MOD

    01-02 / 48KB

    推薦理由:在《星界邊境》中隨時保證滿血狀態是比較穩的一種打法,下麵給大家帶來的是秒回滿血床MOD,大家不妨試試。
  • 星界邊境全新透明物品欄MOD

    01-02 / 241KB

    推薦理由:全新的透明物品欄MOD,讓玩家玩起來顯得更方便一點,將物品格子半透明化,雖然沒有其他那些MOD看起來功能那
  • 星界邊境閃電彈武器MOD

    12-27 / 11KB

    推薦理由:在《星界邊境》中玩家可以自行增加一些武器,和一些小道具在遊戲當中。最近有大神做出了閃電彈武器MOD,大家
  • 星界邊境裝甲巨型飛船MOD

    12-27 / 64KB

    推薦理由:在《星界邊境》中飛船的使用將會影響整個遊戲的發展,下麵這個是裝甲巨型飛船MOD,大家不妨試試。使用說明
  • 星界邊境召喚飛碟座駕MOD

    12-27 / 16KB

    推薦理由:在《星界邊境》中玩家可以自由設計一些奇葩的道具在遊戲中進行,下麵這個是飛碟座駕MOD,大家快來試試把。

飛翔聲明:飛翔網登載此文出於傳遞更多信息之目的,並不意味著讚同其觀點或證實其描述。

評論:0 次

閱讀本文後您有什麼感想? 已有人給出評價!

  • 0喜歡
  • 0高興
  • 0鬼臉
  • 0嗬嗬
  • 0無聊
  • 0傷心

相關新聞

網友評論

熱門評論

最新評論

發表評論查看所有評論(0)

昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
(您的評論需要經過審核才能顯示)

星界邊境中文版

點擊進入立即下載

關於飛翔|聯係我們|大事記|下載幫助(?)|廣告聯係|版權聲明|網站地圖|友情鏈接

Copyright 2010-2013單機遊戲下載(R) 版權所有 飛翔下載所有遊戲及軟件下載資源來源互聯網,並由網友上傳分享。如有侵權,請來電來函告之。
飛翔忠告:抵製不良色情、反動、暴力遊戲 合理安排遊戲時間 享受健康生活【鄂ICP備13011873號-1】