请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:TIDA-00663 主题中讨论的其他器件: MSP430FR5969、 TDC7200、 OPA857
您好!
在 TIDA-00663参考设计中、我一直使用从 MSP430FR5969到 TDC7200的16MHz 外部时钟源。
但是、我刚刚注意到、在 OPA857输出端、有一个频率相同的16MHz 振荡。
请注意、PCB 板仅具有系统的检测部分、即以下部分未焊接:
我用于设置 OPA857和 TDC_CLK 的代码如下:
#include
#include
#define nop __asm____volatile__("nop\n\t"); //没有浪费1个 CLK 周期(1/16MHz=62.5ns)
的操作指令 void setup(){ //设置系统
// WDTCTL = WDTPW | WDTHOLD; //停止看门狗定时器=>影响串行通信
PM5CTL0 &&~LOCKLPM5; //禁用 GPIO 上电默认阻抗模式以激活先前配置的端口设置
// P3.4 (专用引脚)中的输出 SMCLK、频率与 F_CPU=16MHz (TDC 的最大值)相同- TDC_CLK
P3DIR |= 0x10; //将 P3.4设置为输出
P3SEL1 |= 0x10; //选择 SMCLK 函数(MSP430FR5969数据表中的表6-57)
//设置 OPA
P3DIR |= 0b01100000; //在 CTRL 引脚 P3.5 (5k_GAIN_SETing_BP9_P3.5)中设置 OPA857 (TIA)增益、在 P3.6
P3OUT &=~0x20中设置 TEST_MODE; //如果 TIA_GAIN = 5 => P3.5 ='0'、如果 TIA_GAIN = 20 => P3.5 ='1'
P3OUT &=~ 0x40; //在 P3.6中禁用测试模式(tprop_calibration_enable_BP10_P3.6 <=> Test_SD 写入到'0')
}
void loop(){ //重复运行的代码
nop; //此处不会发生任何情况,当 TDC 完成时,中断被激活
nop;
}
因此、我将以下信号分别作为时钟和 OPA 输出。 应该注意的是、如果我将 OPA 增益增加到20kOhm、输出振荡自然也会被放大。
如果有人能帮助找到消息来源、我会很感激。
提前感谢、
Joaquim


