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 9 maja 2025, o 02:10


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 10 ] 
    Autor Wiadomość
    PostNapisane: 7 mar 2018, o 13:34 
    Offline
    Użytkownik

    Dołączył(a): 12 lis 2014
    Posty: 108
    Pomógł: 0

    Witam wszystkich.
    Nie chciałem zbytnio rozciągać poprzedniego tematu, a więc założyłem nowy, choć dotyczy podobnych kwestii.
    Proszę o pomoc w rozwiązaniu następującego problemu. Do tej pory najczęściej spotykałem się z tematem wyświetlania np.
    napięcia adc w formie paska, czyli jak zwał, tak zwał bargrafu. Oczywiście byłbym chory, gdybym nie utrudniał sobie życia i nie
    wymyślił czegoś nowego. Chcę mianowicie zobrazować to samo, czyli np, wartość adc w formie graficznej,ale w postaci nazwijmy to
    punktowej. Dokładniej, w postaci tylko jednego zaciemnionego segmentu, czy też kreski danego segmentu.
    Chodzi o to, że przy zwiększaniu wartości mierzonej, zaciemniony segment przesuwałby się po linii od lewej do prawej i z powrotem,
    ale poprzedzające go segmenty nie byłyby zaciemniane. Tak, jak działa np. zwykły wskaźnik analogowy wychyłowy.
    Nie mam pomysła, jak się do tego zabrać i proszę o pomoc, jak by to w praktyce zrobić. Dziękuję za wszelkie sugestie. Używam
    wyświetlacza na sterowniku 44780.

    Robson.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 mar 2018, o 13:38 
    Offline
    Moderator
    Avatar użytkownika

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

    troszkę dziwne to pytanie wobec innego twojego podobnego w innym wątku .... bo aż chciałoby się odpowiedzieć, że możesz to uzyskać DOKŁADNIE na tej samej zasadzie ... zabawa z definiowaniem znaków w locie - toż to robiłeś już tyle że z kropkami i teraz uważasz że jak chcesz kreski jakieś tam to jest inne zagadnienie ?

    _________________
    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: 7 mar 2018, o 14:17 
    Offline
    Użytkownik

    Dołączył(a): 12 lis 2014
    Posty: 108
    Pomógł: 0

    Witaj Mirku.
    Może źle zadałem pytanie, albo źle opisałem sytuację. Z rysowaniem kropek, czy kresek jest inna sytuacja, ponieważ przy zwiększaniu
    wartości mierzonej wydłuża się linijka palących się segmentów, a te poprzedzające aktualną NAJWYŻSZĄ w danym momencie są również
    zapalone. No kropki są widoczne cały czas, czy jest napięcie, czy tez nie, tylko zaciemnienie słupków się zmienia. Ja natomiast chcę
    zapalić tylko jeden segment, a najlepiej 1 z pięciu słupków danego segmentu i tylko taki słupek wędrowałby po linijce, a pozostałe
    segmenty i słupki po lewej by gasły.
    Wiem, jak to napisać po "swojemu", czyli jeśli wartość adc jest w zakresie od-do, to zapal zerowy segment. Jeśli adc jest
    w zakresie od-do (zwiększa się napięcie). to zapal 1 segment, potem 2 segment, itd....Mówię tu o zapalaniu całego segmentu, ale
    lepiej pojedynczy słupek (rozdzielczość). Tylko będzie to na wielu ifach i najgorszy z możliwych sposób. Dla tego myślałem, że może
    ktoś zechce zapodać coś mądrzejszego, a ja spróbuję to rozwinąć. To tak, jak statycznie wyświetlane kropki napisałem tak:

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


    a kiedyś zrobiłbym to na ifach i nie wiem, ile linijek i czasu by mi to zajęło. 13*5, to chyba z 50 ifów :lol: .

    Chodzi o to, że jeśli np. zapali się piąty segment przy np. adc=2 volty, to segmenty od 0 do 4 nie świecą...



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 mar 2018, o 17:34 
    Offline
    Użytkownik

    Dołączył(a): 19 lip 2013
    Posty: 771
    Pomógł: 40

    Nie wiem czy dobrze rozumie, ale to raczej proste jest. Jak masz zapalony piksel na pozycji np.:5 i się zmienia na 6 to najpierw gasisz 5 i zapalasz szóstkę. Ale to chyba nie o to chodzi bo to jest za proste :).Ja sobie robię dwie zmienne aktualna i stara. Stara gasi poprzedni piksel i później przypisuje wartość nowej.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 mar 2018, o 10:16 
    Offline
    Użytkownik

    Dołączył(a): 12 lis 2014
    Posty: 108
    Pomógł: 0

    Dzięki grzeniu73
    Postaram się przemyśleć to, co napisałeś i zaadoptować do mojego programu. Ja rozumiem, że czasami zadaję dziwne pytania
    dotyczące prostych rzeczy, ale zrozumienie tych mechanizmów w C nie przychodzi mi łatwo. Po prostu często nie ogarniam, że
    tak prosto można coś napisać i będzie ok. No ale pomału do przodu :) . Na razie dzięki za chęć pomocy. Jak coś wymyślę, to dam
    znać. Nie zawsze mam czas na Eclipse.
    Robson.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 mar 2018, o 12:21 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 22 paź 2013
    Posty: 1968
    Lokalizacja: Lipsko
    Pomógł: 125

    A czy próbowałeś zmodyfikować nieco moją funkcję i zamiast drukować znaki od początku do miejsca docelowego, drukować tylko JEDEN znak pomijając pętlę, a wyznaczając tylko jego ostateczną pozycję?? Jeśli nie to na co czekasz...

    _________________
    http://www.sylwekkuna.com



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 mar 2018, o 13:51 
    Offline
    Użytkownik

    Dołączył(a): 12 lis 2014
    Posty: 108
    Pomógł: 0

    Witaj Sylwekk
    Dzięki za niegasnące zainteresowanie moim wątkiem. Będę coś próbował wymyślić. Nie chcę też zatrzymywać się na bardzo długo
    przy jednym temacie, bo nigdy nie skończę i nie pójdę dalej. Z kolei odpuszczać, to też nie jest wyjście z sytuacji. Chciałbym
    rozpocząć zabawę z kolorowym wyświetlaczem, ale tu jeszcze dużo nie wiem, jak samemu wymyślić kawałek kodu do konkretnego
    zadania, a więc daję na wstrzymanie.
    Pozdrawiam Robson.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 mar 2018, o 15:08 
    Offline
    Użytkownik

    Dołączył(a): 19 lip 2013
    Posty: 771
    Pomógł: 40

    No ja "C" tez nie ogarniam i nie rozumie. Pisze w Bascom :) Jednak chyba sama zasada pozostaje taka sama.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 mar 2018, o 20:26 
    Offline
    Użytkownik

    Dołączył(a): 12 lis 2014
    Posty: 108
    Pomógł: 0

    Pewnie, że zasada jest taka sama. Pewnie sam kod jest trochę inny, no bo to C, a nie Bascom, tylko trzeba się trochę naumieć. Każdy kiedyś zaczynał
    od zera i migał diodą :lol: . No i nie każdy ma czas tylko na to. Ja dopiero po niedzieli może znajdę chwilę na dalsze eksperymenta w tym temacie. Najważniejsze, że sprawia mi to przyjemność i niech tak zostanie. Robienie czegoś na siłę, to już nie to. Pozdrowionka i udanego weekendu.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 24 wrz 2018, o 09:57 
    Offline
    Użytkownik

    Dołączył(a): 12 lis 2014
    Posty: 108
    Pomógł: 0

    Witam.
    Przeglądając swoje stare posty postanowiłem dokończyć ten temat, a żeby był jakiś porządek. Wklejam mały kod, który załatwił mój problem.

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


    Może się komuś przyda.



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

    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