[樂游網導讀]計數器(Counter)的作用是每次輸入信號就+1,舉個例子就是按一下按鈕,輸出1,再按一下,輸出2,再按一下,輸出3,以此類推。
計數器(Counter)的作用是每次輸入信號就+1,舉個例子就是按一下按鈕,輸出1,再按一下,輸出2,再按一下,輸出3,以此類推。不過不可能計數出來的直接是十進制數,而是二進制數,至于如何把二進制數轉成十進制數,就去網上搜譯碼器教程。
計數器由T觸發器串聯而成,T觸發器不用解釋了吧,通俗來說就是按一下按鈕燈亮了,再按一下燈才滅
在MC中,我們可以依靠粘性活塞的接收到短信號將方塊推出而不收回特性來做T觸發器(詳見wiki)
首先做一個0.5刻信號發生器,用1.5+版本的同志們請務必把這個東西對準太陽軌跡(即東南方向)

然后我們加上一個向上的活塞+方塊,這就是一個T觸發器,可以試試看這個時候輸入一個信號會讓這個活塞把方塊推出而拉不回

然后我們把這樣的活塞+方塊多做幾個,中間用紅石和中繼器交替拼接,這就是T觸發器的串聯效果了,為了防止搞混各個活塞的作用,我把用來制造0.5刻信號的活塞上的方塊換成了紅石燈,其余的都是用來計數的
為什么要這樣放,而不是全放中繼器,因為這樣延遲最小,而且這正好符合充能理論(詳見wiki)

現在我們點一下按鈕,放出0.5刻信號,所有活塞把方塊推到上面去,這是因為活塞在收到短信號的時候會推出方塊但也會使這個0.5刻信號傳到下一個活塞那里,導致了這種現象,相當于每個活塞都是一個完整的T觸發器,可以避免做一大堆的0.5刻信號發生器
我們把推出的方塊當做0,收回的方塊當做1,現在如下圖所示就是數0000

我們再點一下,只有第一個活塞會收回,0000變成了0001

然后我們再按一下,0001變成了0010

再按一下變成0011

再按一下變成0100

但是光是幾個方塊不能當做紅石信號,所以我們現在把它轉換成紅石信號
首先在方塊上放一個沙子,因為沙子可以受到重力影響,當下方的方塊被拉回去時,沙子也會掉下去
然后我們在沙子左邊做這樣一個永久開啟的信號,并且對沙子強充能

至于為什么一定要對沙子充能,是因為如果直接對鐵塊充能會導致方塊更新感應(詳見wiki),活塞會無法收回
因為我們將被推出的方塊作為0,收回的方塊作為1,而現在我們對沙子進行充能,那就會導致0變成1,1變成0,所以我們在右邊放上一個方塊+紅石,并且用紅石火把把原來的答案修正,方塊收回還是1,方塊推出還是0

我們給每個活T觸發器塞都加上這個“方塊-紅石信號轉換器”

按一下按鈕,紅石輸出0001(即1)

再按一下,輸出0010(即2)

再按一下,輸出0011(即3),以此類推

4位的計數器(就是四個輸出的計數器)最大能計數到1111(即15),當計數到這個數時再按一次按鈕會歸零

如果我們要倒計數(即5,4,3,2,1,0),我們只要把輸出地方的紅石火把去掉就可以了

按一下1111(即15)變成1110(即14)

再按一下變1101(即13)

再按一下變成1100(即12)

喜歡
頂
無聊
圍觀
囧
難過
熱門評論
最新評論