Decimale-binario con arduino

di Anonimizzato14954 il
8 risposte
Il titolo parla da sé.
io non sono proprio capace... L'ho fatto con java se volete prendere spunto, ma non so come si fa con arduno. Ho provato e mi è venuto questo (sicuramente sbagliato).

void setup() {
  int numero=0;
  int precedente=0;
  int binario[4];
  String output="";
}

void loop() {

 numero=Serial.read();
 if(precedente!=numero){
  
  for (int i = 3; i >= 0; i--) {
            binario[i] = numero % 2;
            numero /= 2;
            output = binario[i] + output;
        }
  
  
  Serial.println(output);
  precedente=numero;
 }
  

}


e poi con java (che è giusto) ho fatto questo se può essere utile.
package binario;

import javax.swing.JOptionPane;

public class Binario {

    public static void main(String[] args) {
        int numero = 0;
        int binario[] = new int[4];
        String output = "";
        do {
            numero = Integer.parseInt(JOptionPane.showInputDialog("Inserisci un numero da zero a 15"));
        } while (numero > 15);

        for (int i = 3; i >= 0; i--) {
            binario[i] = numero % 2;
            numero /= 2;
            output = binario[i] + output;
        }

        JOptionPane.showMessageDialog(null, output);
    }

}

8 Risposte

  • Qual'è lo scopo?
    cosa devi fare?
    ovvero hai un numero e poi col suo binario cosa ci devi fare?
  • In effetti non ho capito il senso di questa discussione ...
  • In effetti me lo sono chiesta anche io XD, però per ora il prof ha detto di fare quello ... quindi mi sapreste aiutare per favore? Mi fareste proprio un gran piacere quella materia ce l'ho giù
  • Se magari spiegassi meglio il problema.
    Cosa invii ad arduino?
    come lo devi elaborare?
    cosa devi rispondere al computer?
  • Più di così sinceramente non so come spiegarlo. Praticamente deduco che quel programma fatto con java lo devo fare col C e io il C non lo conosco... Aiutini?
    Quando il prof speficherà meglio che devo fare se mai ve lo dirò. Grazie
  • Allora per rispondere dobbiamo aspettare che il professore ti spieghi cosa chiedere nel forum ...
  • 
    void setup() {
      Serial.begin(9600);
    }
    
    void loop() {
        while(!Serial.available());
    
        unsigned char numero=Serial.read();
        numero -= '0';
        for (int i = 7; i >= 0; --i) {
                Serial.print( ((numero >> i) & 0x01)  + '0');
            }
         Serial.print('\n');
    }
     
    l ho scritto col telefono perciò non garantisco.
    invii un carattere tra 0 e 9 e lui risponde con la conversione in bit
  • Ho guardato e riguardato quello che mi hai scritto ma onestamente non capisco. Mi sa che mi devo arrangiare e ammazzarmi di tutorial su tutorial. COmunque vi ringrazio molto per la disponibilità e pazienza. Se mai vi riscriverò.
    Bacini
Devi accedere o registrarti per scrivere nel forum
8 risposte