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.

[参考译文] MSP430G2553:MSP 自动复位

Guru**** 2204280 points
Other Parts Discussed in Thread: CC2650, MSP430G2553, TRF7970A
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/603324/msp430g2553-msp-getting-reset-automatically

器件型号:MSP430G2553
主题中讨论的其他部件:CC2650TRF7970A

您好!

我们正在开发库存更新系统、其中 MSP430G2553 + TRF7970A 用于读取 RFID 标签、CC2650用于将标签详细信息更新到移动应用。

我们遵循了该参考设计并设计了我们的定制板。

电路板根据需要工作正常、但问题仅在于、MSP 会在读取标签时自动复位、并且会随机发生。

下面是 MSP + TRF 电路的原理图  

我们只是有一个疑问、可能是由于使用振荡器的许多功能、我们缺少了一些与振荡器相关的东西。

发布相关代码的块、我们将在其中初始化每个功能的频率。

MSP 振荡器校准:

void
McuOscSel (void)
{
//如果

(CALBC1_8MHZ!= 0xFF)
{
//遵循建议的流程,则选择 DCO 为8MHz。 首先、清除所有 DCOx 和 MODx 位。
//然后应用新的 RSELx 值。 最后、应用新的 DCOx 和 MODx 位
//值。
DCOCTL = 0x00;
BCSCTL1 = CALBC1_8MHZ;
DCOCTL = CALDCO_8MHZ;
}

//禁用 XT1引脚
P2SEL &=~(BIT6 + BIT7);

//禁用 XT1高频模式、ACLK = 12kHz/4 = 3kHz
BCSCTL1 &=~μ S



| BCL1

= 2;
//将 TXTCL1设置为1 | BCSCTL1 + BCL1 + BCL1;//返回到1 TCL1 | 2;/ 2

SPI 配置:

void
SpiUCsciSet (void)//使用 USCI_B0
{
UCB0CTL1 |= UCSWRST;//启用软件复位
UCB0CTL0 |= UCCKPH + UCMSB + UCMST + UCSYNC;// 3引脚8位 SPI 主
器件 UCB0CTL0 &=~UCCKPH | UCC0BR0




+ UCS0BR0;// UCB0BR0 = UCB0 | UCB0 + UCB0 | UCB0BR0 = UCB0 // P1.5、1.6、1.7 UCBOCLK、UCB0SIMO、UCB0SOMI,选项选择
P1SEL2 |= BIT5 + BIT6 + BIT7;// P1.5、1.6、1.7 UCBOCLK、UCB0SIMO、UCB0SOMI,选项选择

SLAVE_SELECT_SET;//选择 UCS2.1**


~从机/ UCB0SIMO;//选择 UCB0ST_UCTL1高电平从机/ UCB0SIMO;//选择 UCB0SIMO;// UCB0SIMO;// UCB0ST_RESULSE = UCTL1**选择 UCB0ST_INST_RESUCTL UCT

UART 初始化:

void
UartSetup (void)//使用 USCI_A0
{
//修改为在-G2553 LaunchPad
P1SEL 上使用 eZ430-RF256x |=(BIT2 + BIT1);// P1.2=TXD
//这仅用于 TX…… (将板载 P1.1上的 TX 和 RX 短接至 P1.2)
P1SEL2 |=(BIT2 + BIT1);// P1.2=TXD

UCA0CTL1 |= UCSWRST;//禁用 UART

UCA0CTL0 = 0x00;

UCA0CTL1 |= UCSSEL_2;// SMCLK

UCA0TR1
= 0x00

;// UCA01150 = 0x00;UCA0BR0 = 0x200;// SMCLK = UCA0BR0 = 0xBCA0 = 0x200 //调制 UCBRSx = 2

UCA0CTL1 &=~UCSWRST;//初始化 USCI 状态机
UC0IE |= UCA0RXIE;
} 

TimerA 初始化:

void

McuCounterSet (void)
{
TACTL |= tassel_1 + TACLR;// ACLK = 1.5kHz,计时器停止

TACCTL0 |= CCIE;//比较中断使能
}

谢谢你

此致、

Maddineni

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

    你好,Maddineni!

    变速器启动时、您是否查看了电源轨和复位线路(示波器)? 可能有压降导致复位?

    Dennis

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

    我们没有观察到电源轨中有任何压降、但我们在复位引脚上看到的电压为1.9V (不常见? 我们认为它应该是3.3V?) 全部。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用 user="Maddineni"]我们认为它应该是3.3V?

    是的、大约3.3V 的电压-如果只有1.9V 电压、则可能是错误的。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    但是、当我们探测到另一个在复位时具有3.3V 电压的电路板(重置时仅在我们正在努力进行纠正的一个特定电路板中存在1.9V 电压)时、问题仍然存在。

    当电源线和复位线的电压降至2.8V 以下时、我们尝试触发输出、但看不到任何结果。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如何观察电源轨上的压降? 您是否使用了示波器的触发功能? 触发级别是多少?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Robert、

    是的、我们将使用示波器的触发功能。 我们对下降沿使用2.8V 的触发电平。