Salve gente, leggendo sulle reference di arduino ho scoperto che i pin analogici possono essere convertiti in pin digitali, per essere più chiaro posto il testo esatto:
Pin analogici
In aggiunta alle specifiche funzioni mostrate in basso, i pin d'ingresso analogici supportano la conversione analogico-digitale (ADC) a 10-bit utilizzando la funzione analogRead(). La maggior parte degli input analogici possono essere utilizzati se necessario come pin digitali: si può fare riferimento all'input analogico 0 come pin digitale 14, e così via fino all'input analogico 5 come pin digitale 19.
La cosa che mi sfugge è se posso utilizzare un pin "convertito" in digitale non solo in ingresso con la funzione analogRead(), ma anche come uscita quindi con analogWrite().
Nel progettino che sto portando avanti non ho potuto collegare un buzzer piezoelettrico perchè ho occupato tutti i pin digitali con altre cose, display, servi, ecc. Non è un componente di primaria importanza, potrei farne anche a meno ma visto che c'è anche questa possibilità, perchè non approfittarne? Il buzzer verrà utilizzato per segnalare degli eventi, ognuno scandito da un tono diverso. Girovagando nella sezione Learnng ho trovato uno script di esempio per far emettere una melodia a un buzzer (http://www.arduino.cc/en/Tutorial/Melody), ora ci sto lavorando un pò sopra su un'altra board e sto cercando di personalizzare il codice in base alle mie esigenze. In questo tutorial il positivo del buzzer viene collegato al pin digitale 9 mentre il negativo a massa. Supponendo che io lo collego al pin analogico 0 e nello script lo inizializzo come pin digitale 14, funziona ugualmente? Inoltre nello script di esempio viene usata la funzione digitalWrite()
digitalWrite(speakerPin, HIGH);
la devo sostituire con "analogWrite(speakerPin,HIGH);" o resta ivariata visto che il pin è inizializzato come digitale?
Perdonatemi se ho detto una cavolata, ma da un principiante che sa poco di programmazione e meno di elettronica, qualche baggianata può sempre scappare.
Come sempre, saluti a tutti!