08-02-2018, 02:30
W Arduino nie da się uruchomić dwóch funkcji na raz. Przynajmniej w takim znaczeniu, że jak na komputerze odpalamy muzykę to w drugim okienku piszemy na forum. Dodawanie delay miałoby sens..., no prawie nigdy nie ma sensu. Procesor na tę chwilę działania delay nie robi nic poza obsługą przerwań (jest ślepy i głuchy), nie daje to urządzeniu żadnego dodatkowego czasu na obsługę zwykłych funkcji. Jeśli wywołujesz "co sekundę" dzięki delay(1000) to zamień sobie zgodnie z przykładami arduino wg szkicu 02.Digital BlinkWithoutDelay. Coś więcej można powiedzieć jak wkleisz jakiś kawałek kodu, który można skompilować. Spróbowałbym też podłączyć HC-05 pod zwykły UART, bo jeśli jest pod softserial i ustawiony na więcej niż 9600 to możesz gubić literki. Z kolei HC-05 też jest ciekawy, ma duży bufor na dane, i nie jest tak, że Ty tych danych sobie nie odczytasz, o nie nie. On poczeka i Ci je wrzuci w pierwszej kolejności do następnej transmisji. Więc jeśli dane po np. 15 znaku chcesz ignorować to je odbierasz, tworzysz zmienną i do niej wrzucasz, potem ją zerujesz/zapominasz o niej. Może na tym polega mieszanie?
Miło być decenianym https://buycoffee.to/kaczakat