首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 单片机 >

内部晶振频次 与外部工作频率

2013-11-20 
内部晶振频率 与外部工作频率内部晶振频率为12MHz时,外部最大工作频率是多少? 如果计数的量超过了单片机定

内部晶振频率 与外部工作频率
内部晶振频率为12MHz时,外部最大工作频率是多少? 
如果计数的量超过了单片机定时器的计数周期该怎么办
[解决办法]
内部晶振频率为12MHz时,外部最大工作频率是多少? 
得看芯片的PLL能倍频多少
[解决办法]

引用:
Quote: 引用:

这两者没什么必然关系吧

如果计数的量超过了单片机定时器的计数周期该怎么办 
某些可以选择定时器时钟来源的可以通过改来源来达到更高的定时时间,没有的话只有在定时器里加计数器了,比如要定100秒,但定时器最大100MS,那么触发1000次就是100秒了

如果定时器最大计数容量是512,但是我现在要计数600次,该怎么办呢?



//可以设成200次触发一次中断
uint cnt=0;
void isr_tmr(void) interrupr n
{
  cnt++;
  if(cnt>=3)
  {
      //这里600次了,处理
      //...
      //cnt=0;
  }
}

看看这样是否满足你的要求
[解决办法]
引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

这两者没什么必然关系吧

如果计数的量超过了单片机定时器的计数周期该怎么办 
某些可以选择定时器时钟来源的可以通过改来源来达到更高的定时时间,没有的话只有在定时器里加计数器了,比如要定100秒,但定时器最大100MS,那么触发1000次就是100秒了

如果定时器最大计数容量是512,但是我现在要计数600次,该怎么办呢?



//可以设成200次触发一次中断
uint cnt=0;
void isr_tmr(void) interrupr n
{
  cnt++;
  if(cnt>=3)
  {
      //这里600次了,处理
      //...
      //cnt=0;
  }
}

看看这样是否满足你的要求

恩,我明白意思了。不过这里我要求的是600次,如果要求601次怎么办呢?那是不是要分两步,比如一步计数300,循环两次。一步计数1次?

....这么个数似乎只能这样了.
对外输出频率的话你要看看PDF,看看是否有像2楼说的内部PLL倍频,有的话是可以提速的

热点排行