×

MSP430的看门狗及定时器有哪些常见问题详细资料说明

消耗积分:1 | 格式:pdf | 大小:0.10 MB | 2019-04-23

分享资料个

  Q1. 定时器两个中断TAIE 和CCIE,有什么区别?两个中断的中断向量一样吗?A1:TAIE 和CCIE指的是不同事件。 TAIE指TAR 计数器溢出,从65535 到0 的变化,由TAIFG 引起的。

  Q1. 定时器两个中断TAIE 和CCIE,有什么区别?两个中断的中断向量一样吗?

  A1:TAIE 和CCIE指的是不同事件。TAIE指TAR 计数器溢出,从65535 到0 的变化,由TAIFG 引起的。CCIE指捕获到相应信号(捕获模式下);定时时间到(比较模式下)。由CCIFG引起的。两个中断的中断向量不一样,TAIFG 一般进 TIMERA1_VECTOR;CCIFG 的话要看用的是哪个定时器如果是CCR0 的话就进TIMERA0_VECTOR,如果是 CCR1,CCR2……则进TIMERA1_VECTOR。(中断向量的写法因器件不同而有所不同)

  Q2 用F149 的定时器B 的捕捉功能, 遇到问题,在等待捕捉时,读取TBR 的值总是随机数。

  A2:TBR 是一直再跑的,看TBCCRx。因为捕获事件发生时,硬件会自动把TBR 的值保存到TBCCRx 中。

  Q3:想输出PWM,在中断响应后能改变PWM的频率吗?

  A3:调整相应的定时器配置,PWM的频率和占空比都是可以改变的,不过周期频率一般都是由CCR0据顶的。

  Q4:timerA 不能进入中断检查的一般思路?

  A4:不能进入中断一般检查思路:

  1:是否开所属模块中断和总中断

  2:所属模块所用时钟是否有效

  3:触发条件成立没?标志位是否置位。

  Q5. MSP430F149关于时钟的问题

  问题:时钟采用8MHz,那么执行for(i=0;i《980;i++);会花费多少ms?是不是1ms?另外,若是采用ADC12自带的时钟,在RC振荡器在5MHz,且不分频,执行一次采集(采样和转换)会花费多长时间?

  A5:执行for(i=0;i《980;i++);这个得去看汇编看消耗了几个机器周期这样是看不出来的。当然一般的做法是把程序运行在仿真状态下,在执行执行for(i=0;i《980;i++)之前记下此时的CYCLECOUNTER(VIEW--》register)该语句执行完毕之后记下这时的 CYCLECOUNTER,2者相减,在乘以MCLK的周期。若是采用ADC12自带的时钟,在RC振荡器在5MHz,且不分频: ADC12采样是12个ADC12CLK 外加一个ADC12CLK 用来把结果存到ADC12MEM。所以时间t=13*1/5M 秒。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !