• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

【代码库】在MCX上进行I3C 温度传感器演示

09/01 11:36
1200
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

dm-i3c-temperature-sensor-main.zip

共1个文件

在MCX上进行I3C 温度传感器演示

  • 此示例代码演示了使用 P3T1755 温度传感器和 MCX 微控制器MIPI I3C 总线操作。
  • MIPI I3C 总线是一种串行总线,通过两线信号进行高速率数据传输。该协议与 I?C 类似,但具有一些扩展功能,例如动态地址分配 (DAA)、带内中断 (IBI) 等。
  • 作为I3C的目标设备,使用P3T1755。
  • P3T1755 是一款温度数字转换器,工作温度范围为 -40 °C 至 +125 °C。它采用片上带隙温度传感器和模数转换技术,并具有过温检测功能。该器件包含多个配置和数据寄存器,用于存储器件设置(例如器件工作模式),以及一个温度寄存器 (Temp),用于存储数字温度读数,控制器可以通过双线串行 I3C(最高 12.5 MHz)和 I2C(最高 3.4 MHz)接口传输该读数。有关 P3T1755 的详细信息,请参阅其数据手册。
  • 使用了一个 MCU 抽象库:r01lib。该库通过简单的 API 演示串行总线和 GPIO 引脚的操作,方便您轻松编写演示代码。这些 API 的灵感源自 Arm Mbed SDK。此库作为示例代码的一部分分发。
    • 包含r01lib在 的图书馆项目中_r01lib_frdm_mcx*
    • 所有源代码均可在_r01lib_frdm_mcx*/source/文件夹中找到。
    • 文件可在_r01lib_frdm_mcx*/r01lib_docs/文件夹中找到。
    • r01device也包含在此库中。这r01device是一个类驱动程序集合,用于通过简单的 API 呈现外围设备。

主板:FRDM-MCXN947、FRDM-MCXA153

类别:传感器

外设:I3C

工具链:MCUXpresso IDE

目录

  1. 软件
  2. 硬件
  3. 设置
  4. 结果
  5. 常见问题解答
  6. 支持
  7. 发行说明

1.软件

2.硬件

3. 设置

3.1 - 步骤 0:连接硬件

  • 通过 USB 电缆将 FRDM-MCXN947 或 FRDM-MCXA153 板连接到 PC
  • (选项)将 I3C 信号连接到示波器
    • FRDM-MCXN947:SDA=J5-3,SCL=J5-4
    • FRDM-MCXA153:SDA=J20, SCL=J21)

3.2 - 步骤 1:下载并安装所需软件

3.3 - 步骤 2:从 APP-CODE-HUB 下载代码并导入

  • 启动 MCUXpresso IDE 并创建一个新的工作区
  • 下载 zip 文件并将其存储在用户的电脑上
  • 转到“快速启动面板”并单击“从文件系统导入项目”





?注意?:如果您使用的是 MCUXpresso SDK v2.14.x,IDE 将显示错误消息“未找到 SDK v2.16,它将使用 v2.14.x”。这是预期消息,您只需按“确定”按钮即可使用代码。每个项目都会显示此消息。每次按“确定”按钮即可。

?注意?:即使您使用 MCUXpresso SDK v2.16.0,也可能会弹出选择 SDK 的对话框。在这种情况下,用户可能无需选择 SDK 版本。点击“OK”按钮即可关闭所有项目都会显示的对话框。

3.4 - 步骤 3:构建并运行

  • 在左上窗格的“项目资源管理器”面板中选择P3T1755_FRDM_MCXN947_demo或项目P3T1755_FRDM_MCXA153_demo
  • 单击“快速启动面板”中的“调试”图标或图标工具栏中的“开始调试项目”图标(蓝色虫子图标)
  • IDE 将找到 MCU 板并从启动的“main()”函数恢复程序
  • 按“继续”按钮从那里继续





4.结果

  • 温度值显示在 MCUXpresso IDE 的终端面板(中下窗格)上
  • LED闪烁颜色随温度而改变

  • 用手指触摸P3T1755加热或用吹风机、冷却屏观察数值变化
  • 在启用 IBI 的示例中,IBI 事件将显示在终端面板中。触发 IBI 的默认设置是温度比程序启动时高 2 摄氏度(THIGH 寄存器设置为 Tprogramstart + 2 摄氏度)。当温度降至 Tstart + 1 摄氏度时,IBI 将再次触发。
  • 探测 I3C 信号并确认波形。在启用 IBI 的示例中,D2 引脚在 IBI 事件发生时向示波器输出触发信号(下降沿)。

5. 项目(本仓库的内容)

此示例包含以多种方式演示 I3C 的项目。
下一个列表展示了这些项目及其功能。

