This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TIDA-00663:激光雷达设计中的问题

Guru**** 2543780 points
Other Parts Discussed in Thread: TIDA-00663, ENERGIA, UCC27321, SN74LVC2G14

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/simulation-hardware-system-design-tools-group/sim-hw-system-design/f/simulation-hardware-system-design-tools-forum/686498/tida-00663-problems-in-lidar-design

器件型号:TIDA-00663
主题中讨论的其他器件: EnergiaUCC27321SN74LVC2G14

大家好、

我最近开始实施 TIDA-00663 LIDAR 参考设计、 我遇到了一些障碍、下面进行了列举:

1) 1) ext_15V 的功能是什么? 我没有看到到这个引脚的任何连接。

2)关于激光驱动器(UCC27321D)、我遇到了巨大的问题。 首先、我只焊接电路的 TX 部分(下图)、当我将其连接到外部 Vcc_laser = 10V (电源)时 、保持 ENBL 悬空(内部上拉)、基本上会过热并释放白烟。 我可以假设它烧坏了。 我已经验证了所有引脚均已正确连接。 此外、当使用连接到 TIDA-00663的 MSP430F5529LP 时、如果我将 Vcc_laser 连接到电路板+5V 引脚等、则电路板会自动从 PC 上断开连接。 有人能帮助我了解出了什么问题吗? 我是否缺少某些内容或做得不正确?

3) 3)是否有任何 C++或 C 代码用于使用纳秒脉冲触发激光器? 我使用了 Energia,但 digitalWrite()速度太慢,引入了大约1-2us 的延迟,我发现的解决方案是在较低的级别进行编程。 这是我的代码:

#define Arduino_main

#include "wiring_prive.h"
#include "PINS_Energia.h"

#define nop __asm____volatile__("nop\n\t");//定义 nop (无操作)指令,仅浪费1个时钟周期(1/25MHz = 40ns)

#define BP_TRIG P2_0 //激光触发信号
#define BP_GPIO_EN P7_4 // UCC27321 (MOSFET 驱动器)使能
#define STOP P2_1
//按下此按钮时,触发信号通过进入无限循环而停止;要退出循环,必须按下 RST (S3)按钮,这将重新启动触发信号
#define LED P1_0 //在触发停止时开启

unsigned int T_pulse = 100;//T_puls=1/PRR 必须保证 Duty_cycle < 0.1%(激光限值)

void my_digitalWrite (uint8_t pin、uint8_t val)//预定义函数引入了太多的延迟

uint8_t 位= digitalPinToBitMask (pin);
volatile uint8_t * out = portOutputRegister (digitalPinToPort (pin));
(Val ==低电平? *out &=~位:*out |=位);//替换 if 语句-查看是否更快

void setup(){
PinMode (BP_TRIG、OUTPUT);//将两个引脚定义为输出
引脚模式(BP_GPIO_EN、输出);
引脚模式(STOP、INPUT_PULLUP);//激活停止按钮
引脚模式(LED、输出);
digitalWrite (BP_GPIO_EN、HIGH);//启用驱动程序
my_digitalWrite (BP_TRIG、LOW);//激光关闭
attachInterrupt (STOP、TRIG_STOP、FALLING);//按下按钮时会触发中断
my_digitalWrite (LED、LOW);//启用驱动程序

void loop(){
delayMicroseconds (T_pulse);//以微秒为单位的关闭周期
my_digitalWrite (BP_TRIG,HIGH );
NOP;//每个 nop 引入~40ns 延迟@ 25MHz
my_digitalWrite (BP_TRIG、LOW);/

void trig_stop ()

my_digitalWrite (BP_GPIO_EN、LOW);//启用驱动程序
my_digitalWrite (BP_TRIG、LOW);//激光关闭
my_digitalWrite (LED、高电平);
while (true){}//无限循环、直到按下 RST (S3)按钮

4) 4)施密特触发器 SN74LVC2G14或类似器件是否有 SPICE 模型? 或者是否有任何其他模拟方法 ?

提前感谢、

Joaquim

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Joaquim、

    关于第四个问题、您可以使用附加电路来仿真 SN74LVC2G14。 您可以设置 TPLH 和 tphl。

    希望这对您有所帮助。

    谢谢

    Giovanni

    e2e.ti.com/.../8875.Sim.TSC

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的、确实如此。

    非常感谢 Giovanni。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    焊接时的引线温度是否会影响 UCC27321的功能?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Joaquim、

    根据 UCC27321的数据表、10s 的最大引线温度为300 C。 如果低于该值、则应该正常。

    谢谢
    GIO