高速I²C用于MAX1239 ADC,采用MAXQ2000微控制器

描述

本应用笔记提供了一个急需的高速I²C工作示例。应用笔记给出了一个应用威廉希尔官方网站 ,并提供了将MAXQ2000微控制器(MAXQ20内核)连接至MAX1239所需的全部固件,转换速率为91ksps。示例固件是使用 MAX-IDE 1.0 版开发的。

MAX1239概述

MAX1239为12通道、12位、低功耗ADC,具有1.7MHz高速I²C兼容串行接口。MAX1239支持快速/标准模式(FS模式,400kHz)和高速模式(HS模式,1.7MHz),转换速率高达94.4ksps。需要HS模式才能实现从26ksps到94.4ksps的转换率。40ksps至94.4ksps的转换速率需要外部时钟模式。

硬件概述

简化的系统框图如图1所示。应用威廉希尔官方网站 采用两块评估(EV)板:安装MAX1239的MAX1238评估板(代替MAX1238)和MAXQ2000-KIT。选择MAX1239是因为数字逻辑电压范围。MAXQ2000微控制器的通用输入/输出(GPIO)端口仅接受高达+3.3V的电压;使用具有高速I²C的电平转换器会使威廉希尔官方网站 过于复杂。MAX1238评估板上没有MAXQ2000,因此通过在两块板上连接SCL、SDA和GND将其添加到系统中。此外,将+3.3V(而不是+5V)施加到V非常重要DD在MAX1238评估板上。免费订购MAX1239EEE或MAX1239EEE+样品,焊接到MAX1238评估板上。修改后的MAX1238评估板原理图如图2所示。

I²C总线

图1.简化的系统框图。

I²C总线

图2.使用MAX1239修改MAX1238评估板原理图。

MAX1239的引脚排列允许模拟威廉希尔官方网站 与数字威廉希尔官方网站 轻松隔离;模拟威廉希尔官方网站 在威廉希尔官方网站 板的左侧组合在一起,数字威廉希尔官方网站 在威廉希尔官方网站 板的右侧组合在一起。将两块板连接在一起时请记住这一点。将MAXQ2000评估板上的J2-52 (SDA)连接到MAX1238评估板上的SDA焊盘。同样,将 J2-54 (SCL) 连接到 SCL 焊盘。两个板的接地必须连接在一起。此外,R5和R7都必须配备2.2kΩ 5%电阻。MAX1238评估板已有47kΩ I²C上拉电阻,MAXQ2000评估板具有10kΩ I²C上拉电阻。增加R5和R7将在I²C总线上提供约1.6kΩ的上拉电阻。

MAXQ2000评估板包含一套完整的硬件、软件、示例代码和文档,用于MAXQ2000设计。MAXQ2000评估板的原理图可在数据资料中提供。

固件概述

示例固件是使用免费的MAX-IDE版本1.0开发的。下载最新版本的MAX-IDE。

主源文件是 ,它是用汇编方式编写的,以优化 HS 模式 I²C 接口的时序。源代码执行以下操作:hsi2c.asm

a) 初始化MAX2000的8-N-1UART,速率为115.2kbps

b) 初始化MAX1239 CONF BYTE,用于单端通道AIN0

c) 初始化MAX1239内部基准、外部时钟和单极性操作

的设置字节 d) 初始化MAX1239的I²C HS模式 e) 在I²C HS

模式下

从MAX1239回读12位采样 f) 通过串行端口传输 12 位样本

示例汇编程序通过对MAXQ2000的GPIO端口上的HS模式I²C接口进行位敲击,从MAX1239采集样本。MAXQ2000的16MHz系统时钟允许位冲击HS模式I²C接口工作频率高达1.7MHz。

该文件默认为MAX1239EEE或MAX1239EEE+的从地址。必须为系列中的每个不同部件定制固件。例如,使用MAX1239KEEE、MAX1239KEEE+、MAX1239LEEE、MAX1239LEEE+、MAX1239MEEE或MAX1239MEEE+时,遵循以下两个步骤:hsi2c.asm

编辑I2C_ADDR定义语句以反映所用器件的I²C地址。这些变量必须是实际地址的补充。例如,地址 0111 111 (r/w) 需要编码为:

I2C_ADDR7等式 1

I2C_ADDR6 等式 0

I2C_ADDR5 等式 0

I2C_ADDR4 等式 0

I2C_ADDR3 等式 0

I2C_ADDR2 等式 0 I2C_ADDR1 等式 0

源代码要求使用16MHz系统时钟(MAXQ2000晶体)。

下图显示了本应用笔记中实现的FS模式(图

3

)和HS模式(

图4

)I²C帧。

I²C总线

图3.FS 模式双字节写入操作。

I²C总线

图4.HS 模式接收操作。

图5至图16是本应用笔记中实现的FS模式(图3)和HS模式(图4)I²C帧的示波器。通道 1 是 SCL,通道 2 是所有瞄准镜镜头的 SDA。

I²C总线

图5.所有I²C通信的完整帧(FS模式和HS模式操作)。

I²C总线

图6.FS 模式操作,字节 1(start + Addr = 0x6A + ACK)。

I²C总线

图7.FS 模式下的 SCL 时钟频率约为 400kHz。

I²C总线

图8.FS 模式操作,字节 2(conf 字节 = 0x61 + ACK)。

I²C总线

图9.FS 模式操作,字节 3(设置字节 = 0xFA + ACK)。

I²C总线

图 10.FS模式操作,停止和开始下一个操作(停止和启动)。

I²C总线

图 11.FS 模式操作,字节 4(主代码 = 0x0F + NACK)。

I²C总线

图 12.HS模式操作,重复启动。

I²C总线

图 13.HS 模式操作,字节 5(Addr = 0x6B + ACK)。

I²C总线

图 14.HS 模式下的 SCL 时钟频率约为 1.7MHz。

I²C总线

图 15.HS 模式操作,字节 6(数据 = 0xFB + ACK)。

I²C总线

图 16.HS 模式操作,字节 7(数据 = 0xBB + NACK + FS 停止)。

高速I²C的规范自2000年1月起就已经存在。尽管如此,目前很少有微控制器具有内部高速I²C外设。这是一个不幸的情况,因为ADC、DAC、编解码器甚至电源等多种器件被设计为支持高速I²C接口。本应用笔记提供了一个急需的工作高速I²C示例。

审核编辑:郭婷

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分