예제 #1
0
int main(void){
	MSP430_Init();
	MSP430_Ports();
	MSP430_Timer();
	TLC5940_Init();

	TLC5940_SetAllDC(63);
	TLC5940_ClockInDC();

	// Default all channels to off
	TLC5940_SetAllGS(0);


	channel_t ch = 0;
	uint16_t bright = 0;

	// GLOBAL INTERRUPTS ENABLED
	__bis_status_register(GIE);

	for(;;){
		while(uigsUpdateFlag);	// wait until we can modify gsData
		//TLC5940_SetAllGS(0);
		TLC5940_SetGS(ch, bright);
		TLC5940_SetGSUpdateFlag();
		__delay_cycles(10000);
		ch = (ch + 1) % NUM_CHANNELS;
		bright++;
		if (bright > 4095){
			bright = 0;
		}
	}
	return 0;
}
예제 #2
0
파일: eyes.c 프로젝트: cdrfiuba/marciano
void EyesAngry (void) {
  while(gsUpdateFlag);	// wait until we can modify gsData
  TLC5940_SetGS(5, MAX_BRIGHT);
  TLC5940_SetGS(7, MAX_BRIGHT);
  TLC5940_SetGS(10, MAX_BRIGHT);
  TLC5940_SetGS(11, MAX_BRIGHT);
  TLC5940_SetGS(12, MAX_BRIGHT);
  TLC5940_SetGS(13, MAX_BRIGHT);
  TLC5940_SetGS(14, MAX_BRIGHT);
  TLC5940_SetGS(15, MAX_BRIGHT);
  TLC5940_SetGS(2, MAX_BRIGHT);
  TLC5940_SetGS(6, MAX_BRIGHT);
  TLC5940_SetGS(8, MAX_BRIGHT);
  TLC5940_SetGS(24, MAX_BRIGHT);
  TLC5940_SetGS(21, MAX_BRIGHT);
  TLC5940_SetGS(26, MAX_BRIGHT);
  TLC5940_SetGS(20, MAX_BRIGHT);
  TLC5940_SetGS(18, MAX_BRIGHT);
  TLC5940_SetGS(19, MAX_BRIGHT);
  TLC5940_SetGS(17, MAX_BRIGHT);
  TLC5940_SetGS(16, MAX_BRIGHT);
  TLC5940_SetGS(25, MAX_BRIGHT);
  TLC5940_SetGS(29, MAX_BRIGHT);
  TLC5940_SetGS(23, MAX_BRIGHT);
  TLC5940_SetGSUpdateFlag();
}
예제 #3
0
파일: eyes.c 프로젝트: cdrfiuba/marciano
void setEyesOff(void) {
  eyesState = E_OFF;
  while(gsUpdateFlag);	// wait until we can modify gsData
  TLC5940_SetAllGS(0);
  TLC5940_SetGSUpdateFlag();
}
예제 #4
0
파일: eyes.c 프로젝트: cdrfiuba/marciano
void setEyesOn(void) {
  eyesState = E_ON;
  while(gsUpdateFlag);	// wait until we can modify gsData
  TLC5940_SetAllGS(MAX_BRIGHT);
  TLC5940_SetGSUpdateFlag();
}