MBC 掌控者 PS2/PS4 × MBC SPIKE 積木網站

三個步驟用 MBC 積木網站讀掌控者遙控接收器

在 MBC SPIKE 圖控編程網站 上,掌控者不用匯入函式庫:先在「開機時執行一次」裡告訴網站接收器接哪個埠,再放主迴圈,最後把讀值積木放進主迴圈。左邊一步一步做,右邊的積木會跟著長出來;這些積木圖是直接從網站拼好匯出的,跟你在網站上看到的一樣。

網站免費、免登入;主機要裝 Pybricks 韌體(網站「SPIKE 主機」選單可以幫你燒)。

1

設定:哪個埠接掌控者

程式的第一件事,是在黃色「開機時執行一次」下面接一塊「○ 埠 接 MBC PS2/PS4遙控」,網站才知道那個埠接的是遙控接收器。

接收器接在哪個埠?
  1. 打開 MBC SPIKE 圖控編程網站,按「+」開一個新程式。
  2. 左邊積木類別點「MBC 感應器」→「PS2/PS4遙控」,第一顆就是「○ 埠 接 MBC PS2/PS4遙控」。
  3. 把它接在「開機時執行一次」下面,下拉選單選 C。
2

放主迴圈

讀手把要一直重複讀,所以要有黃色的「主迴圈(一直重複)」。裡面先放一顆「等待 100 毫秒」,讓它每 0.1 秒讀一次,不會讀太快。

  1. 從「控制」拖出「主迴圈(一直重複)」,放在設定積木下面空白的地方(不用接在一起)。
  2. 再拖一顆「等待 100 毫秒」放進主迴圈。

網站產生的程式會自動放進多工架構(async),不用自己選,也不用寫 await。

3

使用讀值積木

「MBC 感應器 → PS2/PS4遙控」裡面還有 13 顆讀值積木(Pybricks 函式庫有的功能都有),每顆中間都有埠的下拉選單,要選跟第 1 步一樣的埠(C);要看哪一個鍵、哪一支搖桿,也是用下拉選單選。網站每次讀值都會拿最新的資料,不用像 Pybricks 那樣先 update。點一個功能,積木和輸出會換成它的範例。

模擬手把:點按鍵、拖動搖桿,看右邊的輸出怎麼變

模擬畫面是示意:點一下按鍵=按住,再點一下放開;拖動搖桿的圓點改變位置(放開滑鼠會停在那裡,按「全部放開」回到中間)。搖桿 1 ~ 9、5 = 中間,往右、往上數字變大。勾「拔掉感應器」可以看到數值停在上一次、程式不會停。PS4 手把的電量固定示意為 80。

每顆讀值積木的範例

13 顆讀值積木,每顆都有一組可以照著拼的範例(C 埠)。按「試試看」會切到第 3 步,右邊的積木和輸出會換成這個範例。

使用注意

  1. 設定積木只要一顆。同一個埠只能設定一次;讀值積木的埠要跟設定積木一樣,選錯埠網站會在下載前提醒。
  2. 不用下載函式庫,也不用 update。網站下載程式時會自動把讀手把的程式一起傳到主機;每顆讀值積木都會拿最新的資料(10 ms 內重複讀用同一份,一圈放好幾顆沒關係)。
  3. 跟 Pybricks 函式庫一樣:MBC_gamepad.py 有的功能這裡都有積木(connected =「手把有連上」、battery =「手把電量」、kind =「接收器種類」、buttons_psx/pressed_psx =「PSX 排列」那兩顆),讀到的值也一樣。拔線不會讓程式停,讀不到時回傳上一次的值、終端機印一行提醒,插回去自動恢復;用「感應器有接好」可以知道有沒有接好。用搖桿開車時拔線,車子會照最後的搖桿位置繼續開。
  4. 狀態類的積木偶爾讀一次就好。「手把有連上」「手把電量」是一組資料,「接收器種類」「感應器身分」「感應器韌體版本」又是一組,跟按鍵、搖桿不同組;每換一組,接收器要切換一次(多花幾十 ms)。「手把有連上」「手把電量」要接收器韌體 2026-10 以後的版本;「接收器種類」「感應器身分」「感應器韌體版本」放在「開機時執行一次」裡。
  5. 搖桿與按鍵:搖桿 1 ~ 9、5 = 中間,往右、往上數字變大;當開關時用 7 以上、3 以下,左右兩邊才會一樣靈敏。下拉選單的 SELECT = PS4 的 SHARE(PS5 的建立)、START = OPTIONS;PS 鍵和觸控板讀不到。