mirror of
				https://github.com/s00500/SimpleExpressions
				synced 2025-11-03 23:03:24 +00:00 
			
		
		
		
	Adding tone
This commit is contained in:
		@@ -3,11 +3,17 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
void SimpleExpressionsClass::init(int mouthPin, int buzzerPin) {
 | 
					void SimpleExpressionsClass::init(int mouthPin, int buzzerPin) {
 | 
				
			||||||
  mouth = Adafruit_NeoPixel(7, mouthPin, NEO_GRB + NEO_KHZ800);
 | 
					  mouth = Adafruit_NeoPixel(7, mouthPin, NEO_GRB + NEO_KHZ800);
 | 
				
			||||||
  pinBuzzer = buzzerPin;
 | 
					 | 
				
			||||||
  pinMode(buzzerPin, OUTPUT);
 | 
					 | 
				
			||||||
  mouth.begin();
 | 
					  mouth.begin();
 | 
				
			||||||
  mouth.show();
 | 
					  mouth.show();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pinBuzzer = buzzerPin;
 | 
				
			||||||
 | 
					  pinMode(buzzerPin, OUTPUT);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  int freq = 2000;
 | 
				
			||||||
 | 
					  int channel = 1;
 | 
				
			||||||
 | 
					  int resolution = 8;
 | 
				
			||||||
 | 
					  ledcSetup(1, freq, resolution);
 | 
				
			||||||
 | 
					  ledcAttachPin(buzzerPin, 1);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
///////////////////////////////////////////////////////////////////
 | 
					///////////////////////////////////////////////////////////////////
 | 
				
			||||||
@@ -86,50 +92,15 @@ void SimpleExpressionsClass::clearMouth(){
 | 
				
			|||||||
//-- SOUNDS -----------------------------------------------------//
 | 
					//-- SOUNDS -----------------------------------------------------//
 | 
				
			||||||
///////////////////////////////////////////////////////////////////
 | 
					///////////////////////////////////////////////////////////////////
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void SimpleExpressionsClass::_tone (float noteFrequency, long noteDuration, int silentDuration){
 | 
					void SimpleExpressionsClass::_tone (float noteFrequency, long noteDuration, int silentDuration){
 | 
				
			||||||
 | 
					 | 
				
			||||||
    // tone(10,261,500);
 | 
					 | 
				
			||||||
    // delay(500);
 | 
					 | 
				
			||||||
    //
 | 
					 | 
				
			||||||
    // #define anaPin 32
 | 
					 | 
				
			||||||
/*
 | 
					 | 
				
			||||||
#define digiPin 33
 | 
					 | 
				
			||||||
#define beepPin 35
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
int freq = 2000;
 | 
					 | 
				
			||||||
int channel = 0;
 | 
					 | 
				
			||||||
int resolution = 8;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
void setup() {
 | 
					 | 
				
			||||||
pinMode(digiPin, INPUT_PULLUP);
 | 
					 | 
				
			||||||
Serial.begin(115200);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  ledcSetup(channel, freq, resolution);
 | 
					 | 
				
			||||||
  ledcAttachPin(12, channel);
 | 
					 | 
				
			||||||
    ledcWriteTone(channel, 440);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
void loop() {
 | 
					 | 
				
			||||||
  // put your main code here, to run repeatedly:
 | 
					 | 
				
			||||||
Serial.print("AnalogValue: ");
 | 
					 | 
				
			||||||
Serial.print(analogRead(anaPin));
 | 
					 | 
				
			||||||
Serial.print(" DigitalValue: ");
 | 
					 | 
				
			||||||
Serial.println(digitalRead(digiPin));
 | 
					 | 
				
			||||||
if(!digitalRead(digiPin))ledcWrite(channel, 255);
 | 
					 | 
				
			||||||
else ledcWrite(channel, 0);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
delay(50);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if(silentDuration==0){silentDuration=1;}
 | 
					    if(silentDuration==0){silentDuration=1;}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      tone(SimpleExpressionsClass::pinBuzzer, noteFrequency, noteDuration);
 | 
					    ledcWriteTone(0, noteFrequency);
 | 
				
			||||||
 | 
					    ledcWrite(1, 255);
 | 
				
			||||||
    delay(noteDuration);       //milliseconds to microseconds
 | 
					    delay(noteDuration);       //milliseconds to microseconds
 | 
				
			||||||
      //noTone(PIN_Buzzer);
 | 
					    //ledcWrite(0, 0); // notone
 | 
				
			||||||
    delay(silentDuration);
 | 
					    delay(silentDuration);
 | 
				
			||||||
      */
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user