io口翻转,频率

2019-03-24 16:08发布

我把mclk设置成8M外部晶振,没有分频,对io求反应该是单周期指令.测p1频率应该是4Mhz才对,而我用示波器测P1为667khz
#include"msp430x14x.h"
void main()
{
  WDTCTL=WDTPW+WDTHOLD;
  P1DIR=0XFF;
  P5DIR=0X70;
  P5SEL=0X70;
  unsigned int iq0;
  BCSCTL1&=~XT2OFF;          //打开XT2振荡器
   do
   {
   IFG1 &= ~OFIFG;     // 清除振荡器失效标志
   for (iq0 = 0xFF; iq0 > 0; iq0--);  // 延时,等待XT2起振
  }s
  while ((IFG1 & OFIFG) != 0);    // 判断XT2是否起振
  BCSCTL2 =SELM_2+SELS;     //选择MCLK、SMCLK为XT2
  while(1)
  {
    P1OUT^=0XFF;
  }

} 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
10条回答
wstt
2019-03-25 02:43
我也遇到过这种问题,只有个直接时钟输出引脚输出的时钟跟理论一致,一般来讲C写的IO翻转代码不能达到单周期的效率,同时430对IO的寄存器操作是否是真正的单周期,这个我也不能确定

一周热门 更多>

相关问题

    相关文章