采用MAXQ2000实现与MAX1169的高速I²C接口的办法

元器件信息   2023-08-15 10:11   342   0  

MAX1169  点击型号即可查看芯片规格书 


芯片规格书搜索工具-icspec


MAX1169是一款16位低功耗ADC,具有1.7MHz高速I²C兼容串行接口。MAX1169支持快速模式(400kHz)和高速模式(高达1.7MHz)。

硬件说明


本应用笔记使用了  MAX1169的评估(EV)板  和  MAXQ2000评估板  。MAX1169的评估板包含MAX1169、所需的全部无源器件以及经过验证的PCB布板。评估板电路如图1所示。MAX1169的评估板并不带有MAXQ2000微控制器;系统通过SCL、SDA以及GND将MAXQ2000评估板和MAX1169的评估板相连。此外,分别将DVDD和AVDD连接到+3.3V和+5V电源。

7937_rt2v_1747.gif
图1. MAX1169的评估板原理图


MAX1169的引脚排列可以很方便地实现模拟部分和数字部分的隔离。IC右侧的引脚8至引脚13的模拟部分共地,而IC左侧的引脚1至引脚7的数字部分共地。引脚14也是数字部分,但可以很容易地实现与IC左侧的部分共地。图2给出了元件放置的示例。为了实现最佳性能,推荐设计人员采用独立的模拟地和数字地,如图3所示。在靠近MAX1169的地方通过磁珠将两个地平面连接在一起。采用诸如TDK的MMZ1608B601C的磁珠将两个地平面连接在一起,防止微控制器的系统时钟以及其谐波进入模拟地。已知MAXQ2000的系统时钟为20MHz,MMZ1608B601C根据其指定的阻抗和频率特性选择。图4给出了MMZ1608B601C的阻抗与频率的关系。

7937_gxyx_2942.gif
图2. MAX1169的评估板元件布局


7937_gchf_4754.gif
图3. MAX1169的评估板采用独立的模拟地和数字地


7937_oatk_4408.gif
图4. MMZ1608B601C磁珠阻抗与频率的对应关系


MAXQ2000评估板包含完整的软件、硬件、代码范例以及MAXQ2000微控制器入门设计所需的文档。评估板数据资料还给出了MAXQ2000评估板的电路图。

固件说明

固件例程采用Rowley CrossWorks IDE Version 1.0开发。Maxim网站提供了Rowley Cross Works以及第三方MAXQ 微控制器开发工具。

CrossWorks主源文件(main.c)初始化MAXQ2000的UART,从hsi2c.asm调用高速I²C读函数,并且通过串口发送MAX1169的采样数据。所有串行端口程序,例如TeraTerm可以用于查看PC上的范例。

hsi2c.asm文件采用汇编编写,是高速I²C固件的驱动。汇编程序例程通过MAXQ2000的通用输入/输出(GPIO)端口逐位控制高速I²C接口,获取来自MAX1169的采样结果。MAXQ2000的20MHz系统时钟允许逐位控制的高速I²C接口速率高达1.7MHz。

hsi2c.asm文件应该在驱动器使能以前对其进行配置。

  1. 编辑I2C_ADDR定义状态,改变器件的I²C地址。例如,0x7F地址的编码为:

    I2C_ADDR7 equ 0
     I2C_ADDR6 equ 1
     I2C_ADDR5 equ 1
     I2C_ADDR4 equ 1
     I2C_ADDR3 equ 1
     I2C_ADDR2 equ 1
     I2C_ADDR1 equ 1
  2. 假定系统时钟为20MHz (MAXQ2000晶振)的源代码。

    下载:  源代码  (ZIP, 10.5kB)

结论

高速I²C的规范早在2000年1月就已经提出,然而,至今为止很少有微控制器带有高速I²C外设。因为很少有器件,例如ADC、DAC、CODEC甚至电源电压专门设计支持高速I²C接口。本应用笔记给出了实际应用更广泛的高速I²C例程。


登录icspec成功后,会自动跳转查看全文
博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。