逢甲大學



Similar documents
前言

untitled

untitled

KT-SOPCx开发套件简明教程

天主教永年高級中學綜合高中課程手冊目錄

附件1:

Microsoft Word - 32

Microsoft Word - 中三選科指南 2014 subject

图 片 展 示 : 资 源 简 介 : FPGA Altera CycloneII EP2C5T144C8 (4608 个 LE) 2 路 有 源 晶 振 (50M,25M) AS & JTAG 标 准 接 口 VGA 接 口 UART 接 口 蜂 鸣 器 8bit 并 行 DAC 8 路 按 键

untitled

Microsoft Word - 00封面

! # % % & # # % #!& % &# % &# % % % # %& ( (!& (! & & % % #!! ) %&! *& % %! % %!! # % %!! %*!& % &# % &# ) ) ( % # # ) % ( (!& (! (!! # % % #!! # ( &!

## $%& %& ## () #) (( * (+++ () #) #) (+ (+ #) #) ( #, - #)). #))- # ( / / / / $ # ( * *..# 4 #$ 3 ( 5 ) ### 4 $ # 5, $ ## # 4 $# 5 ( %

声 明 本 公 司 全 体 董 事 监 事 高 级 管 理 人 员 承 诺 股 票 发 行 方 案 不 存 在 虚 假 记 载 误 导 性 陈 述 或 重 大 遗 漏, 并 对 其 真 实 性 准 确 性 和 完 整 性 承 担 个 别 和 连 带 的 法 律 责 任 根 据 证 券 法 的 规 定

7 FPGA 99 VGA FPGA Nios II Nios II Fig 1 Block diagram of video tracking system CMOS FPGA 1 FPGA SOPC Nios II CMOS RGB SDRAM Avalon Nios

穨_2_.PDF

14A 0.1%5% 14A 14A

(Chi)_.indb

Ch03_嵌入式作業系統建置_01

(i) (ii) (i) (ii) O2O 1 86

SPHE8202R Design Guide Important Notice SUNPLUS TECHNOLOGY CO. reserves the right to change this documentation without prior notice. Information provi

最新监狱管理执法全书(二百零五)


中 国 中 西 医 结 合 杂 志 年 月 第 卷 第 期!" 通 透 性 增 加 产 生 蛋 白 水 解 酶 促 进 血 管 内 皮 细 胞 有 丝 分 裂 内 皮 细 胞 从 基 底 膜 上 迁 移 到 血 管 周 围 间 隙 粘 附 聚 集 重 构 为 三 维 管 腔 并 与 周 围 血 管

Labour Department Annual Report

# # # # # # # # # % # & # & # # # () # (( # * * (( # (+ # ( (# # (# # (# # ( # ( +) (

前 言 随 着 中 国 高 等 教 育 数 量 扩 张 目 标 的 逐 步 实 现, 提 高 教 育 质 量 的 重 要 性 日 益 凸 显 发 布 高 校 毕 业 生 就 业 质 量 年 度 报 告, 是 高 等 学 校 建 立 健 全 就 业 状 况 反 馈 机 制 引 导 高 校 优 化 招

, 2., 3., , 3.,,

公司预计2010年日常关联交易的议案

第 2 頁 (a) 擔 任 機 場 擴 建 統 籌 辦 總 監 的 首 席 政 府 工 程 師 職 位 第 3 點 ) ; (b) 擔 任 ( 機 場 擴 建 統 籌 辦 ) 的 首 長 級 丙 級 政 務 官 職 位 ; 以 及 (c) 擔 任 總 助 理 ( 機 場 擴 建 統 籌 辦 ) 的

cgn

(i) (ii) 97/99/M

39898.indb

论 文 :?,,,,,,,,,, (, ),, ( ),,,,,,,, (, ) : (, ),,, :,, ;,,,,

穨ecr2_c.PDF

電腦相關罪行跨部門工作小組-報告書

i

发展党员工作手册

i

