Advertisement
Guest User

Untitled

a guest
Feb 18th, 2019
180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.98 KB | None | 0 0
  1. void setup() {
  2. Serial.begin(9600);
  3. }
  4.  
  5. void loop() {
  6. int opcion;
  7. Serial.println("Escoja el número de la operación que quiera hacer:");
  8. Serial.println("1) Binario a Decimal.");
  9. Serial.println("2) Decimal a Binario.");
  10. Serial.println("3) Decimal a Octal.");
  11.  
  12. while(!Serial.available());
  13.  
  14. if (Serial.available() > 0) {
  15. // read the incoming byte:
  16. opcion = Serial.parseInt();
  17. Serial.println(opcion);
  18. // say what you got:
  19. if(opcion==1){
  20. Serial.println("Introduzca el numero binario a convertir: ");
  21. while(!Serial.available());
  22. String binario = Serial.readString();
  23. if(binario.length()<=8 && binario[0]=='1'){
  24. int decimal = 1;
  25. for(int i=1;i<binario.length();i++){
  26. if(binario[i]=='0')decimal=decimal*2;
  27. else decimal=(decimal*2)+1;
  28. }
  29. Serial.println(decimal);
  30. seguir();
  31. }
  32. else Serial.println("Numero fuera de rango");
  33. }
  34. if(opcion==2){
  35. int decimal;
  36. Serial.println("Introduzca el numero decimal a convertir (entre 0 y 255): ");
  37. while(!Serial.available());
  38. decimal = Serial.parseInt();
  39. if(decimal >=0 && decimal <= 255){
  40. Serial.println(decimal,BIN);
  41. seguir();
  42. }
  43. else Serial.println("Numero fuera de rango");
  44. }
  45. if(opcion==3){
  46. int decimal;
  47. Serial.println("Introduzca el numero decimal a convertir (entre 0 y 255): ");
  48. while(!Serial.available());
  49. decimal = Serial.parseInt();
  50. if(decimal >=0 && decimal <= 255){
  51. Serial.println(decimal,OCT);
  52. seguir();
  53. }
  54. else Serial.println("Numero fuera de rango");
  55. }
  56. }
  57. }
  58.  
  59. void seguir(){
  60. Serial.println("Desea continuar con el programa? (S/N)");
  61. String s;
  62. while(!Serial.available());
  63. s=Serial.readString();
  64. if(s=="S" || s=="s") return;
  65. else if(s=="N" || s=="n"){
  66. Serial.println("Puede cerrar esta ventana.");
  67. Serial.end();
  68. delay(1000000);
  69. }
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement