使用Python脚本将数字发现与I2C设备接口

在本教程中,我们将使用python脚本读取带有I2C接口(LIS35DE)的数字加速度计的数据并以图形方式呈现数据。


库存


步骤1:硬件安装

1.连接接地和Vdd的传感器到数字发现的接地和VIO引脚。

2.传感器类型为双接口、SPI或I2C。应该保持在I2C模式。的CS设备的引脚需要连接到Vdd。

3.芯片有一个可选择的I2C地址;要为地址选择0x38,需要绑定SDO引脚接地

4.SDA和SCL线分别连接到DIO33和DIO32。

5.这些线路应该有合适的上拉电阻连接-电阻已经安装在选定的模块上。


步骤2:脚本

下载的Python脚本将:

1.负载波形SDK

2.连接到数字发现

3.开启传感器的3.3V电源

4.配置I2C接口

要配置演示,用户需要设置总线的工作频率,并选择应该使用数字发现的哪个引脚。

请注意SDK相关数字输出功能,或输入/输出(如I2C接口)从DIO24开始计数通道。di24将被引用为0,di25将被引用为1,等等。

#设置I2C频率和引脚dwf。FDwfDigitalI2cRateSet(hdwf, c_double(1e5)) # 100kHz dwf。# SCL = DIO-32 dwf. txt / /文件编号FDwfDigitalI2cSdaSet(hdwf, c_int(33-24)) # SDA = DIO-33

5.初始化传感器和显示

6.读取传感器数据和更新图形,只要绘图窗口是打开的

来自传感器的每个读操作都是I2C总线上的写-读操作。设备地址被设置为一个完整的操作和wavforms SDK自动维护R/W位。两个数组用于写入和读取数据,用户指定应该写入多少字节,并在重复启动后读取多少字节。在我们的例子中,只写入一个字节。寄存器地址与一个位掩码相结合,表示传感器应该在从总线读取每个字节后增加寄存器地址。然后,从从OUTX寄存器开始的后续寄存器中读取5个字节。读数据包含3个字节,其中X、Y和Z加速数据用两个补码和两个哑字节表示。

dwf。FDwfDigitalI2cWriteRead(hdwf, c_int(address << 1), (c_ubyte*1)REG_OUTX | lis35reid . read_inc), c_int(1), rgRX, c_int(5), byref(iNak))

7.关闭绘图窗口后,请关闭电源并断开与设备的连接


步骤3:运行Demo

在运行脚本之前,请确保所有的连接都是正确的,并将传感器放在一个平面上进行“虚拟水平仪”校准。准备好后,运行脚本。应该出现以下窗口。

窗口的上部呈现生活XYZ的加速度传感器作为时间的函数,而下半部分介绍了实际X和Y加速度作为蓝色星号(*),当传感器在同一方向的脚本启动星号中心——它表现得像一个精神层面。

在关闭窗口后,脚本将关闭传感器并断开与数字发现的连接。


第四步:收尾

使用Digital Discovery和WaveForms SDK可以与具有代表性的数字传感器进行通信。只需稍加努力,就可以测试通信和配置,并提供一个简单的图形界面。一些自动测试程序可用于设计控制。


下一个步骤

有关如何使用数字发现的更多指南,请返回设备资源中心.有关波形的更多信息,请访问波形参考手册.有关技术支持,请访问测试和测量部分Digilent论坛。