MAX1233/MAX1234触摸屏控制器入门
摘要:本应用笔记介绍怎样使用MAX1233/MAX1234触摸屏控制器的功能。所提供的简化控制台菜单系统支持对MAX1233/MAX1234器件寄存器的底层直接访问。每一寄存器在32个SPI™时钟周期内完成读写操作。软件对每一寄存器使用简短的助记名。使用MAX1234评估板(EV Kit)和MINIQUSB+命令模块时,软件支持最大底层控制。在随附的zip文件中,提供所有源代码。
MAX1233的工作方式和
注意:符号"/" (例如,/CS)表示CS、PENIRQ、KEYIRQ和BUSY引脚为低电平有效。
内容目录
MAX1233/MAX1234触摸屏控制器入门
1.1) 需要的硬件
1.2) MINIQUSB+固件更新说明
1.3) 设置
1.4) 步骤
1.5) 解释SPI data in实例格式
2) 模拟I/O实例
2.1) 控制DAC输出电压
2.2) 选择ADC基准电源模式
2.3) 测量外部电压输入AUX1和AUX2
2.4) 将AUX1和AUX2转换结果译为物理值
2.5) 测量外部电压输入BAT1和BAT2
2.6) 将BAT1和BAT2转换结果译为物理值
2.7) 测量内部温度TEMP1和TEMP2
2.8) 将TEMP1转换结果译为物理值
2.9) 将TEMP1和TEMP2转换结果译为物理值
2.10) 测量外部电压输入AUX1、AUX2、BAT1、BAT2和温度
3) 触摸屏实例
3.1) 低成本商用触摸屏
3.2) 连接触摸屏和评估板
3.3) 验证触摸屏的连接
3.4) 检测触摸屏操作:根据需要扫描
3.5) 检测触摸屏操作:自动扫描
4) 键盘和通用输入/输出引脚
4.1) 配置键盘和GPIO引脚
4.2) 读写GPIO引脚
4.3) 检测按键:自动扫描
4.4) 从键盘中屏蔽单个按键
4.5) 从键盘中屏蔽一列
5) 管理功耗
6) 菜单系统
6.1) 寄存器读/写命令
6.2) 中断和状态引脚命令
6.3) 加入到更新后的MINIQUSB+固件中的命令
7) 结论
1.1) 需要的硬件
- Maxim MAX1234评估板 (MAX1234EVKIT)
- Maxim MINIQUSB+ (包括USB A-B电缆和MINIQUSB-X+扩展板)
- Windows® 2000/XP PC,支持USB。
- 四线阻性触摸屏(例如,PDA数字转换器/玻璃屏等)
- 可选:测量DAC输出电压的DMM
- 可选:驱动AUX和BAT输入的电压源
- 可选:示波器,用于观察/PENIRQ和/KEYIRQ引脚上的自动扫描中断脉冲。
1.2) MINIQUSB+固件更新说明
MAX1233/MAX1234要求/CS引脚在第一次转换结束之前,解除高电平置位;否则,ADC将无法存储转换结果。在使用本应用笔记之前,必须更新标准MINIQUSB+模块固件,使SPI接口/CS引脚在第32个SCLK 1.4µs内解除置位。在2MHz时,32位自动/CS受控模式将/CS保持低电平21.70µs。只需要对MAXQ2000微控制器非易失闪存MINIQUSB+固件更新一次。这一新固件和标准01.05.39基本固件后向兼容。除了提高SPI接口的/CS时序之外,固件更新还包括中断驱动脉冲累加器,在MAX1233/MAX1234配置为自动扫描模式时,支持验证/PENIRQ和/KEYIRQ是否发送其自清除中断脉冲。/PENIRQ的持续时间取决于所配置的ADC转换率,/KEYIRQ的持续时间取决于所配置的开关反弹时间。
1.3) 设置
下载并解压缩应用笔记文件 (ZIP, 2.4MB)。根据图1来组装硬件。
- 按照表1连接MAX1234评估板连接器J1和MINIQUSB-X+扩展电路板(包含在MINIQUSB+中)。可以采用3M®内部连接器922576-40来替代连接MAX1234评估板的焊线,将其插入到J1中,以提供方便的连接点。不要连接终端模块TB1。
表1. MAX1234评估板和MINIQUSB+电路板之间的连接设置
* 注释:必须通过连接器J1来驱动MAX1234评估板数字输入,不能直接将其驱动至U1周围的测试点。必须采用板上MAX1841电平转换器来驱动MAX1234评估板数字信号。MAX1234 Signal MAX1234 EV Kit MINIQUSB-X+ MINIQUSB Signal GND J1-1 H2-8 GND VCC J1-7 H2-1 3.3V supply from MINIQUSB+ BUSY-Bar J1-27 H2-7 GPIO-K7 (MAXQ2000-INT2) PENIRQ-Bar J1-29 H1-3 GPIO-K6 (MAXQ2000-INT1) KEYIRQ-Bar J1-31 H1-8 GPIO-K5 (MAXQ2000-INT0) DOUT J1-35* H2-2 MISO (SPI master in, slave out) DIN J1-36* H2-5 MOSI (SPI master out, slave in) SCLK J1-37* H2-3 SCLK (SPI clock) CS-Bar J1-38 H2-4 CS-bar (SPI chip select) USB+5V J1-5 J4-7 USB+5V supply from PC - 将MINIQUSB+插入到扩展板的顶部。
- 连接MINIQUSB+和PC的USB端口。如果这是MINIQUSB+第一次和PC连接,将出现即插即用向导。指南窗口将提示器件驱动器(它包含在随附zip文件中)的安装位置。
- 启动固件更新批处理文件FWUPDATE.BAT来更新MINIQUSB+固件。
- 固件更新完成后,从PC的USB端口断开MINIQUSB+。
图1. 硬件配置(在后面章节中连接触摸屏)。
图2. 系统图片,使用一个3M内部连接器来连接MINIQUSB+和MAX1234评估板。
1.4) 步骤
- 将MAX1234评估板跳接器JU1设置到“MAX1234”位置。
- 将MINIQUSB+连接至PC的USB端口。确定DACOUT电压 = mid-scale (2.2V)。
- 启动DEMO1234.EXE程序。屏幕上将出现控制台。
- 在控制台中输入下面的命令序列。
DEMO1234 Command* | Expected Program Output | SPI data in | Verification** |
C | Board connected.Got board banner: Maxim MINIQUSB V01.05.41 >Firmware version is OK.(configured for SPI auto-CS 4-byte mode) (SCLK=2MHz) ... | ||
T W DD FF | Write_Register(regAddr=0x000b wr_DAC_data ,data=0x00ff{(no bits defined for this register)}) result = 1 | 0x000b 0x00ff | DACOUT = full-scale (4.5V) |
T R DD | Read_Register(regAddr=0x800b wr_DAC_data ) result = 1,buffer = 0x00ff = 255{(no bits defined for this register)} | 0x800b 0x0000 | Data buffer = 0x00ff |
T W DD 80 | Write_Register(regAddr=0x000b wr_DAC_data ,data=0x0080{(no bits defined for this register)}) result = 1 | 0x000b 0x0080 | DACOUT = mid-scale (2.2V) |
T R DD | Read_Register(regAddr=0x800b wr_DAC_data ) result = 1,buffer = 0x0080 = 128{(no bits defined for this register)} | 0x800b 0x0000 | data buffer = 0x0080 |
** Verification列出了可以进行的物理测试,验证所执行的命令。
1.5) SPI data in实例格式
SPI data in一列列出了驱动至MAX1233/MAX1234 DIN引脚的SPI数据,采用了十六进制格式,最高有效字节在前。例如,序列0x000b 0x00ff中的SPI数据表示同步输入到DIN的32位序列是0000 0000 0000 1011 0000 0000 1111 1111。第一位0用于寄存器写操作,1用于寄存器读操作。寄存器写操作是0000 0000 a7-a0 d15-d0格式的32位SPI传送过程。
寄存器读操作是1000 0000 a7-a0 0000 0000格式的32位SPI传送过程,在最后16位,接收到的数据从DOUT同步输入。
2) 模拟I/O实例
下面的例子介绍了怎样使用DEMO1234.EXE程序来控制DAC输出,配置基准电压,测量AUX1/AUX2/BAT1/BAT2电压输入,以及测量内部MAX1234温度。2.1) 控制DAC输出电压
由两个寄存器来控制DAC。写入DAC数据寄存器来设置输出电压。写入DAC控制寄存器来关断或者对DAC上电。默认上电状态是DAC加电,DAC输出位于量程中部。DAC满量程电压通常为AVDD的90% (最小85%,最大95%)。对于AVDD = 3.3V ±5%,DACOUT满量程范围在2.65V和3.27V之间,通常为2.96V。
对于AVDD = 5.0V ±5%,DACOUT满量程范围在4.02V和4.97V之间,通常为4.48V。
表3. DAC输出命令
评论