Go Down

Topic: Problemino sketch (Read 3 times) previous topic - next topic

cece99

@paoloP
grazie mille per il codice, ti spiego a cosa serve il codice del fade: questa è una centralina per presepe, con i pulsantini seleziono il tempo di quanto deve durare alba e tramonto (il tramono o sera lo devo ancora implementare :D), dopo, quando vado in modalità esecuzione il codice del fade mi serve x modificare la luminosità dei led.
Una cosa: visto che ho praticamente finito tutti i pin del micro, posso usare i pin analogici come digital input?
Il Vero Programmatore non ha bisogno di manuali sull'assembler, sono
  sufficienti i data sheet dei microprocessori.

PaoloP


visto che ho praticamente finito tutti i pin del micro, posso usare i pin analogici come digital input?

Si, i pin analogici A0..A5 sono anche pin digitali numerati da 14 a 19.
Se usi A4 e A5 non puoi usare l'I2C, cosi come se ti servisse la SPI non devi usare i pin dal 10 al 13.
Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

cece99



visto che ho praticamente finito tutti i pin del micro, posso usare i pin analogici come digital input?

Si, i pin analogici A0..A5 sono anche pin digitali numerati da 14 a 19.
Se usi A4 e A5 non puoi usare l'I2C, cosi come se ti servisse la SPI non devi usare i pin dal 10 al 13.

bene, quando finisco i compiti continuo la sperimentazione, intanto GRAZIEEEE
;)
Il Vero Programmatore non ha bisogno di manuali sull'assembler, sono
  sufficienti i data sheet dei microprocessori.

cece99

allora... con questo sketch, quando cambio la posizione del deviatore, non fa quello che deve fare:
Code: [Select]
#include <LiquidCrystal.h>

byte a = 0;
byte b = 25;

int up = LOW;
int down = LOW;
int check = LOW;

int brightness = 0;   

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
  pinMode(7, INPUT);     
  pinMode(8, INPUT);   
  pinMode(6, INPUT);
  lcd.begin(16, 2);
  lcd.print("Luci presepe by");
  lcd.setCursor(0, 1);
  lcd.print("Cesare Cacitti  ");
  delay(5000);
}

void loop() {
  lcd.setCursor(0, 0);
  lcd.clear();
  lcd.print("Giorno:");
  lcd.print(a);
  lcd.setCursor(0, 1);
  lcd.print("Notte:");
  lcd.print(b);

  delay(50);
  up = digitalRead(8);
  down = digitalRead(7);
  check = digitalRead(6);

  if (check == HIGH) { 

    if (up == HIGH) { 
      if (a<255) a++;
    } 

    if (down == HIGH) { 
      if (a>0) a--;
    } 

  }
  else {
    lcd.clear();
    lcd.print("Esecuzione");
}
}

qualcuno ha un idea?
Il Vero Programmatore non ha bisogno di manuali sull'assembler, sono
  sufficienti i data sheet dei microprocessori.

tuxduino

Dovresti descrivere meglio il problema. "Non fa quello che deve fare" è troppo generico. Devi dire cosa ti aspetti e cosa succede invece.

Go Up