TACTL|=TACLR; //Clear TimerA Config
TACTL|=
TASSEL_SMCLK | //SMCLK source,
- MC_1; //Count up to CCR0
- //TAIE; //Enable Interrupt
+ MC_1 | //Count up to CCR0
+ TAIE; //Enable Interrupt
CCTL0 = CCIE; // CCR0 interrupt enabled
CCR0 = glitchcount;
{
#ifdef DAC12IR
//debugstr("Glitching.");
- DAC12_0DAT = 0;//glitchL;
+ DAC12_0DAT = glitchL;
+ asm("nop");
+ asm("nop");
+ asm("nop");
+ asm("nop");
asm("nop");
DAC12_0DAT = glitchH;
- //DAC12_0DAT = glitchL;
- /*
- switch(glitchstate){
- case 0:
- P1OUT|=1;
- glitchstate=1;
- DAC12_0DAT = glitchH;
- break;
- case 1:
- P1OUT|=1;
- glitchstate=0;
- DAC12_0DAT = glitchL;
- break;
- default:
- P1OUT&=~1;
- //Do nothing.
- break;
- }
- */
#endif
+ TACTL |= MC0; // Stop Timer_A;
}
glitchcount=rate;
}
-
//! Handles a monitor command.
void glitchhandle(unsigned char app,
unsigned char verb,
glitchprime();
handle(cmddata[0],cmddata[1],0);
break;
+ case GLITCHTIME:
+ _DINT();//disable interrupts
+ TACTL=0; //clear dividers
+ TACTL|=TACLR; //clear config
+ TACTL|=TASSEL_SMCLK| //smclk source
+ MC_2; //continuout mode.
+
+ //perform the function
+ silent++;//Don't want the function to return anything.
+ handle(cmddata[0],cmddata[1],0);
+ silent--;
+ cmddataword[0]=TAR; //Return counter.
+ txdata(app,verb,2);
+ break;
case START:
case STOP:
case GLITCHAPP: