本應(yīng)用筆記提供了將MAXQ2000微控制器(MAXQ20內(nèi)核)連接至MAX7312 16位端口擴(kuò)展器所需的全部固件。應(yīng)用示例是一個(gè)LED目標(biāo)練習(xí)游戲。示例裝配程序是專(zhuān)門(mén)為MAXQ2000編寫(xiě)和組裝的,使用免費(fèi)的IAR嵌入式工作臺(tái)IDE版本2.10A。
硬件概述
MAX7312為2線接口16位I/O端口擴(kuò)展器,具有中斷和熱插入保護(hù)功能。利用本應(yīng)用筆記和MAX7312評(píng)估板,用戶可以創(chuàng)建LED打靶練習(xí)游戲。評(píng)估板的紅色和綠色LED將快速上下滾動(dòng)。游戲的目標(biāo)是當(dāng)紅色和綠色LED燈在中心相遇時(shí)按下其中一個(gè)按鈕。
MAX7312評(píng)估板包括MAX7312、MAXQ2000微控制器、所有必需的無(wú)源元件和經(jīng)過(guò)驗(yàn)證的PCB布局。MAX7312評(píng)估板原理圖如圖1和圖MAXQ2000評(píng)估板包含MAXQ2000設(shè)計(jì)所需的一整套軟件、硬件、示例代碼和文檔。MAXQ2000評(píng)估板的原理圖可在數(shù)據(jù)資料中提供。
圖1.MAX7312評(píng)估板原理圖,兩種原理圖之一。
圖2.MAX7312評(píng)估板原理圖,兩個(gè)原理圖中的第二個(gè)
固件概述
示例固件程序(見(jiàn)下文)通過(guò)對(duì)I進(jìn)行位敲擊與MAX7312通信。2MAXQ2000通用輸入/輸出(GPIO)端口上的C接口。MAXQ2000的20MHz系統(tǒng)時(shí)鐘允許位敲I。2C 接口,運(yùn)行頻率高達(dá) 400kHz。用戶修改 maxqi2c.h 頭文件以選擇 I 的速度2C 接口以及哪些 GPIO 端口將用作 SDA 和 SCL。
MAX7312評(píng)估板上電后,MAXQ2000自動(dòng)檢測(cè)I。2MAX7312的C地址然后程序開(kāi)始配置MAX7312的端口1 GPIO,以產(chǎn)生LED燈的滾動(dòng)效果。端口 2 GPIO 8 和 9 配置為輸入端口,固件通過(guò)這些端口讀取按鈕的狀態(tài)。
游戲挑戰(zhàn)玩家在紅色和綠色 LED 滾動(dòng)燈在中心相遇時(shí)按下按鈕。如果當(dāng)LED相遇時(shí)按下按鈕,則MAXQ2000微控制器將檢測(cè)到該按鈕,所有LED將閃爍,表示用戶贏得游戲。
表 1 顯示了所有I2C 應(yīng)用程序所需操作。
I2C /SMBus 協(xié)議 | 應(yīng)用目的 | 設(shè)備從地址 | 寄存器地址 |
讀取端口 2 輸入寄存器 | 讀取按鈕的狀態(tài) | 0x40 | 0x01 |
01000000B | 00000001b | ||
將配置寄存器寫(xiě)入端口 1 | 配置端口 1 的 I/O 方向 | 0x40 | 0x06 |
01000000B | 00000110b | ||
將配置寄存器寫(xiě)入端口 2 | 將端口 2 GPIO 8 和 9 配置為輸入端口 | 0x40 | 0x07 |
01000000B | 00000111b | ||
將輸出端口寄存器寫(xiě)入端口 1 |
打開(kāi)或關(guān)閉 LED 燈 | 0x40 | 0x02 |
01000000B | 00000010b |
-
微控制器
+關(guān)注
關(guān)注
48文章
7658瀏覽量
152157 -
led
+關(guān)注
關(guān)注
242文章
23376瀏覽量
663393 -
接口
+關(guān)注
關(guān)注
33文章
8706瀏覽量
151972
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論