打印

关于430输出方波

[复制链接]
1189|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
最近写个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 | 只看该作者
定时器位数多少啊?

使用特权

评论回复
5
海中水| | 2014-4-10 09:56 | 只看该作者
使用IO口是很难达到的,只能使用PWM外设模块做了,应该能满足你的使用要求。

使用特权

评论回复
6
yqhc1216| | 2014-4-10 10:26 | 只看该作者
用楼主的设置得到的结果

使用特权

评论回复
7
rainsinging|  楼主 | 2014-4-10 11:33 | 只看该作者
dirtwillfly 发表于 2014-4-9 17:50
使用TIMER的输出口来产生PWM,你能达到多少HZ

我试了500K可以的,再大我还没试

使用特权

评论回复
8
rainsinging|  楼主 | 2014-4-10 11:33 | 只看该作者
mmuuss586 发表于 2014-4-9 18:57
定时器位数多少啊?

16位的

使用特权

评论回复
9
rainsinging|  楼主 | 2014-4-10 11:36 | 只看该作者
yqhc1216 发表于 2014-4-10 10:26
用楼主的设置得到的结果

这个结果好令人忧伤啊,怎么出来的,晶振不一样的吧

使用特权

评论回复
10
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;
}

使用特权

评论回复
11
yqhc1216| | 2014-4-10 13:06 | 只看该作者
rainsinging 发表于 2014-4-10 11:36
这个结果好令人忧伤啊,怎么出来的,晶振不一样的吧

用8M外部晶振  逻辑分析仪采的

使用特权

评论回复
12
rainsinging|  楼主 | 2014-4-10 13:48 | 只看该作者
yqhc1216 发表于 2014-4-10 13:06
用8M外部晶振  逻辑分析仪采的

这个好奇怪,我那个设置的周期是5us的,我测得的大概是10us左右,反正也是不对的

使用特权

评论回复
13
smilingangel| | 2014-4-20 21:00 | 只看该作者
是啊,这个还是看下你的晶振的选择使用上是否正确的

使用特权

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

本版积分规则

14

主题

80

帖子

0

粉丝