⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cputimera.c

📁 原创的msp430单片机的整套编码 包括通信,红外检测,软件计时等多种功能
💻 C
字号:
/**********************************************************
*文件名称:cputimerA.c
*当前版本:2.0
*作    者:szb
*编写日期:2007.2.9
*摘    要:售烟机底层计数板与LED控制板通信定时器
***********************************************************/
#ifndef _TIMEA
#define	_TIMEA
#include	"datastru.h"
#include	"func.h"
#endif

void TAinit(void)	//定时器初始化,定时器1用来作发送定时器,定时器2用来作接收定时器
{ //0.098ms中断一次 通信波特率:1280=3276800/2560
	TACTL = TASSEL_2 + ID_3 + TACLR;		// SMCLK(3.2768M/8), devider = 8, clear TBR
	TACTL |= MC1;							// 以连续计数模式启动TimerA	
	
}

interrupt [TIMERA0_VECTOR] void TimerA_RECEIVE(void)
{
    
  _DINT(); //关闭中断
  TACCR0 = TACCR0 + 165;
  if (RnumberBIT232 >= 9)
  	{
  		toffsetRS232 = RS232offset(toffsetRS232, 1, RqueueRS232_Length);
  		tailRS232 = origRS232 + toffsetRS232;// 完成尾指针加1的功能
  		P2IFG = 0; //清除中断标志
  		P2IE = 0x08;//允许2.3端口中断
  		RnumberBIT232 = 0;
  		TACCTL0 &= ~CCIE;   // CCR0 interrupt disabled
  	}
  else if (!RnumberBIT232)
  		RnumberBIT232++;
  else 
  	{
  		*tailRS232 = *tailRS232 >> 1;
  		if (P2IN & BIT3)
  			*tailRS232 |= BIT7;
  		else
  			*tailRS232 &= ~BIT7;
  		RnumberBIT232++;
  	}	
	_EINT();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -