坛友wangfuchong对于XT1使用外部晶振专门做了实验,我也专门又做了一次
用了2块MSP430都是2553,就叫做A和B吧
A板:产生1MHz时钟,我用的导线直接连过去就,所以没有把频率设置的非常高,但是1MHz足以说明问题。从SMCLK(P1.4)管脚输出
B板:Xin管脚接收A板的时钟,并在SMCLK(P1.4)和ACLK(P1.0)输出。
下面是A板代码:
copy进来的时候,头文件没显示出来
我在这儿:
#include
- void main(void)
- {
- WDTCTL = WDTPW +WDTHOLD; // Stop Watchdog Timer
- if (CALBC1_1MHZ ==0xFF || CALDCO_1MHZ == 0xFF)
- {
- while(1); // If calibration constants erased
- // do not load, trap CPU!!
- }
- BCSCTL1 = CALBC1_1MHZ; // Set range
- DCOCTL = CALDCO_1MHZ; // Set DCO step + modulation */
- P1DIR |= 0x10; // P1.4 outputs
- P1SEL |= 0x10; // P1.4 SMCLK output
- while(1)
- {
- }
- }
B板代码:
copy进来的时候,头文件没显示出来
我在这儿:
#include - #include
- void main(void)
- {
- WDTCTL = WDTPW +WDTHOLD; // Stop Watchdog Timer
- BCSCTL2 = SELS ;
- BCSCTL3 = LFXT1S_3;
- P1DIR |= 0x11; // P1.4 outputs
- P1SEL |= 0x11; // P1.4 SMCLK output
- while(1)
- {
- }
- }
用两台示波器都做了实DPO2024 200M带宽和TDS1002B(1Gs/s 60M) 主要DPO截图方便
这个图是通道1:A板SMCLK输出 通道2:B板SMCLK输出 没有时钟中断的情况
这个图是通道1:A板SMCLK输出 通道2:B板SMCLK输出 可以看到显示频率有些不同,主要是不能稳定触发,单独测没有问题
下面我继续上手机拍的,这个是TDS1002,USB口被我拿来供电了,没有看到明显的时钟间断情况
这个通道1:B板的P1.0(ACLk)
这个通道2:B板的P1.4(SMCLK)
实验情况基本就是这样,实验进行比较简单,大家都可以试试
[
本帖最后由 wstt 于 2013-2-3 21:24 编辑 ]