打印

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

[复制链接]
800|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
helloxieyu|  楼主 | 2017-2-26 21:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
                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,使能捕获比较中断
}

相关帖子

沙发
helloxieyu|  楼主 | 2017-2-27 09:08 | 只看该作者
还没解决啊,哪位大神用过F2132啊

使用特权

评论回复
板凳
helloxieyu|  楼主 | 2017-2-27 10:57 | 只看该作者
回复老大;现在ACLK管脚有32.768时钟输出了;原因是我管脚初始化时内部下拉了P2.0管脚(即ACLK管脚),不设置就可以ACLK管脚输出时钟了;
但是,设置1秒定时中断,跑了10分钟还是慢了4分钟左右;不知道哪里有问题;

使用特权

评论回复
地板
dirtwillfly| | 2017-2-27 21:38 | 只看该作者
能否上传下完整代码?这一部分看不出问题。
另外建议对比两个msp430的时钟系统图,不同的系列可能会略有差异

使用特权

评论回复
5
chuntian2016| | 2017-2-27 22:15 | 只看该作者
接有外部32K的晶振的,,可以很方便的做很多功能设计方案的。

使用特权

评论回复
6
vibra2016| | 2017-2-27 22:52 | 只看该作者
这个外部的32K晶振的要比较精确的最好

使用特权

评论回复
7
fentianyou| | 2017-2-28 21:13 | 只看该作者
怎么不使用12Mhz的晶振。

使用特权

评论回复
8
fentianyou| | 2017-2-28 21:17 | 只看该作者
32K还能是有源时钟?

使用特权

评论回复
9
updownq| | 2017-3-2 22:42 | 只看该作者
helloxieyu 发表于 2017-2-27 09:08
还没解决啊,哪位大神用过F2132啊

时钟信号测量了吗

使用特权

评论回复
10
updownq| | 2017-3-2 22:48 | 只看该作者
helloxieyu 发表于 2017-2-27 10:57
回复老大;现在ACLK管脚有32.768时钟输出了;原因是我管脚初始化时内部下拉了P2.0管脚(即ACLK管脚),不设置 ...

可以使用有源晶振。

使用特权

评论回复
11
232321122| | 2017-3-5 16:45 | 只看该作者
使用示波器测量信号了吗

使用特权

评论回复
12
232321122| | 2017-3-5 16:47 | 只看该作者
使用定时器输出信号测试过了吗

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

48

帖子

2

粉丝