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 11 kwi 2025, o 12:21


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 15 ] 
    Autor Wiadomość
    PostNapisane: 26 lut 2014, o 13:07 
    Offline
    Nowy

    Dołączył(a): 07 sty 2014
    Posty: 8
    Pomógł: 0

    Witam, mam pytanie,
    W jaki sposób można przekazać argument do funkcji waitus?

    Program z waitus 900 działa, a z kolei

    o=900
    waitus o


    Nie działa. W przypadku waitms można tak przekazywać argument i wszystko działa.
    Z góry dziękuje za odpowiedź.


    @Edit. Znaczy wiem, że nie może być przekazna zmienna, ale jest jakiś inny sposób na odpalenie tej funkcji z parametrami?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 lut 2014, o 13:16 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 07 lut 2013
    Posty: 600
    Pomógł: 47

    Jeżeli ta funkcja przyjmuje jeden parametr i nic nie zwraca i zakładam że jest w języku C to może tak:

    waitus(o);
    lub
    waitus(900);

    _________________
    https://www.instagram.com/myfirstquadcopter/



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 lut 2014, o 13:24 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 13 paź 2011
    Posty: 581
    Pomógł: 17

    Agnes napisał(a):
    Program z waitus 900 działa,

    To zrób w to w forze

    o=10; // np. 10
    for(uint8_t a=0; a<o; a++){
    waitus 900
    }



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 lut 2014, o 13:24 
    Offline
    Użytkownik

    Dołączył(a): 16 maja 2012
    Posty: 349
    Lokalizacja: Legnica
    Zbananowany użytkownik

    Pomógł: 23

    Było już wiele razy.
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    Działa około dokładnie bo jest narzut na prolog, epilog i pętlę w funkcji.

    ------------------------ [ Dodano po: kilkunastu sekundach ]

    No to się powtórzyłem :)

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 lut 2014, o 13:29 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 10 sty 2014
    Posty: 447
    Lokalizacja: DKL
    Pomógł: 53

    @kurnachatka, @xamrex, @perlon, wszystko ładnie pięknie tylko że kolega / koleżanka @Agnes pyta o funkcję w Bascomie ;)

    _________________
    Migracja z punktu B do punktu C
    Pozdrawiam



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 lut 2014, o 13:32 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 07 lut 2013
    Posty: 600
    Pomógł: 47

    matw napisał(a):
    @kurnachatka, @xamrex, @perlon, wszystko ładnie pięknie tylko że kolega / koleżanka @Agnes pyta o funkcję w Bascomie ;)


    :lol: :lol: :lol: No właśnie też mi tu coś nie halo było, dlatego dopisałem "zakładam że jest w języku C"

    _________________
    https://www.instagram.com/myfirstquadcopter/



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 lut 2014, o 14:12 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 24 gru 2012
    Posty: 146
    Lokalizacja: Racibórz
    Zbananowany użytkownik

    Pomógł: 0

    A coś takiego jak : Dim o as integer zrobiłeś?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 lut 2014, o 14:47 
    Offline
    Nowy

    Dołączył(a): 07 sty 2014
    Posty: 8
    Pomógł: 0

    Tak, dodałem zmienną, domyślnie ta funkcja nie przyjmuje argumentów, i trzeba podać po prostu liczbę. Mogę to zrobić na timerze, ale to nie będzie uniwersalne, bo będzie zależne od kwarcu, a chodzi mi o funkcje delay z dokładnością do 50us. W BASCOMIE ;)

    @Edit. Dobra, zrobiłem to w bardzo barbarzyński sposób:

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



    Ostatnio edytowano 26 lut 2014, o 15:11 przez Agnes, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 lut 2014, o 15:06 
    Offline
    Użytkownik

    Dołączył(a): 16 maja 2012
    Posty: 349
    Lokalizacja: Legnica
    Zbananowany użytkownik

    Pomógł: 23

    Co za różnica jaki język. Skoro waitus przyjmuje wyłącznie stałe to trzeba ją opakować w pętlę for zamknąć w procedurę z argumentem jako zmienna i będzie przyjmować zmienne. Nie wiem jak to napisać konkretnie w BASCOM bo nigdy nic w nim nie napisałem ale zapewne procedury i pętle w nim są.

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 lut 2014, o 20:13 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 29 sty 2012
    Posty: 777
    Lokalizacja: Karpicko k. Wolsztyna
    Pomógł: 197

    To dziwne, że koledze polecenie Waitus nie przyjmuje zmiennej jako argumentu bo mi przyjmuje i taki program mi działa
    Składnia: [ Pobierz ] [ Ukryj ]
    język basic4gl
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 lut 2014, o 22:29 
    Offline
    Nowy

    Dołączył(a): 07 sty 2014
    Posty: 8
    Pomógł: 0

    Używałem tego do bardzo prostego sterownika silnika krokowego, do czasu pomiędzy zasilaniem kolejnych cewek.
    Wersja z np: ii=2500
    waitus ii


    nie działa.

    a waitus 2500
    działa.

    Błędów mi nie wywala, ale po prostu nie działa.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 lut 2014, o 20:30 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 29 sty 2012
    Posty: 777
    Lokalizacja: Karpicko k. Wolsztyna
    Pomógł: 197

    A sprawdzałeś na takim najprostszym kodzie czy ci działa? Wgraj mój przykład i sprawdź.

    A jakiej wersji Bascoma używasz? Może w twojej wersji jest coś namieszane.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 lut 2014, o 11:01 
    Offline
    Nowy

    Dołączył(a): 07 sty 2014
    Posty: 8
    Pomógł: 0

    Bardzo możliwe, ze to przez tak starą wersje jaką mam(1.11.9.5), bo Twój kod mi również nie działa, a w pomocy jest jasno napisane:

    Kod:
    The number of microseconds to wait. (1-65535)

    This must be a constant. Not a variable!



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 1 mar 2014, o 21:03 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 29 sty 2012
    Posty: 777
    Lokalizacja: Karpicko k. Wolsztyna
    Pomógł: 197

    Sprawdziłem ten program na wersji 1.11.8.1 i nie działa jesli za argument wstawię zmienną. Natomiast w wersji 2.0.5.0 działa ale częstotliwość migania diody jest trochę mniejsza jeśli argumentem jest zmienna. Ze stałą jako argumentem miga troszkę szybciej.

    W sumie wcale mnie to nie dziwi. W Bascomie takie kwiatki się trafiają.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 2 mar 2014, o 13:27 
    Offline
    Nowy

    Dołączył(a): 07 sty 2014
    Posty: 8
    Pomógł: 0

    No niestety bascom nie jest środowiskiem doskonałym, ale udało się zrobić to co chciałem w pełni, więc i tak jestem zadowolony.

    Dziękuje za odpowiedzi w temacie, pozdrawiam!



    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: 15 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

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


    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:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO