[求助] F2274与F2312的外部32K有源时钟输入问题:

helloxieyu   2017-2-26 22:10 楼主
F2274与F2312的外部32K有源时钟输入问题:
                之前一直用F2274+外部32K有源时钟,之后设置1秒定时中断,做了n多板都工作正常;
                由于成本原因换了便宜点的F2312,对比了一下,F2312与F2274的时钟输入管脚都是P2.6,ACLK输出管脚都是P2.0;
                时钟初始化的代码根本不用修改就能编译过去;但是在F2274上很准确的1秒定时中断在F2312上跑就慢了1/4左右;
                于是测试ACLK管脚的时钟输出,发现F2312根本没有输出任何时钟,而F2274上相同的管脚有32K时钟输出;
                代码如下,我实在看不出什么问题,请前辈们指点一下,小弟感谢!
void SetLogicACLK()
{
   BCSCTL3= LFXT1S_3; //选择用外部数字32K时钟源来接到ACLK
//P2.0/ACLK/A0/OA0I0: 要P2.0输出ACLK,P2DIR.x=1,P2SEL.x=1,ADC10AE0.y=0
   P2DIR|=BIT0;
   P2SEL|=BIT0;
   ADC10AE0=0;
   
   CCR0 =32768; //设置捕获/比较寄存器,初始值为32768,对于32768Hz的频率,相当于1s
   TACTL = TASSEL0+MC0+ TACLR; //设置定时器A选择辅助时钟ACLK,MC0=0x0010,使计数模式为增计数 TASSEL0与TASSEL_0是不一样的,不要搞错啊!
   TACCTL0 |=CCIE;//CCTL0 = CCIE; //设置捕获/比较控制寄存器,CCIE=0x0010,使能捕获比较中断
}

回复评论 (5)

77人浏览了呀,就没哪位老大用过F2132吗
点赞  2017-2-27 08:49
回复老大;现在ACLK管脚有32.768时钟输出了;原因是我管脚初始化时内部下拉了P2.0管脚(即ACLK管脚),不设置就可以ACLK管脚输出时钟了;
但是,设置1秒定时中断,跑了10分钟还是慢了4分钟左右;不知道哪里有问题;
点赞  2017-2-27 10:57
芯片应该是MSP430F2132吧,你的F2312搜大半天没找到,觉得不对,你的代码写的不对,TASSEL_1这个选项才是ACLK,自己改下
点赞  2017-2-27 21:56
引用: qwerghf 发表于 2017-2-27 21:56
芯片应该是MSP430F2132吧,你的F2312搜大半天没找到,觉得不对,你的代码写的不对,TASSEL_1这个选项才是AC ...

谢谢版大,已经搞定了,由于忙长时间没来回复,不好意思。
点赞  2017-3-5 22:17
增加知識了 謝謝分享
点赞  2017-3-7 13:57
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复