这段代码为什么要红 {MOD}一段代码和不要那段代码,效果一样啊?哪位高手能指点一下?

2019-03-24 11:40发布


#include "msp430x14x.h"
#define uchar unsigned char
#define uint  unsigned int
uchar num[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
               0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
uchar wei[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
uchar n=0,i=0;
void main( void )
{
  uint a;
  // Stop watchdog timer to prevent time out reset
  WDTCTL = WDTPW + WDTHOLD;

  //IE1|=WDTIE;
  //WDTCTL=WDT_ADLY_1_9;
  P4DIR=0xff;
  P6DIR|=0x18;
  P4OUT=0x00;

  BCSCTL1&=~XT2OFF;    //设置XT2CLK有效
  do
  {
    IFG1&=~OFIFG;       //清除失效标志
    for(a=0xff;a>0;a--);//稳定时间
  }
  while((IFG1&OFIFG)!=0); //如果失效标志仍存在则继续循环清除


  BCSCTL2|=SELS;   // 选择XT2CLK为SMCLK的时钟源
  
  
  CCTL0=CCIE;   //CCR0中断允许
  CCR0=20000;
  TACTL=TASSEL_2+TACLR+MC_1;//定时器A时钟源为SMCLK,计数器清零,增计数模式
  _EINT();
}
#pragma vector=TIMERA0_VECTOR
__interrupt void timer_A(void)
{
  P6OUT=0x08;
  P4OUT=0x00;
  P4OUT=wei[i++];
  P6OUT=0x10;
  P4OUT=num[n++];
  P6OUT=0x00;
  if(i==8)i=0;
  if(n==8)n=0;
}
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
huixianfxt
1楼-- · 2019-03-24 17:46
< 你输出来时钟就知道一样不一样呢........
梦幻泡影4
2楼-- · 2019-03-24 19:37
< :TI_MSP430_内容页_SA7 -->
huixianfxt 发表于 2014-4-19 19:40
你输出来时钟就知道一样不一样呢........

默认的DCO和XT2的频率悬殊很大啊,我运行的结果也和默认DCO也不一样啊

一周热门 更多>

相关问题

    相关文章