Un aiuto ad un principiante

Salve a tutti, premetto che sono un principiante e quindi mi scuso in anticipo per la banalità della domanda che posterò...
Qualcuno gentilmente potrebbe spiegarmi

  • la differenza fra digitalWrite e digitalRead
  • la differenza fra OUTPUT e INPUT
  • la differenza fra analogWrite e analogRead

Mi scuso veramente, capisco che siano dei concetti fondamentali per cimentarsi nel mondo di arduino ma vorrei averli chiari, prima di partire con qualcosa di più complesso.
Grazie a tutti per la disponibilità :slight_smile:

Spiegartelo con un post sarebbe un po' deleterio, però puoi cominciare a dare un'occhiata direttamente sul sito di Arduino, per capire e subito mettere in pratica quello che hai imparato.

DIGITAL WRITE --- http://arduino.cc/en/Reference/DigitalWrite --- http://www.arduino.cc/en/Tutorial-0007/DigitalWrite
DIGITAL READ --- http://arduino.cc/en/Reference/DigitalRead --- http://arduino.cc/en/Tutorial/DigitalReadSerial
ANALOG WRITE --- Arduino - AnalogWrite
ANALOG READ --- http://arduino.cc/en/Reference/AnalogRead --- http://arduino.cc/en/Tutorial/ReadAnalogVoltage
INPUT/OUTPUT --- http://arduino.cc/en/Reference/PinMode

ciao Luca
Le Tue Domade mi fanno pensare che non hai nessun idea ne di programmazione ne di elettronica. Questo é una situazione pericolosa per Arduio perche rischi di danneggiarlo.

La cosa migliore sarebbe che incontri qualcuno che Ti spiega le basi dell elettronica.

In che zona abiti?
Ciao Uwe

Ciao Luca,
per una convivenza pacifica sul forum ti invito a leggere il regolamento --> [REGOLAMENTO] Come usare questa sezione del forum - Italiano - Arduino Forum
e se vuoi, puoi presentarti in questo apposito topic --> Re: Presentazioni nuovi iscritti, fatevi conoscere da tutti! - Generale - Arduino Forum

Benvenuto. :wink:

Per le basi di elettronica puoi cercare anche un qualsiasi testo di elettronica delle superiori, riguardo Arduino ormai c'è una proliferare di libri che trattano l'argomento; alcuni in italiano moltissimi in inglese.
Puoi usare anche Google per effettuare le ricerche di questi testi.

Può essere utile anche questo libretto:
Non metto il link diretto al pdf, devi premere sulla voce "Programmare Arduino" sotto "MATERIALI 3AE" (a destra)
http://www.itisvoltafr.it/~marsella/

Brevemente, ma è meglio leggere almeno dei tutorial:
- la differenza fra OUTPUT e INPUT
netta, serve per dire ad Arduino se da quel pin tu vuoi leggere un valore (digitale o analogico) oppure vuoi spedire un valore (solo digitale)

- la differenza fra digitalWrite e digitalRead
La digitalWrite ti permette di scrivere un valore LOW-HIGH (0 o 1) su un pin di Arduino. La digitalRead ti permette di leggere dal pin un segnale digitale, LOW/HIGH (0 o 1). Dovrai collegare qualcosa al pin e quel qualcosa deve avere una tensione tra 0-5Volt 0V = LOW 5V=HIGH (non è precisamente così, puoi approfondire nei link postati sopra)

- la differenza fra analogWrite e analogRead
Dal punto di vista dei pin Analogici (quelli indicati da A0-A5) puoi solo leggere. Otterrai un valore tra 0 e 1023.
La scrittura usando analogWrite, NON è analogica (cioè i pin di Arduino possono far uscire solo LOW o HIGH). Il nome manda forse in confusione. Il valore ammesso è 0-255. Detta male, viene mandato sul pin una sequenza 0-1 e quel 0-255 dice con quale frequenza si alternano 0-1 (cerca duty cycle). E' ammessa solo sui pin PWM, quelli che hanno il simbolo ~

Ricapitolando, tu poi leggere/scrivere sui pin in digitale (LOW/HIGH) su qualsiasi pin oppure puoi leggere in analogico (0-1023) sui pin A0-A5. I pin PWM indicati con tilde ~ sono comunque un segnale digitale (questo è un pò più complesso, meglio vedere dei tutorial).

Ringrazio tutti per l'aiuto e per link e descrizioni forniti