共2条
1/1 1 跳转至页
149,P5,SMCLK 用149的P5.5做SMCLK的问题
问
晶体选择XT2,8M,4分频。有时能在SMCLK输出上得到2M的信号,但大部分是不到1k的信号,设置没有错误,不知是什么原因?会不会是MSP430内部设计的缺陷?
答 1:
电容是否匹配?
答 2:
SMCLK信号是没问题的,因为我也用它做串口时钟,串口正常。
答 3:
能不能贴出程序?
答 4:
程序很简单:
BCSCTL1 &= ~XT2OFF ; // XT2on
do // 等待晶振开始工作
{
IFG1 &= ~OFIFG; // Clear OSCFault flag
for (ci=0xFF; ci>0; ci--) ; // Time for flag to set
}while ( (IFG1&OFIFG)!=0 ) ; // OSCFault flag still set?
// BCSCTL2 |= SELM1 + SELS ; // MCLK = SMCLK = XT2
BCSCTL2 = 0x8c ; // MCLK=XT2, SMCLK=XT2/4
// 各端口初始化
P1DIR = 0x60 ;
P2DIR = 0xff ;
P3DIR = 0x4f ;
P4DIR = 0xff ;
P5DIR = 0x20 ;
P5SEL = 0x20 ;
请大家帮忙分析一下 答 5: 是否和外部电路有关? 我外部接的是AD7705,用SMCLK作为AD7705的时钟。我发现AD7705在3.3V时晶体振荡的最高电压不到2.5V,AD7705不工作。 答 6: gogollx 兄,问题解决没?我想知道结果。
BCSCTL1 &= ~XT2OFF ; // XT2on
do // 等待晶振开始工作
{
IFG1 &= ~OFIFG; // Clear OSCFault flag
for (ci=0xFF; ci>0; ci--) ; // Time for flag to set
}while ( (IFG1&OFIFG)!=0 ) ; // OSCFault flag still set?
// BCSCTL2 |= SELM1 + SELS ; // MCLK = SMCLK = XT2
BCSCTL2 = 0x8c ; // MCLK=XT2, SMCLK=XT2/4
// 各端口初始化
P1DIR = 0x60 ;
P2DIR = 0xff ;
P3DIR = 0x4f ;
P4DIR = 0xff ;
P5DIR = 0x20 ;
P5SEL = 0x20 ;
请大家帮忙分析一下 答 5: 是否和外部电路有关? 我外部接的是AD7705,用SMCLK作为AD7705的时钟。我发现AD7705在3.3V时晶体振荡的最高电压不到2.5V,AD7705不工作。 答 6: gogollx 兄,问题解决没?我想知道结果。
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |