使用FR5989 ,时钟如下配置:
WDTCTL = WDTPW + WDTHOLD; //close the watchdog of the mcu
CSCTL0 = CSKEY; //password // Unlock CS registers
CSCTL1 = DCOFSEL0 + DCOFSEL1; // Set DCO to 8MHz
CSCTL2 = SELA__LFXTCLK | SELS__DCOCLK | SELM__DCOCLK;// MCLK=DCO; SMCLK=DCO
//CSCTL2 = SELA__LFXTCLK | SELS__MODCLK | SELM__MODCLK;// MCLK=DCO; SMCLK=DCO
CSCTL3 = DIVA__1 | DIVM__1 | DIVS__1; // Divide DCO/1; MCLK = 8MHZ
CSCTL0_H = 0; // Lock CS registers
PM5CTL0 &= ~LOCKLPM5; //unlock IO
下图为IO模拟的时序,非常之慢。。不知道时钟出了什么问题

Jacky Xu:
你模拟的什么?想把时钟分别配成什么样?
参考下我们例程啊 MCLK SMCLK都是8M DCO, ACLK 是VLO是这么配。你要是跑16MHz那需要先配置等待周期
// Disable the GPIO power-on default high-impedance mode to activate // previously configured port settings PM5CTL0 &= ~LOCKLPM5;
// Clock System Setup CSCTL0_H = CSKEY >> 8; // Unlock CS registers CSCTL1 = DCOFSEL_6; // Set DCO to 8MHz CSCTL2 = SELA__VLOCLK | SELS__DCOCLK | SELM__DCOCLK; // Set SMCLK = MCLK = DCO // ACLK = VLOCLK CSCTL3 = DIVA__1 | DIVS__1 | DIVM__1; // Set all dividers to 1 CSCTL0_H = 0; // Lock CS registers
你的龙猫:
回复 Jacky Xu:
我是IO模拟的SPI时序,从示波器看时序,太慢了
时钟就是DCO 8MHZ
按照你的方法配置了,还是一样慢,不知道哪里出问题了,前几天还正常的,最近不知道改了什么东西,成这样了
灰小子:
回复 你的龙猫:
可能dco配置出问题了,方便把完整的程序上传一下吗?
或者你把MCLK、SMCLK通过io输出,观察一下是不是真是8MHz
TI中文支持网



