器件型号:TDC1000-TDC7200EVM
大家好:
我们将 TDC1000-TDC7200EVM 与 Arduino 配合使用 、将超声波读数发送到远程端
连接很简单: TDC1000-TDC7200EVM 板的 UART 引脚连接到 Arduino Mega 上的串行引脚、Arduino 收到的每个信息 都使用无线模块发送。
如果 我将 TDC1000-TDC7200EVM 连接到计算机、我可以这样做、但是每当我断开电路板时、它都会停止读取和发送信息。 我需要它、因为我想将其安装在某个管道上进行测试。
我尝试修改 了 TDC1000-TDC7200EVM 板附带的固件、但结果不是很好。
我所做的是利用 main.c 中使用的 bext_trigger_time int
NEW_TRIGGER_TIME = 0; while (1) { //_bis_SR_register (LPM0_bits + GIE); //输入 LPM0,启用中断 __no_operation(); //用于调试器 USBCommunicationTask(); IF (NEW_TRIGGER_TIME) { NEW_TRIGGER_TIME = 0; IF (TDC1000_MSP430Timer_TDC) MSP430Timer_TDC_TRIGGER_measure (); 其他 TDC_TRIGGER_measure(); __no_operation(); //对于调试器 } }
我意识 到定时器 Timer1具有设置该值的中断服务例程(timer_queue.c、第240行)。 因此、我决定检查硬件计时器是否初始化。 此行将出现在初始化代码中:
TA1CCR0 = INTERVAL_100ms;
我是否可以将该值更改为我希望超声波每30秒触发一次测量的秒数? 为此、我还将 Continuous_trigger_state 变量设置为1。
我遇到的问题是、如果我断开 USB 连接、则不会在之后执行触发。
我应该做的任何其他更改才能使其正常工作?