| 项目名称 | 目标板 | 目的 | I3C操作 | LED 操作 | 伊比利亚 | 直接抗癌剂 |
| ------------------------------- | -------------- | ---------------------------------- | --------- | ---------- | ---------- | -------------- |
| P3T1755FRDMMCXA153演示 | FRDM-MCXA153 | 具有 LED 闪烁颜色变化的 I3C 演示 | ? | ? | ? | 来自静态地址 |
| P3T1755
FRDMMCXA153演示DAA | FRDM-MCXA153 | 具有 LED 闪烁颜色变化的 I3C 演示 | ? | ? | ? | 动态的 |
| P3T1755
FRDMMCXA153简单 | FRDM-MCXA153 | 展示P3T1755设备类基本操作 | ? | | | 来自静态地址 |
| P3T1755FRDMMCXA153基本操作 | FRDM-MCXA153 | 展示 I3C 类基本操作 | ? | | | 来自静态地址 |
| P3T1755
FRDMMCXN947演示 | FRDM-MCXN947 | 具有 LED 闪烁颜色变化的 I3C 演示 | ? | ? | ? | 来自静态地址 |
| P3T1755FRDMMCXN947演示DAA | FRDM-MCXN947 | 具有 LED 闪烁颜色变化的 I3C 演示 | ? | ? | ? | 动态的 |
| P3T1755FRDMMCXN947简单 | FRDM-MCXN947 | 展示P3T1755设备类基本操作 | ? | | | 来自静态地址 |
| P3T1755
FRDMMCXN947基本操作 | FRDM-MCXN947 | 展示 I3C 类基本操作 | ? | | | 来自静态地址 |
| r01libfrdmmcxa153 | FRDM-MCXA153 | 应用程序项目链接的库 | | | | |
| _r01lib
frdm_mcxn947 | FRDM-MCXN947 | 应用程序项目链接的库 | | | | |

注意: "项目_r01lib_*是库。这些代码不能单独执行

6. 常见问题

  • 如何操作带有 FRDM-MCX N947的 P3T1755DP-ARD ?
    • 对于 FRDM-MCXN947,需要通过 4 线连接 P3T1755DP-ARD。通过此连接,两个 P3T1755 温度传感器连接到 I3C 总线。Arduino 扩展板的 P3T1755 的 I?C 静态地址为0x4C
    • 按照下一个示例修改代码,为 Arduino-shield 板上的 P3T1755 提供 I3C 动态地址。例如,在 中P3T1755_FRDM_MCXN947_demo/source/main.cpp,可以按照下一个示例进行操作。
      ```c++

      include "r01lib.h"

      include "pin_control.h"

      include "temp_sensor/P3T1755.h"

      include

      undef P3T1755ADDRI2C // <-- ADD THIS LINE

      define P3T1755ADDRI2C 0x4C // <-- ADD THIS LINE

      I3C i3c( I3CSDA, I3CSCL );
      P3T1755 p3t1755( i3c, P3T1755ADDRI2C );
      ```

  • 如何操作带有 FRDM-MCX A153的 P3T1755DP-ARD ?
    • 对于 FRDM-MCXN153,P3T1755DP-ARD 可以直接放在 Arduino-shield 插座上。
    • 修改下一个示例中的代码,重新布线 D18 和 D19 上的 I3C 线(FRDM-MCXA513 上 J2 的 18 和 20 引脚,P3T1755DP-ARD 上 J5 的 9 和 10 引脚)。在此设置下,I3C 总线通过电压电平转换器 NTS0304 进行操作。NTS0304 会加速开漏信号的上升时间,但 I3C 仍可正常工作。
      c++
      //I3C i3c( I3C_SDA, I3C_SCL ); // REPLACE THIS LINE TO NEXT
      I3C i3c( I2C_SDA, I2C_SCL ); // USE I2C_SDA and USE I2C_SCL ("3" → "2")
  • 将项目导入 Visual Studio Code (VSC)
    使用 MCUXpresso for VS Code 1.10 或更高版本正确导入项目。

7. 支持

项目元数据

董事会徽章 董事会徽章

类别徽章 类别徽章

周边徽章 周边徽章

工具链徽章

有关此示例的内容/正确性的问题可以作为此 GitHub 存储库中的问题输入。

来源:恩智浦appcodehub

  • dm-i3c-temperature-sensor-main.zip
    下载
恩智浦

恩智浦

恩智浦半导体创立于2006年,其前身为荷兰飞利浦公司于1953年成立的半导体事业部,总部位于荷兰埃因霍温。恩智浦2010年在美国纳斯达克上市。恩智浦2010年在美国纳斯达克上市。恩智浦半导体致力于打造全球化解决方案,实现智慧生活,安全连结。

恩智浦半导体创立于2006年,其前身为荷兰飞利浦公司于1953年成立的半导体事业部,总部位于荷兰埃因霍温。恩智浦2010年在美国纳斯达克上市。恩智浦2010年在美国纳斯达克上市。恩智浦半导体致力于打造全球化解决方案,实现智慧生活,安全连结。收起

查看更多

相关推荐