(As at 28

婴幼儿护理(四).doc

中医疗法(上).doc

香 港 舞 蹈 總 會    北 京 舞 蹈 學 院

Microsoft Word - EDB Panel Paper 2016 (Chi)_finalr

小儿疾病防治(四).doc

Microsoft Word - 00教学管理手册 mo.doc

Microsoft Word - 正文.doc


,,, PCB, AR M VxWorks DSP,,,,,,,,,,, (CIP) /,,.:,2005 ISBN TP36 CIP (2005) : ( 10 ) : : (010 ) : (010)

說 明 會 內 容 全 民 健 保 暨 施 行 細 則 修 正 之 承 保 重 點 與 案 例 說 明 二 代 健 保 實 施 後 就 醫 權 益 更 有 保 障 補 充 保 險 費 知 識 自 我 檢 測 及 討 論 附 錄 全 民 健 康 保 險 保 險 費 負 擔 金 額 表 ( 四 )- 職

二零零六年一月二十三日會議

厨房小知识(四)

妇女更年期保健.doc

小儿传染病防治(上)

<4D F736F F D B875B9B5A448ADFBBADEB27AA740B77EA4E2A5555FA95EAED6A641ADD75F2E646F63>

女性青春期保健(下).doc

避孕知识(下).doc

孕妇饮食调养(下).doc

禽畜饲料配制技术(一).doc

中老年保健必读(十一).doc

i

怎样使孩子更加聪明健康(七).doc

i

马太亨利完整圣经注释—雅歌

<4D F736F F D20C7B6C8EBCABDCFB5CDB3C9E8BCC6CAA6BFBCCAD4B4F3B8D92E646F63>


<4D F736F F D20C7B6C8EBCABDCAB5D1E9CAD2B7BDB0B82E646F63>

審 核 二 O 一 一 至 一 二 年 度 開 支 預 算

Microsoft Word - Paper on PA (Chi)_ docx

幻灯片 1

509 (ii) (iii) (iv) (v) 200, , , , C 57

nb.PDF

4 中 南 大 学 学 报 医 学 版 摘 要 目 的 探 讨 早 发 性 精 神 分 裂 症 患 者 在 静 息 状 态 下 是 否 存 在 脑 功 能 连 接 异 常 以 及 异 常 区 域 的 定 位 方 法 采 用 第 版 美 国 精 神 障 碍 诊 断 与 统 计 手 册 ( * ) (

捕捉儿童敏感期

(Microsoft Word - 5\276\302\270g\260\252\256v .doc)

河南莲花味精股份有限公司

关于收购晋城兰花大宁煤炭有限公司持有的

尿路感染防治.doc

Microsoft Word - MP2018_Report_Chi _12Apr2012_.doc

南華大學數位論文

李天命的思考藝術

皮肤病防治.doc

性病防治

中国南北特色风味名菜 _一)

全唐诗24

Arduino 1-1 Arduino 1-2 Arduino 1-3 Arduino IDE

心理障碍防治(下).doc

<4D F736F F D20312EA1B6BDCCCAA6D7CAB8F1CCF5C0FDA1B72E646F63>

Microsoft Word - 长安大学.doc


目 錄 壹 緒 論... 2 貳 明 時 代 背 景 一 明 代 禮 教 之 於 女 性? 母 德 婦 德... 2 二 明 代 婦 女 之 於 士 人? 經 濟 支 柱... 4 參 歸 有 光 一 仕 途... 7 二 家 庭... 7 肆 歸 有 光 文 學 裡 的 女 性 比 較 一 < 項

Practical Guide For Employment Of Foreign Domestic Helpers

家庭用药指南(九).doc

学 校 概 况 南 方 医 科 大 学 前 身 为 中 国 人 民 解 放 军 第 一 军 医 大 学, 创 建 于 1951 年,1979 年 被 确 定 为 全 国 重 点 大 学,2004 年 8 月 整 体 移 交 广 东 省, 更 名 为 南 方 医 科 大 学 学 校 是 全 国 首 批

第五条 非公开发行股票预案应当包括以下内容:

52C

课外创新研学项目 构想、设计与实现

gtja

榫 卯 是 什 麼? 何 時 開 始 應 用 於 建 築 中? 38 中 國 傳 統 建 築 的 屋 頂 有 哪 幾 種 形 式? 40 大 內 高 手 的 大 內 指 什 麼? 42 街 坊 四 鄰 的 坊 和 街 分 別 指 什 麼? 44 北 京 四 合 院 的 典 型 格 局 是 怎 樣 的

第一部分

Transcription:

逢 甲 大 學 資 訊 工 程 學 系 專 題 研 究 報 告 Altera DE2-70 搭 配 LTM 實 作 遊 戲 - 小 蜜 蜂 指 導 教 授 : 陳 德 生 學 生 : 林 桂 廷 ( 資 訊 四 丙 ) 張 育 祥 ( 資 訊 四 丙 ) 中 華 民 國 壹 百 年 十 一 月

摘 要 本 專 題 是 利 用 Altera DE2-70 開 發 板 和 TRDB_LTM 觸 控 面 板 來 做 實 作 小 蜜 蜂 小 遊 戲 的 硬 體 設 備, 藉 由 這 個 專 題 來 加 以 了 解 Altera DE2-70 板 子 和 LTM 觸 控 面 板 是 如 何 來 搭 配 運 作, 在 硬 體 方 面 外, 我 們 也 有 用 軟 體 的 部 分, 如 :NIOS II 和 Quartus II 的 應 用 來 做 這 次 的 專 題 小 蜜 蜂 遊 戲 這 次 所 使 用 到 的 工 具 : 硬 體 有 Altera DE2-70 開 發 板 TRDB_LTM 觸 控 面 板 ; 軟 體 有 NIOS II 和 Quartus II, 藉 由 所 用 的 硬 體 和 軟 體 之 間 的 溝 通 來 做 小 蜜 蜂 小 遊 戲 所 需 要 的 功 能 以 及 效 果 I

目 錄 圖 目 錄...V 表 目 錄...VII 第 一 章 導 論...P1 1.1 研 究 動 機 與 目 的...P1 1.2 研 究 過 程...P1 1.3 專 題 甘 特 圖...P2 第 二 章 開 發 環 境 簡 介...P3 2.1 硬 體 介 紹...P3 2.1.1 主 要 硬 體 介 紹...P3 2.2 週 邊 硬 體 介 紹...P5 2.3 軟 體 介 紹...P7 2.3.1Quartus II 9.0...P7 2.3.2NIOS II 9.0...P9 第 三 章 程 式 的 寫 作 說 明...P10 3.1 宣 告 變 數...P10 3.2 物 體 的 顯 示...P11 3.3 物 體 的 移 動...P13 3.4 目 標 物 的 移 動 路 徑...P15 3.5 砲 彈...P15 II

3.5.1 發 射 子 彈...P16 3.5.2 子 彈 數 量...P17 3.6 目 標 物 和 子 彈 的 碰 撞 & 碰 撞 的 效 果...P18 3.7 關 卡 的 設 定...P18 3.8 勝 負 的 判 定...P21 3.9 遊 戲 的 功 能 鍵...P21 第 四 章 螢 幕 的 座 標 與 產 生 顏 色 之 相 關 技 術 應 用...P22 4.1 螢 幕 座 標 規 畫...P22 4.1.1 觸 碰 螢 幕 座 標...P22 4.1.2 一 般 計 算 輸 出 顏 色 座 標...P23 第 五 章 系 統 架 構...P27 5.1 系 統 架 構...P27 5.1.1SOPC - 雙 CPU...P27 5.1.2SOPC - music...p28 5.1.3SOPC - SEG7 LED LCD...P29 5.1.4SOPC- SD 卡...P29 5.1.5SOPC- PLL...P30 5.1.6SOPC - system id...p31 5.1.6 遊 戲 流 程 圖...P32 5.1.7 遊 戲 流 程 圖 說 明...P33 5.2 遊 戲 畫 面 設 計 方 法 與 架 構...P33 III

5.2.1 小 蜜 蜂 遊 戲 應 用 在 LTM...P33 5.2.2 訊 號 控 制 器...P34 第 六 章 第 七 章 第 八 章 實 作 成 果...P35 遭 遇 問 題 與 解 決...P40 結 論 與 心 得...P43 參 考 資 料...P45 IV

圖 目 錄 圖 1.1 圖 2.1 圖 2.2 圖 2.3 圖 2.4 圖 2.5 圖 3.1 圖 3.3 圖 3.4 圖 3.5 圖 3.6 圖 3.7 圖 3.8 圖 3.9 圖 3.10 圖 4.1 圖 4.3 圖 4.4 圖 4.5 專 題 甘 特 圖...P2 DE2-70 開 發 板...P3 4.3 英 吋 數 位 LTM 觸 碰 面 板 套 件...P5 LTM 架 構 圖...P6 Quartus II 的 程 式 執 行 環 境...P8 NIOS II 的 程 式 執 行 環 境...P9 目 標 物 的 組 成...P12 砲 台 的 組 成 ( 因 為 砲 頭 是 白 色 會 看 不 出 來, 所 以 用 黃 色 代 替 )...P13 物 體 的 移 動...P14 目 標 物 移 動 路 線...P15 發 射 子 彈 的 觸 控 區 & 彈 藥 存 量 光 棒...P17 碰 撞 後 的 爆 炸 效 果...P18 關 卡 的 顯 示...P20 各 種 目 標 物 生 命 值 不 同 的 型 態...P20 deadline...p21 The x and y coordinates of the corners on the LTM touch screen.p22 LCD horizontal timing specification...p23 LCD horizontal timing parameters...p24 LCD vertical timing specification...p25 V

圖 4.6 圖 4.7 圖 5.1 圖 5.2 圖 5.3 圖 5.4 圖 5.5 圖 5.6 圖 5.6 圖 5.7 圖 5.8 圖 5.9 圖 5.10 圖 6.1 圖 6.2 圖 6.3 圖 6.4 圖 6.5 圖 6.6 圖 6.7 圖 6.8 LCD vertical timing parameters...p26 Altera 輸 出 顏 色 範 例...P27 小 蜜 蜂 遊 戲 硬 體 架 構 圖...P28 SOPC - onchip share memory & mutex...p29 SOPC - i2c_sclk & i2c_sdat & AUDIO...P29 SOPC - lcd pio_green_led pio_red_led SEG7...P30 SDcard Driver Implementation...P30 SDcard interface...p31 SOPC - PLL...P31 SOPC - sysid...p32 小 蜜 蜂 遊 戲 流 程 圖...P33 將 小 蜜 蜂 遊 戲 應 用 在 LTM 上 之 架 構...P35 訊 號 控 制 器...P36 選 擇 關 卡...P37 目 標 物 移 動...P37 用 觸 控 按 鈕 讓 砲 台 移 動...P38 發 射 子 彈...P38 擊 中 目 標 物 & 計 分 板 加 分...P39 可 按 暫 停 的 觸 控 按 鈕 或 是 重 新 的 觸 控 按 鈕...P39 WIN...P40 GAME OVER...P41 VI

表 目 錄 表 2.1 表 3.1 DE2-70 開 發 板 設 備 說 明 表...P4 變 數 宣 告...P11 VII

第 一 章 導 論 1.1 研 究 動 機 與 目 的 資 訊 工 程, 一 進 大 學 就 覺 得 這 科 系, 應 該 主 要 是 要 玩 電 腦 的 而 開 始 上 課 之 後 發 現 原 來 並 不 是 這 樣 的, 要 學 電 腦 的 語 言 硬 體, 而 當 要 開 始 選 專 題 老 師 時, 我 和 組 員 並 不 是 很 確 定 要 選 哪 方 面 的, 而 在 看 過 歷 年 來 許 多 老 師 所 教 的 專 題 學 生 之 後, 認 為 小 遊 戲 是 我 和 我 組 員 最 有 興 趣 的 方 面 題 目 方 面 的 選 擇 卻 是 比 較 難 的 地 方, 因 為 有 很 多 小 遊 戲 是 我 和 我 組 員 都 很 喜 歡 玩 的, 選 擇 小 蜜 蜂 的 原 因 是 之 前 的 學 長 很 少 作 這 個 遊 戲, 所 以 我 和 我 組 員 打 算 趁 這 次 要 使 用 觸 控 面 板 作 專 題 的 機 會 來 寫 小 蜜 蜂 這 個 小 遊 戲, 也 希 望 可 以 將 這 款 遊 戲 變 得 比 較 有 趣 一 些 1.2 研 究 過 程 有 修 過 VHDL 的 課 程, 所 以 對 UP1 有 一 定 的 認 識, 不 過 我 們 是 要 用 DE2-70 這 塊 板 子, 所 以 我 們 先 在 暑 假 利 用 UP1 來 熟 悉 VHDL, 然 後 再 來 接 觸 DE2 這 塊 板 子, 再 藉 由 和 老 師 經 常 的 meeting 還 有 學 長 所 提 供 的 一 些 練 習, 終 於 對 DE2 有 初 步 的 了 解, 而 且 在 陳 德 生 老 師 的 建 議 之 下, 去 修 了 有 關 DE2 的 相 關 課 程, 藉 由 那 課 程, 然 後 再 一 步 步 地 更 加 了 解 DE2, 並 且 開 始 一 步 步 的 寫 小 蜜 蜂 的 程 式 碼, 經 由 課 程 的 加 持 和 老 師 的 meeting 之 後, 終 於 把 遊 戲 的 大 概 做 了 出 來 也 可 以 跟 其 他 組 別 一 起 討 論 所 遇 到 的 問 題, 然 後 交 換 彼 此 的 所 遇 到 的 困 難, 常 常 能 互 相 幫 助, 也 可 以 互 相 解 決 對 方 的 問 題 1

1.3 專 題 甘 特 圖 2010 7-9 月 2010 9-12 月 2011 2-6 月 2011 6-9 月 2011 9-11 月 熟 悉 硬 體 資 料 收 集 系 統 分 析 修 晶 片 系 統 設 計 導 論 課 程 程 式 設 計 程 式 除 錯 畫 面 設 計 文 件 報 告 圖 1.1 專 題 甘 特 圖 2

2.1 硬 體 介 紹 2.1.1 主 要 硬 體 介 紹 第 二 章 開 發 環 境 簡 介 圖 2.1 DE2-70 開 發 板 Altera DE2-70 多 媒 體 開 發 板 配 備 了 數 量 高 達 70,000 個 邏 輯 單 元 的 Altera Cyclone II 2C70 和 更 大 容 量 的 記 憶 體 元 件, 並 完 全 承 襲 了 Altera DE2 多 媒 體 平 台 豐 富 的 多 媒 體 儲 存 及 網 路 等 應 用 介 面 的 優 點 此 開 發 平 台 提 供 多 樣 的 產 品 功 能, 不 僅 適 用 於 大 專 院 校 實 驗 室 的 教 學 研 究 與 專 題 製 作, 也 適 合 工 業 界 做 為 開 發 複 雜 數 位 系 統 的 工 具,Altera 更 為 此 最 新 多 媒 體 開 發 平 台 提 供 現 成 的 實 驗 課 教 材 和 各 種 說 明 範 例 Altera DE2-70 最 新 多 媒 體 開 發 平 台 提 供 使 用 者 豐 富 的 產 品 功 能, 在 廣 泛 的 電 路 設 計 運 用 上, 從 簡 易 的 電 路 設 計, 到 多 樣 化 的 多 媒 體 專 案, 使 用 者 都 能 輕 易 完 成 3

表 2.1 為 參 考 友 晶 的 公 司 所 開 發 的 Altera DE2-70 板 子 的 元 件 名 稱 說 明 1.FPGA Cyclone II 2C70 70,000 LEs ( 邏 輯 單 元 ) FPGA 2. 記 憶 體 SDRAM 2 個 32 Mbyte SDRAM SRAM 1 個 2 Mbyte SRAM Flash memory 8-Mbyte Flash 記 憶 體 SD card socket 支 援 SPI 以 及 SD 1-bit 兩 種 SD Card 讀 取 模 式 3. 介 面 內 建 USB Blaster 電 路 內 建 USB Blaster 使 用 於 FPAG 程 式 下 載 或 控 制 Altera 序 列 配 置 器 Altera EPCS16 序 列 EEPROM 按 鈕 與 滑 動 開 關 4 個 按 鈕 滑 動 開 關 18 個 滑 動 開 關 人 機 介 面 9 個 綠 色 LEDs 18 個 紅 色 LEDs 8 個 七 段 顯 示 器 16* 2 LCD 模 組 傳 輸 介 面 10/100MHz 乙 太 網 路 控 制 器 和 接 頭 IrDA 收 發 模 組 1 個 SMA 接 頭 USB 介 面 USB 主 / 從 控 制 器 Type A 和 Type B 的 接 頭 Clock 輸 入 50MHz 振 盪 器 28.63MHz 振 盪 器 TV 輸 入 2 個 TV 訊 號 解 碼 器 2 個 TV 輸 入 訊 號 連 接 頭 VGA 輸 出 3 個 10-bit 高 速 DAC ( 數 位 類 比 轉 換 ) Audio 輸 入 與 輸 出 24 bit CD 品 質 的 輸 入 輸 出 與 麥 克 風 輸 入 接 頭 序 列 接 頭 一 組 RS-232 訊 號 接 頭 一 組 PS/2 訊 號 接 頭 兩 組 40 個 接 腳 擴 充 槽 72 個 I/O 接 腳 以 及 8 個 電 源 與 接 地 接 腳 表 2.1 DE2-70 開 發 板 設 備 說 明 表 4

2.2 週 邊 硬 體 介 紹 Altera DE2 板 子 除 了 有 強 大 的 功 能 外, 還 可 以 外 接 TRDB-LCM-3.6 3.6 英 吋 數 位 LCD 面 板 套 件 在 這 裡 我 們 專 題 裡 的 遊 戲 就 會 使 用 此 套 件 1.LTM 是 (Lcd Touch Panel Module) 的 縮 寫 2. A 40-pin IDE 匯 流 排 圖 2.2 4.3 英 吋 數 位 LTM 觸 碰 面 板 套 件 圖 2.3 是 LTM 的 架 構 圖 ( 參 考 文 獻 5. ALTERA 文 件 說 明 ), 它 包 含 了 三 個 主 要 的 架 構,LCD 控 制 面 板 的 模 組 AD 整 流 器 40-pin 的 插 座 LTM 所 有 的 介 面 皆 是 經 由 40-pin 的 插 座 連 接 到 Altera DE2-70 發 展 板, 當 有 信 號 輸 入 時, 會 直 接 經 由 FPGA 傳 信 號 給 LCD 觸 控 面 板 的 模 組 並 顯 示 圖 片 在 LCD 觸 控 面 板 上 最 後 觸 碰 點 經 由 AD 整 流 器 對 應 的 資 料 轉 換 配 置 後, 會 顯 示 在 LTM 面 板 5

圖 2.3 LTM 架 構 圖 在 LTM 上 的 LCD 與 觸 碰 模 組 配 備 包 含 LCD 的 驅 動 晶 片 以 便 支 援 展 示 的 成 果 跟 一 系 列 的 模 組 介 面 時 間 控 制 電 路 6

2.3 軟 體 介 紹 2.3.1 Quartus II 9.0 Quartus II 軟 體 是 Altera 公 司 所 開 發 的 之 FPGA(Field Programmable Gate Array) 或 是 CPLD(Complex Programmable Logic Device ) 的 電 腦 輔 助 設 計 工 具, 其 主 要 是 針 對 數 百 萬 閘 PLD 以 內 的 系 統 整 合 所 設 計, 在 功 能 上 也 整 合 了 NativeLink Synopsys Viewlogic. 等 功 能 以 縮 短 設 計 編 譯 時 間, 另 外 也 提 供 內 嵌 式 邏 輯 分 析 儀 (Signal Tap) 內 嵌 式 邏 輯 探 針 (Signal-Probe) 邏 輯 區 塊 (LogicLock) 等 功 能 以 縮 短 驗 證 時 間 ( 參 考 文 獻 4. FPGA/CPLD 數 位 電 路 設 計 - Quartus) 由 於 Quartus II 有 上 述 的 的 優 點, 所 以 IC 設 計 者 可 以 使 用 Quartus II 軟 體, 將 所 撰 寫 之 可 供 合 成 (synthesis) 的 硬 體 描 述 語 言 (Hardware Description Language,HDL), 例 如 AHDL(Altera HDL) VHDL(Very High Speed Integrated Circuit HDL) Verilog HDL, 轉 換 成 閘 層 級 的 網 路 (gate-level-netlist) 電 路 檔, 並 以 網 路 電 路 檔 進 行 模 擬 分 析 再 經 由 Quartus II 軟 體 所 提 估 徵 配 置 與 燒 線 工 具 (Place & Routetools), 將 模 擬 正 確 的 閘 層 級 的 網 路 電 路 檔 轉 換 成 實 際 的 Altera 晶 片 的 內 部 格 式 當 實 際 對 應 到 晶 片 上 的 查 表 (Lookup Table) 架 構, 同 時 也 燒 入 完 成 Quartus 軟 體 具 有 廣 泛 的 性 能 和 資 源 最 佳 化 驗 証 和 易 用 的 特 色, 能 夠 為 Altera FPGA CPLD 和 結 構 化 ASIC 元 件 的 設 計 者 縮 短 開 發 周 期 7

Quartus II 軟 體 7.2 版 本 新 的 即 時 I/O 檢 查 功 能 可 加 入 即 時 引 出 驗 證 功 能, 可 快 速 對 接 腳 佈 局 和 分 配 進 行 驗 證 並 改 進 SOPC Builder 中 的 Avalon 串 流 支 援, 新 的 適 配 器 自 動 插 入 功 能 可 簡 單 完 成 Avalon 串 流 設 計 修 復 元 件 編 輯 器 提 供 更 快 的 GUI, 以 加 入 訂 製 元 件, 支 援 Avalon 串 流 ( 參 考 文 獻 2. 系 統 晶 片 設 計 - 使 用 Quartus II) 圖 2.4 Quartus II 的 程 式 執 行 環 境 8

2.3.2 NIOS II 9.0 NIOS II 提 供 32 位 元 單 精 確 度 IEEE 754 相 容 浮 點 運 算 的 支 援 C 語 言 至 硬 體 加 速 (C2H) 編 譯 器 圖 2.5 NIOS II 的 程 式 執 行 環 境 9

第 三 章 程 式 的 寫 作 說 明 3.1 宣 告 變 數 變 數 形 態 變 數 名 稱 變 數 解 釋 unsigned int dis_buf[width*height]; 觸 控 面 板 每 個 點 的 顏 色 顯 示 unsigned int unsigned int Xp Yp int target[8][4] [ 目 標 數 ][ 生 命 ( 是 否 發 射 ). 水 平 位 置. 水 平 速 度. 垂 直 位 置 ] int score 分 數 int game 遊 戲 是 否 進 行 int random 目 標 增 強 次 數 int losegame 遊 戲 是 否 失 敗 int speed 目 標 物 移 動 速 度 int speed_boom 子 彈 移 動 速 度 int boom_max 子 彈 上 限 int tempstay 彈 藥 條 int boom_count 發 彈 量 計 數 int boomx[ 1000 ] 彈 藥 x 的 值 10

int boomy[ 1000 ] 彈 藥 y 的 值 int box_speed 砲 台 移 動 速 度 int temp_x 讀 取 觸 控 x 的 值 int temp_y 讀 取 觸 控 y 的 值 int temp_xold 舊 的 觸 控 x 的 值 int temp_yold 舊 的 觸 控 y 的 值 int temp_box 預 設 的 砲 台 位 置 表 3.1 變 數 宣 告 3.2 物 體 的 顯 示 變 數 的 說 明 : xlength 為 在 X 軸 要 顯 示 多 長 ;ylength 為 在 Y 軸 要 顯 示 多 長 ;color 為 所 顯 示 的 顏 色 的 值 程 式 碼 : void block( int x, int y, int xlength, int ylength, unsigned int color, unsigned int *dis_buf ) { int i,j; for( i = y ; i < ( y + ylength ) ; i++ ){ for( j = x ; j < ( x + xlength ) ; j++ ) *( dis_buf + i * WIDTH + j ) = color ; 11

} } 程 式 碼 說 明 : x y 為 物 體 顯 示 的 起 始 點 ; xlength ylength 為 要 多 長 多 寬 ; color 的 值 為 0x00000000 ~ 0xffffffff 圖 3.1 目 標 物 的 組 成 block( x, y, 20, 20, 0x0000ff00, dis_buf ); 顏 色 的 顯 示 :0x0000ff00 ( 此 為 紅 色 ) 12

圖 3.3 砲 台 的 組 成 ( 因 為 砲 頭 是 白 色 會 看 不 出 來, 所 以 用 黃 色 代 替 ) 砲 身 :block(x, y, 40, 40, 0x000000ff, dis_buf); 砲 頭 :block(x, y, 20, 20, 0xffffffff, dis_buf); 0x000000ff 為 綠 色 ;0xffffffff 為 白 色 3.3 物 體 的 移 動 此 遊 戲 是 用 while 迴 圈 來 跑, 所 以 在 迴 圈 的 一 開 始, 就 將 畫 面 全 部 刷 黑, 在 將 物 體 的 顯 示, 重 新 印 出 來 最 新 的 顯 示 位 置 13

for( i=0; i<height; i++ ){ for( j=0; j<width; j++ ){ *( dis_buf + i*width + j ) = 0x00000000; } } // 螢 幕 全 部 刷 黑 示 意 圖 : 圖 3.4 物 體 的 移 動 14

3.4 目 標 物 的 移 動 路 徑 圖 3.5 目 標 物 移 動 路 線 ( 紅 色 為 目 標 物, 在 碰 到 牆 壁 時, 往 反 方 向 移 動 ) 3.5 砲 彈 砲 台 的 砲 頭 就 是 砲 彈 的 大 小, 所 以 當 接 收 到 觸 控 螢 幕 被 觸 控 時, 將 砲 台 的 砲 頭 當 成 砲 彈 的 起 始 位 置, 而 為 了 增 加 遊 戲 的 難 度, 所 以 我 們 就 將 子 彈 的 數 量 做 限 制, 當 子 彈 用 完 時, 還 有 目 標 物 沒 被 消 除 時, 就 是 挑 戰 遊 戲 失 敗 15

3.5.1 發 射 子 彈 // 抓 觸 控 新 位 置 Xp=get_x_coord(); Yp=get_y_coord(); // 感 應 碰 觸 - 發 彈 // 假 如 沒 觸 控, 無 動 作 if( ( temp_xold == temp_x && temp_yold == temp_y ) ( temp_x == Xp && temp_y == Yp ) ) ; // 條 件 成 立 則 發 射 子 彈 else if( temp_y > 200 && temp_y < 600 && temp_x < 460 ) { if( boom_count < boom_max )// 若 發 彈 數 小 於 最 大 彈 數 則 發 射 { temp_x = Xp ; temp_y = Yp ; boomx[ boom_count ] = 160 ; boomy[ boom_count ] = temp_box + 10 ; boom_count++ ; } } 16

當 在 發 射 子 彈 的 區 域 進 行 觸 控, 就 會 先 判 斷 以 發 射 的 子 彈 數 量 是 否 超 過 子 彈 的 總 彈 數, 沒 有 超 過 子 彈 的 總 彈 數 就 可 以 發 射 一 顆 子 彈 3.5.2 子 彈 數 量 我 們 把 子 彈 數 量 設 定 為 只 有 20 顆 子 彈, 然 後 做 成 一 個 彈 藥 存 量 光 棒 顯 示 在 LTM 面 板 上 以 下 是 顯 示 彈 藥 存 量 的 光 棒 的 程 式 碼 : tempstay = ((boom_max-boom_count)*400/boom_max) ; 圖 3.6 發 射 子 彈 的 觸 控 區 & 彈 藥 存 量 光 棒 17

3.6 目 標 物 和 子 彈 的 碰 撞 & 碰 撞 的 效 果 判 斷 子 彈 和 目 標 物 的 x 值 和 y 值, 若 有 重 疊 的 狀 況 出 現, 即 為 碰 撞 發 生, 在 碰 撞 發 生 的 時 候, 子 彈 會 消 失, 並 且 目 標 物 會 有 爆 炸 的 效 果 出 現 圖 3.7 碰 撞 後 的 爆 炸 效 果 3.7 關 卡 的 設 定 遊 戲 關 卡 的 各 初 始 值 : speed 為 目 標 物 速 度 ; game 為 遊 戲 是 否 進 行 ; random 為 目 標 增 強 次 數 ; boom_max 為 子 彈 上 限 LEVEL 1: if( temp_y < 265 && temp_y > 5 ) { speed = 5 ; game = 1 ; 18

random = 8 ; boom_max = 20 ; } LEVEL 2: else if( temp_y > 270 && temp_y < 530 ) { speed = 5 ; game = 1 ; random = 4; boom_max = 20 ; } LEVEL 3: else if( temp_y > 535 && temp_y < 795 ){ speed = 5 ; game = 1 ; random = 0 ; boom_max = 20 ; } 每 個 關 卡 的 speed 和 boom_max 的 值 都 一 樣, 而 差 別 就 是 目 標 物 的 生 命 值,LEVEL 1 的 目 標 物 都 只 能 承 受 一 次 與 子 彈 碰 撞 的 生 命 值, 而 LEVEL 2 和 3 的 目 標 物 有 可 以 承 受 兩 次 碰 撞 或 三 次 碰 撞 的 生 命 值 19

圖 3.8 關 卡 的 顯 示 圖 3.9 各 種 目 標 物 生 命 值 不 同 的 型 態 20

3.8 勝 負 的 判 定 藉 由 目 標 物 是 否 抵 達 deadline 或 是 被 消 除 完 來 判 定 輸 贏 目 標 物 全 部 被 消 除 的 時 候, 印 出 WIN; 目 標 物 抵 達 deadline 時 或 是 子 彈 數 量 用 完, 但 還 有 目 標 物 沒 有 被 消 除, 則 印 出 LOSE 3.9 遊 戲 的 功 能 鍵 圖 3.10 deadline 在 這 遊 戲 當 中, 我 們 所 做 的 遊 戲 皆 由 觸 控 的 方 式 來 控 制 整 個 遊 戲 的 進 行, 所 以 我 們 有 砲 台 左 右 移 動 鍵 遊 戲 暫 停 鍵 遊 戲 重 新 開 始 的 按 鈕 21

第 四 章 螢 幕 的 座 標 與 產 生 顏 色 之 相 關 技 術 應 用 4.1 螢 幕 座 標 規 劃 由 Altera 提 供 的 說 明 文 件, 我 們 可 以 知 道, 螢 幕 座 標 被 分 成 了 兩 種 方 式 表 現, 因 為 在 使 用 功 能 方 面 並 不 相 同, 所 以 在 之 後 4.1.1 觸 碰 所 得 到 的 螢 幕 座 標 以 及 4.1.2 一 般 計 算 輸 出 圖 形 顏 色 座 標, 將 說 明 此 兩 種 座 標 規 劃 的 差 異 性 4.1.1 觸 碰 螢 幕 座 標 配 合 我 們 所 做 的 小 遊 戲, 我 們 的 觸 控 螢 幕 的 座 標 X 為 800 Y 為 480, 方 便 我 們 可 以 利 用 軟 體 的 寫 法 來 做 遊 戲 如 下 圖 : 圖 4.1 The x and y coordinates of the corners on the LTM touch screen 22

4.1.2 一 般 計 算 輸 出 顏 色 座 標 從 Altera 文 件 提 供 的 資 料, 在 輸 出 顏 色 的 座 標 上, 要 特 別 注 意 的 是, 在 其 時 間 的 規 劃 上 面 有 其 有 效 的 資 料 範 圍, 下 圖 4.3 為 一 個 Horizontal Line 有 效 資 料 範 圍 ( 一 個 Horizontal Line 為 螢 幕 座 標 一 列 最 左 到 最 右 的 位 置 ) 圖 4.3 LCD horizontal timing specification 下 圖 4.4 為 說 明 了 上 圖 4.3 LCD horizontal timing specification 每 個 參 數 所 需 花 費 單 位, 以 本 次 專 題 實 作 為 例, 我 們 的 Pnel Rsolution 800*RGB*480 為 原 則, 也 就 是 每 1 個 Horizontal Line 單 位 為 1056 個 NCLK, 而 每 個 NCLK 頻 率 為 33.2 個 MHz 23

圖 4.4 LCD horizontal timing parameters 下 圖 4.5 為 一 個 Vertical Line 有 效 資 料 範 圍, 由 下 圖 可 知 一 個 Vertical Line 包 含 了 許 多 Hrizontal Line 的 資 料 範 圍 ( 一 個 Vertical Line 為 螢 幕 座 標 一 行 最 下 方 到 最 上 方 的 位 置 ) 圖 4.5 LCD vertical timing specification 24

下 圖 4.6 為 說 明 了 上 圖 LCD vertical timing specification 每 個 參 數 所 需 花 費 單 位, 以 本 次 專 題 實 作 為 例, 我 們 的 Pnel Rsolution 以 800*RGB*480 為 原 則, 也 就 是 每 1 個 Vertical period 單 位 為 525 個 Horizontal Line 圖 4.6 LCD vertical timing parameters 25

下 圖 為 4.7Altera 文 件 所 提 供 在 螢 幕 上 輸 出 顏 色 的 範 例, 以 此 為 一 般 計 算 輸 出 顏 色 座 標 說 明 範 例 : 在 y 方 向, 座 標 小 於 200 輸 出 紅 色, 大 於 360 輸 出 藍 色, 其 餘 輸 出 綠 色 在 x 方 向, 顏 色 的 深 淺 隨 著 座 標 而 有 所 不 同 變 化 在 下 一 節 的 5.2 小 蜜 蜂 設 計 也 以 此 輸 出 顏 色 方 式 作 為 基 礎 圖 4.7 Altera 輸 出 顏 色 範 例 26

第 五 章 系 統 架 構 本 章 節 是 在 說 明 整 個 小 蜜 蜂 遊 戲 的 整 體 架 構, 總 共 區 分 為 5.1 系 統 架 構 5.2 遊 戲 畫 面 設 計 方 法 與 架 構 5.1 系 統 架 構 我 們 是 使 用 雙 CPU 來 做 遊 戲 和 音 樂,cpu1 是 執 行 音 樂 的 部 分,cpu2 是 執 行 遊 戲 部 分,cpu1 和 cpu2 所 控 制 的 硬 體 元 件, 如 下 圖 : 圖 5.1 小 蜜 蜂 遊 戲 硬 體 架 構 圖 5.1.1 SOPC - 雙 CPU 所 要 加 入 的 元 件 有 onchip share memory 和 mutex, mutex 可 以 視 為 cpu1 和 cpu2 的 溝 通 者,mutex 藉 由 onchip share memory 來 傳 訊 息 給 cpu1 和 cpu2 onchip share memory 和 mutex 都 要 和 cpu1 & cpu2 的 data_master 連 接 27

圖 5.2 SOPC - onchip share memory & mutex 5.1.2 SOPC - music 主 要 的 元 件 為 i2c_sclk i2c_sdat 和 AUDIO,cpu1 來 控 制 這 三 個 元 件 圖 5.3 SOPC - i2c_sclk & i2c_sdat & AUDIO 28

5.1.3 SOPC - SEG7 LED LCD 主 要 的 元 件 是 lcd pio_green_led pio_red_led SEG7,LED 是 拿 來 顯 示 音 樂 的 音 量 大 小,SEG7 是 拿 來 顯 示 音 樂 的 播 放 時 間 圖 5.4 SOPC - lcd pio_green_led pio_red_led SEG7 5.1.4 SOPC- SD 卡 所 要 用 到 的 元 件 有 sd_clk sd_cmd sd_dat sd_dat3 圖 5.5 SDcard Driver Implementation 29

圖 5.5 SDcard interface 5.1.5 SOPC- PLL PLL 就 是 clock, 而 cpu audio sdram 都 需 要 各 自 的 clock, 可 以 調 clock 來 超 頻 圖 5.6 SOPC - PLL 30

5.1.6 SOPC - system id 為 了 防 止 同 時 使 用 不 相 關 的.ptf 檔 和.sof 檔 圖 5.6 SOPC - sysid 31

5.1.6 遊 戲 流 程 圖 圖 5.7 小 蜜 蜂 遊 戲 流 程 圖 32

5.1.7 遊 戲 流 程 圖 說 明 遊 戲 開 始 之 後, 就 會 出 現 關 卡 可 以 選 擇, 選 完 關 卡 後, 這 時 偵 測 觸 控 螢 幕 是 否 有 被 觸 控, 遊 戲 進 行 時, 會 一 直 去 偵 測 螢 幕, 在 偵 測 螢 幕 被 觸 控 時, 就 會 開 始 判 斷 目 標 物 是 否 已 經 抵 達 deadline; 要 發 射 子 彈 的 時 候, 子 彈 的 數 量 是 否 還 有 ; 子 彈 是 否 有 擊 中 目 標 物, 計 數 器 是 否 已 達 到 遊 戲 勝 利 的 分 數 了, 若 沒 有 就 一 直 重 複 迴 圈 5.2 遊 戲 畫 面 設 計 方 法 與 架 構 5.2.1 小 蜜 蜂 遊 戲 應 用 在 LTM 實 做 將 小 蜜 蜂 遊 戲 應 用 在 LTM 上, 以 第 四 章 4.1 小 蜜 蜂 設 計 成 為 有 基 本 圖 形 介 面 的 小 遊 戲 圖 5.8 將 小 蜜 蜂 遊 戲 應 用 在 LTM 上 之 架 構 33

1. ADC_SPI_Controller: 在 此 區 塊 內 規 劃 螢 幕 的 座 標, 接 受 由 使 用 者 觸 碰 螢 幕 的 座 標 後, 將 其 類 比 訊 號 轉 為 數 位 訊 號, 將 轉 換 後 的 座 標 訊 號 交 給 Touch_Point_Detector 2. Touch_Point_Detector: 在 此 區 塊 內 規 劃 好 關 卡 選 擇 / 遊 戲 結 束 的 螢 幕 觸 碰 範 圍, 以 及 欲 使 檔 板 移 動 的 螢 幕 觸 碰 範 圍, 將 欲 使 檔 板 移 動 的 螢 幕 觸 碰 座 標 交 給 檔 板 位 置 控 制 器 檔 板 位 置 控 制 器 目 標 物 和 砲 台 產 生 器 與 訊 號 控 制 器 設 計 方 法 參 照 4.2 小 蜜 蜂 設 計 5.2.2 訊 號 控 制 器 在 此 區 塊 當 中, 訊 號 控 制 器 將 會 接 收 到 兩 樣 訊 號, 一 個 來 自 目 標 物 和 砲 台 顏 色 資 料, 一 個 來 自 觸 控 螢 幕 接 收 使 用 者 的 觸 碰 訊 息, 在 此 敘 述 遊 戲 圖 片 與 射 擊 物 執 行 流 程 圖 5.9 訊 號 控 制 器 34

第 六 章 實 作 成 果 圖 6.1 選 擇 關 卡 圖 6.2 目 標 物 移 動 35

圖 6.3 用 觸 控 按 鈕 讓 砲 台 移 動 圖 6.4 發 射 子 彈 36

圖 6.5 擊 中 目 標 物 & 計 分 板 加 分 圖 6.6 可 按 暫 停 的 觸 控 按 鈕 或 是 重 新 的 觸 控 按 鈕 37

結 束 畫 面 ( 兩 種 ) WIN: 將 所 有 的 目 標 物 全 部 都 消 除, 即 為 闖 關 成 功 圖 6.7 WIN GAME OVER: 目 標 物 抵 達 deadline 或 是 子 彈 用 完, 目 標 物 沒 有 消 除 完, 即 為 闖 關 失 敗 38

圖 6.8 GAME OVER 39

問 題 一 : 第 七 章 遭 遇 問 題 及 解 決 目 標 物 顯 示 與 移 動 當 時 的 情 形 : 因 為 目 標 物 不 只 一 個, 每 個 都 有 自 己 的 座 標 位 移 速 度 等... 解 決 : 用 一 個 二 維 陣 列 將 目 標 物 自 己 的 數 值 存 好, 其 中 一 個 是 目 標 物 是 否 還 存 在 (>0), 讓 目 標 物 有 不 同 的 裝 甲 和 被 擊 中 時 有 單 獨 的 動 畫 並 且 消 失 問 題 二 : 觸 控 座 標 不 會 清 除 當 時 情 形 : 因 為 是 用 兩 個 整 數 變 數 來 暫 存 (temp_x,temp_y) 目 前 觸 控 的 座 標, 之 後 取 得 新 的 觸 控 座 標 來 跟 暫 存 的 比 較, 若 是 此 時 沒 觸 碰 觸 控 時, 暫 存 座 標 永 遠 會 跟 觸 控 座 標 相 等, 造 成 某 些 地 方 會 不 斷 的 動 作 (Ex: 發 子 彈 ) 解 決 : 在 宣 告 兩 個 暫 存 (temp_xold,temp_yold), 在 程 式 末 把 temp_x 和 temp_y 存 起 來, 在 下 次 迴 圈 開 始 時 先 判 斷 (temp_xold,temp_yold) 和 (temp_x,temp_y) 是 否 有 一 樣, 一 樣 的 話 無 動 作 等 待 下 次 迴 圈, 不 一 樣 的 話 則 進 行 另 外 的 條 件 判 斷 問 題 三 : 遊 戲 暫 停 當 時 情 形 : 40

本 來 暫 停 裡 面 的 迴 圈 是 while( 當 觸 控 沒 有 在 按 鈕 上 ), 結 果 還 是 發 生 觸 控 座 標 不 會 清 除 的 情 況, 導 致 不 會 暫 停 解 決 : 一 進 去 馬 上 把 (temp_x,temp_y) 設 為 0, 開 始 跑 while(1), 裡 面 不 放 條 件,if( 點 到 按 鈕 ) 就 用 break 來 中 止 暫 停, 不 然 就 更 新 觸 控 座 標, 直 到 點 到 按 鈕 為 止 問 題 四 : 遊 戲 重 新 開 始 當 時 情 形 : 一 開 始 完 全 沒 有 頭 緒, 想 說 是 否 要 把 所 有 參 數 初 始 化 解 決 : 用 goto 跳 回 一 開 始 所 定 的 起 始 點 就 能 解 決 了 問 題 五 : 觸 控 螢 幕 發 出 子 彈 並 且 可 以 多 次 發 出 子 彈 解 決 : 先 讀 取 觸 控 的 判 斷, 然 後 用 陣 列 來 儲 存 每 一 顆 子 彈 的 x 值 和 y 值, 然 後 用 迴 圈 的 方 式 來 跑 x 值 問 題 六 : 判 斷 子 彈 碰 撞 到 目 標 物, 目 標 物 消 除 的 情 況 當 時 的 情 況 : 在 判 斷 碰 撞 時 有 時 候 還 是 會 沒 辦 法 完 全 判 斷 成 功, 可 能 是 因 為 處 理 碰 撞 和 移 動 的 時 候 沒 辦 法 很 快 的 判 斷 完 全, 所 以 會 導 致 一 些 看 起 來 像 碰 撞 到 卻 沒 有 消 除 的 情 形 41

解 決 : 比 較 子 彈 x y 值 和 目 標 物 的 x y 值 有 重 疊 的 部 分 極 為 碰 撞, 發 生 碰 撞 時 控 制 目 標 物 的 判 斷 式 讓 目 標 物 消 失 問 題 七 : 遊 戲 加 速 當 時 的 情 況 : 遊 戲 的 進 行 速 度 很 慢 解 決 : 將 Active build Configuration 從 Debug 調 成 Release; 在 進 去 System Library properties 裡 面 的 C/C++ Build 的 Configuration 從 Debug 調 成 Release, 將 這 兩 樣 調 完 之 後 就 可 以 變 快 了 問 題 八 : multithread 無 法 同 時 播 放 音 樂 和 執 行 遊 戲 當 時 的 情 況 : 當 時 是 用 multithread 來 同 時 播 放 音 樂 和 執 行 遊 戲, 發 現 multithread 並 不 適 用 我 們 所 要 的 要 求 解 決 : 使 用 雙 cpu, 一 個 cpu 給 音 樂, 一 個 給 遊 戲, 然 後 就 將 我 們 要 的 做 好 了 42

8.1 結 論 第 八 章 結 論 與 心 得 團 體 合 作 的 精 神, 雖 然 我 們 這 次 小 專 題 沒 有 太 困 難 的 技 巧, 但 是 如 果 一 個 人 做, 那 也 會 有 點 艱 辛, 我 們 分 配 工 作, 將 問 題 切 割 並 解 決 問 題, 將 本 來 的 大 問 題 大 工 作, 可 以 得 以 快 速 有 效 率 解 決, 也 感 覺 到 同 伴 之 間 可 以 互 相 幫 助 掩 護, 當 有 人 疲 倦 時, 就 可 以 幫 忙, 讓 我 們 知 道 團 體 合 作 真 的 可 以 讓 我 們 感 受 到 以 前 一 個 人 所 沒 有 的 經 驗 8.2 心 得 林 桂 廷 : 當 要 選 擇 專 題 方 向 時, 開 始 看 自 己 是 硬 體 較 強 還 是 軟 體 比 較 強, 結 果 其 實 兩 方 面 都 沒 有 很 強, 硬 體 和 軟 體 的 比 較, 我 比 較 愛 好 硬 體, 所 以 就 請 求 陳 德 生 老 師 來 當 我 的 專 題 老 師, 而 在 挑 選 專 題 的 題 目 後, 開 始 做 的 時 候 發 現 自 己 的 能 力 並 沒 有 很 多, 所 以 當 我 們 開 始 在 用 UP1 熟 悉 VHDL 語 言 時, 常 常 發 現 原 來 自 己 是 知 其 然 不 知 其 所 以 然, 所 以 就 要 花 多 一 點 時 間 去 熟 悉 DE2-70 是 我 們 這 次 做 專 題 的 新 版 子, 他 可 以 搭 配 觸 控 面 板, 之 前 所 研 究 的 UP1 就 是 為 了 更 容 易 適 應 DE2-70 這 塊 板 子 的 學 習, 用 DE2-70 這 塊 板 子 時, 我 們 就 開 始 學 習 用 SOPC 和 NIOS II, 但 好 險 系 上 的 王 老 師 有 開 關 於 這 塊 板 子 的 相 關 課 程, 讓 我 們 可 以 更 快 的 進 入 狀 況, 也 可 以 趁 著 修 這 課 程 來 提 前 開 始 遊 戲 的 製 作, 我 的 另 一 位 組 員 他 的 軟 體 C 語 言 很 強, 讓 我 可 以 專 心 的 研 究 硬 體 這 方 面, 常 常 都 會 在 硬 體 卡 關, 因 為 一 點 點 小 錯 誤 就 會 讓 我 卡 在 那 好 幾 天, 不 過 因 為 有 其 他 組 一 起 研 究, 所 以 可 以 有 人 一 起 討 論, 所 以 雖 然 在 硬 體 上 常 常 弄 得 很 煩 躁, 但 不 容 易 生 出 放 棄 的 心 裡 團 隊 的 專 題 研 究 讓 我 在 裡 面 學 到 很 多 事 情, 我 在 DE2-70 上 有 了 更 深 一 層 的 了 43

解, 可 以 了 解 到 其 實 硬 體 很 強 不 一 定 就 很 厲 害, 因 為 要 有 軟 體 的 搭 配 才 可 以 將 硬 體 的 優 勢 發 揮 出 來, 學 到 最 重 要 的 就 是 團 隊 合 作, 這 是 最 重 要 的 精 神, 如 果 不 懂 得 這 精 神, 那 專 題 就 一 定 不 可 能 可 以 做 好, 在 自 己 的 組 員 遇 到 困 難 時, 適 時 的 幫 忙 一 起 討 論 一 起 去 請 教 他 人, 都 可 以 讓 組 員 間 的 默 契 更 加, 也 可 以 讓 製 作 專 題 所 遇 到 的 歧 異, 可 以 和 平 的 解 決, 在 遇 到 難 題 的 時 候, 不 是 每 一 次 都 可 以 自 己 解 決 的, 有 時 候 適 時 的 去 尋 求 他 人 的 幫 助, 可 以 學 到 更 多, 也 不 會 有 可 能 走 到 誤 區 張 育 祥 : 在 三 年 級 暑 假 決 定 專 題 題 目 後, 首 先 使 用 到 的 實 驗 版 是 UP-1, 在 暑 假 和 第 一 個 學 期 慢 慢 地 摸 索 實 驗 板 的 架 構, 嘗 試 著 寫 些 簡 單 的 小 程 式 和 研 究 網 路 上 找 到 程 式 碼 在 實 驗 板 上 運 作 的 情 形, 還 參 考 了 歷 屆 學 長 姊 在 這 方 面 的 專 題, 對 此 實 驗 板 有 了 初 步 上 的 了 解 和 掌 控 之 後 接 觸 到 了 全 新 的 實 驗 版 DE-2, 因 為 是 首 次 碰 到 這 塊 新 的 實 驗 版, 修 了 一 門 課 讓 自 己 能 快 速 地 了 解 這 塊 實 驗 板, 並 且 開 始 著 手 於 專 題 的 程 式 碼, 有 問 題 的 時 候 可 以 馬 上 請 教 老 師 或 學 長 之 前 這 方 面 的 專 題 在 UP-1 上 實 作 的 時 候 都 是 用 電 腦 螢 幕 來 顯 示, 然 而 這 次 的 DE-2 他 有 外 接 的 觸 控 螢 幕 (LTM), 所 以 就 決 定 專 題 的 顯 示 和 操 控 是 在 LTM 上 實 現, 在 撰 寫 程 式 碼 時 遇 到 了 一 些 困 難, 首 先 是 子 彈 的 發 射, 如 何 讓 子 彈 發 射 後 就 讓 它 獨 立 的 飛 行, 而 且 可 以 讓 畫 面 中 同 時 有 多 顆 不 同 路 線 的 子 彈, 再 來 比 較 困 難 的 地 方 是 在 碰 撞 的 判 斷 上, 有 時 已 經 撞 到 了 卻 沒 有 把 目 標 物 消 掉, 到 最 後 不 斷 的 去 修 改 判 斷 碰 撞 條 件 的 地 方, 把 這 個 問 題 發 生 的 機 率 降 低 最 後 總 算 完 成 了 這 個 專 題, 雖 然 可 能 會 有 些 地 方 不 是 怎 麼 的 完 美, 不 過 它 讓 我 在 出 44

了 難 解 問 題 時, 如 何 跟 組 員 一 起 尋 找 方 法 解 決, 或 是 跟 其 他 組 一 起 討 論, 嘗 試 其 他 新 的 方 法, 再 有 具 體 的 方 法 出 來 時, 能 讓 我 比 較 容 易 靜 下 來 去 思 考 此 方 法 的 可 行 性, 慢 慢 的 把 問 題 解 開 參 考 資 料 1. OO 無 雙 :http://www.cnblogs.com/oomusou/category/149442.html 2. 系 統 晶 片 設 計 - 使 用 NiosⅡ, 作 者 : 廖 裕 評 陸 瑞 強, 出 版 社 : 全 華 科 技 出 版 日 期 :2008 年 10 月 16 日 3. Altera 官 網 :http://www.altera.com/ 45