微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 51单片机的工艺增强

51单片机的工艺增强

时间:10-02 整理:3721RD 点击:
标准51单片机是12T的,就是说12个时钟周期(晶振周期,例如12M的,周期是 1/12M,单位秒),机器做一个指令周期,刚好就是1/12M*12=1uS,常见指令例如_nop_就是一个周期,刚好1uS,其他的大多多于一个周 期,乘除法更多。所以如果计算指令时间可以这样算。
而现在很多51核的单片机工艺质量上去后,频率大大提高,增强型51有6T的,如果接12M的话,一个nop就只需要0.51uS,如果是STC的部分单片机1T的话,那只需要1/12uS。


单片机的晶振不是随便选,要看技术手册,看最高频率,看支持类型等等。一般12M,接串口的话11.0592M。如果是PIC,很多4M,8M。
不是越高越好,对很多不需要大量处理,只是控制的情况,为了增加可靠性,降低编程难度,降低功耗,往往可选用低频的,例如实时时钟的32768晶振。
故  计算nT单片机的指令周期公式为:
T   =  1/晶振周期*n
例如: 使用12M晶振的1T单片机的指令周期为:  T = 1 / 12 * 1 = 1 / 12 us
/*******************下面是单片机的几个周期的介绍****************/
(1)时钟周期 又名 振荡周期: 定义为时钟频率的倒数,可以理解为单片机外界晶振的倒数。在一个时钟周期内,CPU仅完成一个最基本的动作。对于某个单片机来讲,若采用了1MHZ的时钟 频率,则时钟周期就是1us;若采用了4MHZ的时钟频率,则时钟周期就是250ns。由于时钟脉冲是CPU的基本工作脉冲,它控制着CPU的工作节奏。 对于同一种单片机,时钟频率越高,单片机的工作速度就越快。我们使用的STC89C系列单片机的时钟范围约在1——40MHZ。
(2)状态周期:状态周期是时钟周期的两倍。
(3)机器周期:单片机的基本操作周期,在一个操作周期内,单片机完成一项基本操作,如取指令、存储器读写等。它由12个时钟周期(6个状态周期)组成。
(4)指令周期:它是指CPU执行一条指令所需要的时间。一般一个指令周期含有1——4个机器周期。
定时器部分不用改。1T单片机的计时器是兼容传统12T单片机的。也就是说只是执行一般的指令会快12倍,但是它的定时器却是先进行12分频,再计时的,与原来的一样。只是用软件延时的话,就要改。/****************************************************************/

/**************1T和12T单片机软件延时程序实例对比*******/

/*****************************************************************/

1.对于使用12M晶振的12T单片机,如:STC90C52RC

延时n个10us的程序:

void DelayXus(unsigned char n)  

{  

  while( n-- ) {  

    _nop_();  

    _nop_();  

   }  

}

2.而对于使用12M晶振的1T单片机,如:STC12C5206AD

延时n个1us的程序

void DelayXus(unsigned char n)  

{  

while( n-- )   {  

            _nop_();  

            _nop_();  

      }  

}  



看看,,,,,,,,,,,,,

说到底层   还是机器周期问题  到汇编了  都一样

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top