关于430输出方波

[复制链接]
1605|12
 楼主| rainsinging 发表于 2014-4-9 12:02 | 显示全部楼层 |阅读模式
最近写个430输出一个200Hz的方波,但是频率一直升不上去,周期一直在10us左右,我设1ms的时候都是对的,不知道是不是430有什么限制
    TBCTL |= TBSSEL1 + TBCLR;
    TBCTL |= MC0;
    TBCCR0 = 20;//8M外部晶振
    TBCCTL0 |= CCIE;

__interrupt void TimerB0(void)
{
P1OUT ^= BIT0;
TBCTL &= ~TBIFG;
}
请各位前辈给点意见,谢谢
 楼主| rainsinging 发表于 2014-4-9 13:59 | 显示全部楼层
使用IO口在进中断后取反无法实现这个频率,但是直接使用TIMER的输出口来产生PWM是可行的
dirtwillfly 发表于 2014-4-9 17:50 | 显示全部楼层
rainsinging 发表于 2014-4-9 13:59
使用IO口在进中断后取反无法实现这个频率,但是直接使用TIMER的输出口来产生PWM是可行的 ...

使用TIMER的输出口来产生PWM,你能达到多少HZ
mmuuss586 发表于 2014-4-9 18:57 | 显示全部楼层
定时器位数多少啊?
海中水 发表于 2014-4-10 09:56 | 显示全部楼层
使用IO口是很难达到的,只能使用PWM外设模块做了,应该能满足你的使用要求。
yqhc1216 发表于 2014-4-10 10:26 | 显示全部楼层
用楼主的设置得到的结果

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| rainsinging 发表于 2014-4-10 11:33 | 显示全部楼层
dirtwillfly 发表于 2014-4-9 17:50
使用TIMER的输出口来产生PWM,你能达到多少HZ

我试了500K可以的,再大我还没试
 楼主| rainsinging 发表于 2014-4-10 11:33 | 显示全部楼层
mmuuss586 发表于 2014-4-9 18:57
定时器位数多少啊?

16位的
 楼主| rainsinging 发表于 2014-4-10 11:36 | 显示全部楼层
yqhc1216 发表于 2014-4-10 10:26
用楼主的设置得到的结果

这个结果好令人忧伤啊,怎么出来的,晶振不一样的吧
 楼主| rainsinging 发表于 2014-4-10 12:01 | 显示全部楼层
本帖最后由 rainsinging 于 2014-4-10 12:03 编辑

现在又有一个新的问题,我是要控制那个方波每一秒钟的个数,于是我利用中断来数个数,我200K的时候数的个数都是对的,但是我提到500K的时候,发送的脉冲个数比我预设的值多1倍左右,不知道是什么原因导致的
#pragma vector = TIMERB0_VECTOR
__interrupt void TimerB0(void)
{
    if(count>0)
    {
        count--;
    }
    else
    {
        TBCTL &= ~TBIFG;
        TBCCTL0 &= ~CCIE;
        TBCTL &= ~(MC0+MC1);
    }
    TBCTL &= ~TBIFG;
}

#pragma vector = TIMERA0_VECTOR
__interrupt void TimerA0(void)
{
    loopcount++;
    if(loopcount==1000)//1s
    {
        count=15;
        loopcount=0;
        TBCCTL0 |= CCIE;
        TBCTL |= MC0;
    }
    TACTL &= ~TAIFG;
}
yqhc1216 发表于 2014-4-10 13:06 | 显示全部楼层
rainsinging 发表于 2014-4-10 11:36
这个结果好令人忧伤啊,怎么出来的,晶振不一样的吧

用8M外部晶振  逻辑分析仪采的
 楼主| rainsinging 发表于 2014-4-10 13:48 | 显示全部楼层
yqhc1216 发表于 2014-4-10 13:06
用8M外部晶振  逻辑分析仪采的

这个好奇怪,我那个设置的周期是5us的,我测得的大概是10us左右,反正也是不对的
smilingangel 发表于 2014-4-20 21:00 | 显示全部楼层
是啊,这个还是看下你的晶振的选择使用上是否正确的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

80

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部