Esempio n. 1
0
void controll_motor(int val){
  if (val > 0){
    digitalWrite(DIR, HIGH);
  }
  else{
    digitalWrite(DIR, LOW);
  }
  DAC_send(0x00, abs(val));
}
Esempio n. 2
0
void WAVE_synthtick(){
	uint8_t i, wavesDown;
	uint16_t waveOut = 0;
	wavesDown = 0;
	for(i = 0; i < 4; i++){
		if(waveInfo[i].waveInit){
			if(waveInfo[i].waveReadPos != 0){
				wavesDown++;
				waveOut += waveData[(int)waveInfo[i].waveReadPos] * ((float)(getVolume())/10);
				waveInfo[i].waveReadPos += waveInfo[i].waveInc;
				if(waveInfo[i].waveReadPos >= (waveInfo[i].waveStart+waveInfo[i].waveLength)){
					waveInfo[i].waveReadPos = 0;
					//waveInfo[i].waveReadPos = waveInfo[i].waveStart;
				}
			}
		}
	}
	DAC_send((waveOut));
}