(29-10-2018, 14:23)tatoswinka napisał(a): Niestety moja wiedza nie pozwala mi, przynajmniej na tę chwilę, zoptymalizować sekcji "wybornastaw"
Przesadzasz.
Zacznij od tego, aby Lnastawa zmieniać w zakresie od 0 do 1000, 1024 czy ile tam potrzeba z krokiem 1 a nie 40.
Konwersję z Lnastawa do sterowania poszczególnymi wyjściami w pętli pokazaną miałeś już wcześniej.
Pozostanie wyświetlanie, które najprościej zrobić mniej więcej tak
[cose]
uint16_t w = Lnastawa * 40;
Serial.print(" L=" ); Serial.print( w );
Serial.print("stan L4 320nH = ");
Serial.println(L4stan);
[/code]
Jak chcesz wyświetlic stan poszczególnych wyjść sterujących przekaźnikami użyj pętli w której "wyłuskujesz" poszczególne bity. np:
Kod:
for( uint16_t x=0; x<11; x++){
if( Lnastawa & (1<<x) ) ....