Можно ли вводить цифры в com порт не с пк, а с самой ардуино?

theflyman
Offline
Зарегистрирован: 02.05.2017

Форумчане! Нашел код для пароля, немного изменил его - все работает. Но столкнулся с тем, что не знаю, как вводить цифры в ком-порт через нажатия кнопок, которые к пинам подключены. Есть ли возможность вводить цифры в ком-порт не через пк, а через саму ардуинку?

#include <Password.h>

Password password1 = Password( "1234" );
Password password2 = Password( "4321" );

byte currentLength = 0;

int val = 0;

void setup(){

  pinMode (2, INPUT);
  pinMode (3, INPUT);
  pinMode (4, INPUT);
  pinMode (5, INPUT);
  pinMode (6, INPUT);
  pinMode (7, INPUT);
  pinMode (8, INPUT);
  pinMode (9, INPUT);
  pinMode (13, OUTPUT);
  
 Serial.begin(9600);
 Serial.println("Try to guess the password!");
 Serial.println("Reset with ! evaluate with ?");
 Serial.print("Enter password: ");
}

void loop(){
 if (Serial.available()){
   char input = Serial.read();
   switch (input){
     case '!': //reset password
       password1.reset();
       password2.reset();
       currentLength = 0;
       Serial.println("\tPassword is reset!");
     break;
     case '?': //evaluate password
       if (password1.evaluate()){
         Serial.println("\tYou guessed the correct password!");
          digitalWrite (13, 1);
       }
        if (password2.evaluate()){
         Serial.println("\tYou guessed the correct password!");
          digitalWrite (13, 1);
          delay (1000);
          digitalWrite(13, 0);
       }
     break;
     default: //append any keypress that is not a '!' nor a '?' to the currently guessed password.
       password1.append(input);
       password2.append(input);
       currentLength++;
       
       //Print some feedback.
       Serial.print("Enter password: ");
       for (byte i=0; i<currentLength; i++){
         Serial.print('*');
       }
       Serial.println();
    }
 }
 if (digitalRead(5)==1){
  val = '1';
  delay (1000);
  Serial.write(val);
 }
}

P.S. мигалочки на 13 пине - только для проверки, в самом проекте релешки стоять будут. Заранее спасибо.

Клапауций 112
Клапауций 112 аватар
Offline
Зарегистрирован: 01.03.2017