09貪吃蛇(8X8LED)

(2016/10/10)

一、軟體及硬體:

二、Scratch2.0程式

  • 原始構想:設計一條蛇(一開始有二節(二顆LED燈),吃到一粒果實(一顆LED),會增加長度),但經我的程式測試後,發現反應速度很慢!!
  • 修改:設計一條蛇(只有三節(三顆LED燈)),可利用上、下、左、右鍵來控制蛇的移動方向!
  • 程式說明:
    • 建立四個清單
      • 第一個清單(X):是這三節蛇的X座標值 (X座標從1~8),如果蛇身更長就在此清單中增加資料
      • 第二個清單(Y):是這三節蛇的Y座標值 (Y座標從1~8),如果蛇身更長就在此清單中增加資料
      • 第三個清單(led-y):為每一欄中每一顆燈亮燈的10進位值,8顆燈分別是1、2、4、8、16、32、64、128
      • 第四個清單(led-x):分別為第一欄到第8欄的亮燈的16進位值!
    • 程式一開始,先將這四個清單清空,及填上預定值
    • 主程式部分:
      1. 蛇頭的X座標及Y座標如果小於1或大於9,代表走出畫面,就結束遊戲(下圖的item要用1)
      2. 取得8X8LED中,每一欄的10進位值(重複3次是有3節蛇身,如果增加蛇身,此處也要增加!)
      3. 取得8X8LED中,每一欄的16進位值,並在硬體上顯示出亮燈!(重複8次是LED燈有8欄)
      4. 移動蛇的位置(將第三段的蛇身座標移到第二段的蛇身位置,將第二段的蛇身座標移到第一段的蛇身位置,將第一段的蛇身座標依方向鍵來移動!
        1. 內有一段求16進位的副程式
    • 方向鍵的程式

三、結論

  • 最後,還是成功利用Transformer2.0來做出貪出蛇的移動,但移動的反應有點遲鈍,因此不想再做更複雜的功能(吃果實來增長蛇身),希望有人能提出更順暢的程式!!