• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Czytanie danych z arduino
#11
Nie mogę się połapać w żaden sposób. Zostało mi w sumie tylko to dlatego nie wiem czy jest sens zmieniać środowisko na inne. 
Kod:
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
       receivedData = ReceiveSerialData()

       RichTextBox1.Text &= receivedData


   End Sub

 W aplikacji znajduje sie textbox wyświetlający odebrane dane, skoro wyświetla mi np "Opcja1" to znaczy, że do receivedData trafiaja dane z Arduino 
Kod:
if(digitalRead(9)== LOW)
         {
           Serial.write("Opcja1");
         }

Skoro tak to dlaczego danych znajdujacych sie w zmiennej receivedData nie moge użyć np do Instrukcji IF
Mimo, że w receivedData znajduje się "Opcja1" a według instrukcji powinno to wywołać funkcje BT1(). Nie mam pojęcia dlaczego nie da się wykorzystać stringa dla głupiej instrukcji..
Kod:
If (receivedData = "Opcja1") Then
           BT1()

End If

Pracuje na szablonie z internetu, który poprostu zmieniłem według własnych potrzeb i jest to ostatnia rzecz z która nie mogę sobie poradzić, tak wiem jest wiele rozwiązań w internecie aczkolwiek nie chciałbym robić tego od nowa...
 
Odpowiedź
#12
receivedData = "Opcja1"
przypisuje do wskaźnika na "receivedData " wskaźnika na "Opcja1".
Kompilator nie dał ostrzeżenia, że nie ma warunku w if?
- uC: ARM Angel , AVR, Z8, PIC, 8051 / CPU: MC680x0  , Z-80, 6502
- CPLD, FPGA, GAL
- GSM, ISDN, ETH, USB, RS232C/485/422
- C, ASM, CUPL, PHP, BASIC C-64

http://er-mik.prv.pl/projekty_avt.php * http://er-mik.prv.pl/ * http://kolejki.prv.pl/

KA-NUCLEO-F411CE Idea , ESP32, Mega2560, UNO PLUS
 
Odpowiedź
#13
Kod:
If (receivedData = "Opcja1") Then
Jak to nie ma warunku if?

Dane zawarte w stringu moge wyświetlić ale nie moge ich użyć do stworzenia instrukcji?
Przypisanie ich do innej zmiennej nie daje efektu. Typ zmiennej też wydaje mi się, że dobry.
 
Odpowiedź
#14
popatrz na if(digitalRead(9)
- uC: ARM Angel , AVR, Z8, PIC, 8051 / CPU: MC680x0  , Z-80, 6502
- CPLD, FPGA, GAL
- GSM, ISDN, ETH, USB, RS232C/485/422
- C, ASM, CUPL, PHP, BASIC C-64

http://er-mik.prv.pl/projekty_avt.php * http://er-mik.prv.pl/ * http://kolejki.prv.pl/

KA-NUCLEO-F411CE Idea , ESP32, Mega2560, UNO PLUS
 
Odpowiedź
#15
Kod:
if(digitalRead(9)== LOW)
  {
     Serial.write("Opcja1");
  }


If (receivedData = "Opcja1") Then
         
      BT1()

End If
Patrze i według mnie oraz tego co znalazłem na temat używania instrukcji IF w tym środowisku wydaje się być poprawne, chyba, że już od tego szperania nie widze różnic...
 
Odpowiedź
#16
Środowiska oczywiście nie ma sensu zmieniać, idea działania i sposób tworzenia programu wygląda w obu tak samo, różnice to tylko składnia. Trzeba się jej nauczyć. Twój błąd jest bardzo częsty, popatrzysz jeszcze na tę linijkę z parę godzin i zauważysz.
 
Odpowiedź
#17
A jakby czytał ostrzeżenia kompilatora to nie musiałby patrzeć kilka godzin.
Niestety, większość początkujący olewa ostrzeżenia kompilatora. Przecież kompilator jest głupi, co się czepia szczegółów.
- uC: ARM Angel , AVR, Z8, PIC, 8051 / CPU: MC680x0  , Z-80, 6502
- CPLD, FPGA, GAL
- GSM, ISDN, ETH, USB, RS232C/485/422
- C, ASM, CUPL, PHP, BASIC C-64

http://er-mik.prv.pl/projekty_avt.php * http://er-mik.prv.pl/ * http://kolejki.prv.pl/

KA-NUCLEO-F411CE Idea , ESP32, Mega2560, UNO PLUS
 
Odpowiedź
#18
== porównanie
=przypisanie
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości