[求助] msp430 DCO外接电阻(ROSC)设置频率 无效 求助

sunchyuyu   2013-8-11 10:58 楼主
此为TI官网例程,msp430f2618 DCO外接电阻(ROSC)设置频率,用IAR编译,430仿真器JTAG口下载仿真,单步调试到标志处(如下代码黄色背景)处程序跑飞,不能继续,实在不明白为什么,求高手知道。
(代码说明中下滑线处说这可能影响到JTAG重新建立链接的能力,不知问题是否在此,应如何解决?)


//******************************************************************************
//  MSP430F26x Demo - DCOCLK Biased with External Resistor Rosc
//
//  Description: Use external resistor on P2.5 as DCO current source. DCOCLK
//  is used by default as the MCLK source and this is buffered on P5.4.
//  Mainloop drives a 10 cycle software loop toggling P1.1. Measure DCOCLK/10
//  on P1.1. Example also disables XTAL buffer. Use of external resistor reduces
//  temperature sensitivity of DCOCLK.
//  NOTE: With no resistor conencted, the oscillator will stop. Also, in this
//  case, the ability of re-establishing JTAG connectivity may be affected.
//
//  DCOCLK Frequency using DCO = 3 and RSEL = 4 values @ 3V
//  R=100K -> ~2MHz (See device datasheet)
//
//               MSP430F261x/241x
//            -----------------
//   /|\  /|\|              XIN|-
//    |    | |                 |
//    R    --|RST          XOUT|-
//    |      |                 |
//    -------|P2.5/ROSC    P1.1|-->DCOCLK/10
//           |        P5.4/MCLK|-->MCLK = DCOCLK
//
//  B. Nisarga
//  Texas Instruments Inc.
//  September 2007
//  Built with CCE Version: 3.2.0 and IAR Embedded Workbench Version: 3.42A
//******************************************************************************
#include "msp430x26x.h"

void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT
  P1DIR |= 0x02;                                               // P1.1 = output direction


  BCSCTL2 |= DCOR;                                         // Rosc


  BCSCTL1 &= ~(RSEL1 + RSEL0);                    // RSEL = 4

  P5DIR |= 0x010;                                             // P5.4= output direction
  P5SEL |= 0x010;                                             // P5.4= MCLK option select

  __bis_SR_register(OSCOFF);                            // XTAL not used

  while(1)                                                            // 10 MCLK (= DCOCLK) cycle loop
  {
    P1OUT |= 0x02;
    P1OUT &= ~0x02;
  }
}
file:///C:\Users\sunchy\AppData\Roaming\Tencent\Users\493807864\QQ\WinTemp\RichOle\V~H_11WVHN{GRQ2%C5MYA0K.jpg

回复评论 (4)

接的是多大的电阻啊?
点赞  2013-8-12 09:47

回复 沙发柠檬酸钠 的帖子

我接了2K,看说明说上100K以上,不过程序单步调试运行到标志处就不走了
点赞  2013-8-13 00:03
那就按照说明书上写的改为100K以上。
点赞  2013-8-13 06:22
看这个吧


3333.png (31.15 KB)
(下载次数: 53, 2013-8-13 14:59 上传)
点赞  2013-8-13 14:59
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复