Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA w 2025? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 14 mar 2025, o 15:23


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 
    Autor Wiadomość
    PostNapisane: 20 wrz 2018, o 11:05 
    Offline
    Nowy

    Dołączył(a): 11 lip 2017
    Posty: 4
    Pomógł: 0

    Chcę wysłać liczbę(np. wartość 3.5) po RS232.
    Zaczynam tak:
    1. Wysyłam z avr (Atmega8) po rs232 jako znaki 3.5 (zresztą bez znaczenia czy jako text czy liczbę wprost).
    2. W Delphi robię odczyt przez comport i wyświetlam na komponencie Memo1 znak(i) 3.5 - jest ok.
    3. Następnie znaki z komponentu Memo1 chcę zamienić na wartość liczbową real przez StrToFloat i mam błąd. Zamiana nie następuje.
    mam komunikat, że 3.5 nie można zamienić na typ real.
    4. Jeżeli prześlę po RS232 liczbę typu Integer, to z zamianą StrToInt nie ma problemu. Problem jest z liczba niecałkowitą(typu real).

    Poproszę o pomoc.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 wrz 2018, o 12:20 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27363
    Lokalizacja: Szczecin
    Pomógł: 1043

    separator zmień

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 wrz 2018, o 13:34 
    Offline
    Nowy

    Dołączył(a): 11 lip 2017
    Posty: 4
    Pomógł: 0

    Hm, ale reprezentacja liczby po stronie pierwotnej(źródła wysyłającego) jest postaci z kropką (np. 3.5).



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 wrz 2018, o 14:34 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27363
    Lokalizacja: Szczecin
    Pomógł: 1043

    no i co z tego ? a kto ci zabroni zmienić kropkę na przecinek po obojętnie której stronie ?

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 wrz 2018, o 14:38 
    Offline
    Nowy

    Dołączył(a): 11 lip 2017
    Posty: 4
    Pomógł: 0

    Popracuję wieczorem, dam znać.

    -- dzisiaj, o 14:38 --

    1. po stronie pierwotnej(nadawczej) mam program napisany w Bascomie i liczba rzeczywista ma kropkę.
    2. po stronie wtórnej(odbiorczej) jest Delphi, który oczekuje przecinka.

    Jeżeli wyślę text(string) postaci np."3,5" , konwersja do liczby w delphi jest prawidłowa, ale text muszę napisać ręcznie. Natomiast konwersja poprzez funkcję STR (Bascom) liczby na string daje wynik/text postaci "3.5" . Tym razem tego delphi nie trawi i koło się zamyka.

    No chyba, że w delphi można jakoś zamienić otrzymany string "3.5" na "3,5" , wtedy to zadziała.
    Oczywiście wartość liczbowa 3.5 jest przykładowa.
    Jeżeli wie Pan jak to zrobić Panie Mirku, to poproszę o podpowiedź.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 wrz 2018, o 07:14 
    Offline
    Użytkownik

    Dołączył(a): 02 paź 2015
    Posty: 41
    Pomógł: 1

    Albo tak:
    Składnia: [ Pobierz ] [ Ukryj ]
    język delphi
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Albo użyj drugiej wersji funkcji StrToFloat, gdzie możesz podać własny format separatora dziesiętnego:
    Składnia: [ Pobierz ] [ Ukryj ]
    język delphi
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 wrz 2018, o 08:07 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27363
    Lokalizacja: Szczecin
    Pomógł: 1043

    kkarl napisał(a):
    No chyba, że w delphi można jakoś zamienić otrzymany string "3.5" na "3,5" , wtedy to zadziała.

    No panie kochany, toż to PODSTAWOWE operacje na stringach - co za problem zamienić sobie w odebranym string jakiś znak na inny ? w czym problem ?

    Oczywiście jest wiele innych sposobów, tak jak np wyżej pisze kolega - ale specjalnie nie pisałem o tym wcześniej bo coś czułem, że ty na razie chyba masz jeszcze problem z podstawową obróbką stringów w Delphi - polecam ci zacznij od tego.

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 wrz 2018, o 11:07 
    Offline
    Nowy

    Dołączył(a): 11 lip 2017
    Posty: 4
    Pomógł: 0

    No, problem był w tym, że kompilator wyrzucał błąd. Nie dołączyłem biblioteki.
    Obecnie działa.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    cron
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO