void test_485(void) { zobraz_text(10); // "485 " Serial.println("Odesli nekolik znaku z PC pres RS485 a sleduj na PC odpoved (9600 Bd)"); Serial.println(" (libovolnym znakem v USB lince se test ukonci)"); prijem(); while (Serial.available() == 0) { if (Serial2.available()) // pres RS485 neco prislo (uklada se to do HW bufferu) { vysilani(); // prepnuti na vysilani Serial2.print("ODPOVED: "); Serial.print("prijato / odesilam zpet: "); while (Serial2.available()) { char znak485 = Serial2.read(); // cteni bufferu Serial.print(znak485); // zobrazeni znaku z bufferu v USB seriove lince Serial2.print(znak485); // a okamzite odeslani znaku pres RS485 } Serial.println('\n'); } prijem(); } } //---------------------------------------------- // prepnuti smeru na prijem void prijem(void) { delay(50); digitalWrite(pin_DERE,LOW); delay(20); } //---------------------------------------------- //---------------------------------------------- // prepnuti smeru na vysilani void vysilani(void) { delay(50); digitalWrite(pin_DERE,HIGH); delay(20); } //----------------------------------------------