应用笔记 4533

基于MAXQ2000和MAX7312的LED靶标游戏机


摘要 : 这篇应用笔记介绍了一个LED靶标游戏设计方案。利用该游戏计方案可以演示MAXQ2000微控制器(MAXQ20核)和MAX7312端口扩展器的功能,提供了所用与这两款芯片接口的固件程序。

引言

该应用笔记提供了所有与MAXQ2000微控制器(MAXQ20核)、MAX7312 16位端口扩展器接口的固件程序。该应用示例为LED靶标游戏机。示例中,MAXQ2000所使用的汇编程序利用免费的IAR Embedded Workbench® IDE 2.10A版进行编程、编译。

硬件电路

MAX7312为2线接口、16位I/O端口扩展器,具有中断和热插拔保护功能。借助这篇应用笔记和MAX7312 EV (评估)板,用户可以方便地构建一个LED靶标游戏机。评估板上的红光、绿光LED可以快速地上、下滚动。游戏机的目标是当红光、绿光LED在中心汇聚时按下特定的按钮。

MAX7312评估板包括MAX7312、MAXQ2000微控制器、所有所需的无源元件以及经过验证的PCB。MAX7312评估板原理图如图1图2所示。

如需了解更多关于MAXQ2000微控制器的信息,可订购MAXQ2000评估套件。MAXQ2000评估套件包括完整的软件、硬件、示例代码以及设计文档,可以快速启动对MAXQ2000的设计。数据资料给出了MAXQ2000评估套件的原理图。

图1. MAX7312评估板原理图(1/2)
查看详细图片
(PDF, 292kB)
图1. MAX7312评估板原理图(1/2)

图2. MAX7312评估板原理图(2/2)
查看详细图片
(PDF, 332kB)
图2. MAX7312评估板原理图(2/2)

固件程序

固件程序(如下所示)通过MAXQ2000的通用输入/输出(GPIO)端口、利用逐位仿真的I²C接口与MAX7312进行通信。MAXQ2000的20MHz系统时钟可以使逐位仿真的I²C接口速率达到400kHz。用户可以通过修改头文件maxqi2c.h选择I²C接口的速率以及用作SDA和SCL的GPIO口,详细信息请参考应用笔记3588:“MAXQ2000微控制器软件I²C驱动”。

MAX7312评估板上电后,MAXQ2000自动检测MAX7312的I²C地址。然后启动程序配置MAX7312端口1的GPIO产生LED的滚动显示效果。端口2的GPIO 8和9配置为输入端口,固件程序通过这些端口读取按钮状态。

该游戏挑战的是玩家在红光和绿光LED灯滚动并且在中心位置相遇时按下按钮。如果LED显示相遇时按下按钮,MAXQ2000即可捕捉这一操作,并且点亮全屏的LED,表示玩家在游戏中获胜。

表1列出了整个游戏过程中使用的所有I²C操作。

表1. I²C操作
I²C/SMBus Protocol Application Purpose Device Slave Address Register Address
Read port 2 input register Read the states of the pushbuttons 0x40 0x01
01000000b 00000001b
Write configuration registers to port 1 Configure the I/O direction for port 1 0x40 0x06
01000000b 00000110b
Write configuration registers to port 2 Configure port 2 GPIOs 8 and 9 as input ports 0x40 0x07
01000000b 00000111b
Write output port register to port 1 Turn LED lights on or off 0x40 0x02
01000000b 00000010b

可以下载该示例应用的源程序。


相关型号
MAX7312 免费样品
下一步
EE-Mail 订阅EE-Mail,接收关于您感兴趣的新文档的自动通知。
© , Maxim Integrated Products, Inc.
The content on this webpage is protected by copyright laws of the United States and of foreign countries. For requests to copy this content, contact us.
APP 4533:
应用笔记 4533,AN4533, AN 4533, APP4533, Appnote4533, Appnote 4533