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



Teraz jest 11 kwi 2026, o 11:01


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 18 ] 
Autor Wiadomość
PostNapisane: 8 gru 2015, o 18:51 
Offline
Nowy

Dołączył(a): 04 gru 2015
Posty: 8
Pomógł: 0

Witam wszystkich
Mam takie oto zadanie: po wciśnięciu przycisku ma zacząć się odliczanie czasu (od 999 do zera).
Wartość na bieżąco wyświetlana na wyświetlaczu 3 seg. ze wspólną anodą .
Z obsługą wyświetlacza dam sobie radę, ale z timerów jeszcze nigdy nie korzystałem.
Prosiłbym o linka jeśli ktoś widział gdzieś podobny program albo opis konfiguracji timerów i przerwań zewnętrznych lub o jakieś wskazówki.
Pracuję na Eclipse
Pozdrawiam!
(wyświetlacz podłączony jest poprzez HEF4543B do atmegi8 )



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 gru 2015, o 21:09 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

Wykorzystanie timera2 wraz z opisem znajdziesz tutaj:
http://mirekk36.blogspot.com/2012/10/ob ... a-cd3.html
Kod jest dosyć złożony, ale sam timer to kilkanaście linijek.

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 gru 2015, o 21:11 
Offline
Nowy

Dołączył(a): 04 gru 2015
Posty: 8
Pomógł: 0

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

Na razie próbuje napisać program bez użycia timerów ale program nie działa tak jak chce :(



Ostatnio edytowano 8 gru 2015, o 21:19 przez czesio0502, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 gru 2015, o 21:34 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

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

Ma być y--

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 gru 2015, o 21:43 
Offline
Nowy

Dołączył(a): 04 gru 2015
Posty: 8
Pomógł: 0

Error :(
[ obrazki wstawiamy zgodnie z instrukcją na forum w postaci MINIATURKI - mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 gru 2015, o 21:55 
Offline
Użytkownik

Dołączył(a): 26 lip 2015
Posty: 269
Pomógł: 34

chodziło oto, że tak ma wyglądać 3 argument pętli for. Tak ma wyglądać ta pętla.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

fragment "int y = 333" oznacza stworzenie zmiennej typu int o nazwie y i przypisanie jej wartości 333
fragment "y>0" oznacza, że pętla ma się wykonywać dopóki zmienna y będzie większa od zera.
fragment " y--" oznacza, że po skończeniu obiegu pętli od zmiennej y jest odejmowane jeden.


Autor postu otrzymał pochwałę


Ostatnio edytowano 8 gru 2015, o 21:59 przez Bartek123, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 gru 2015, o 21:56 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

Popraw ten obrazek:
Fotki na FORUM !!!


Autor postu otrzymał pochwałę

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 gru 2015, o 22:12 
Offline
Nowy

Dołączył(a): 04 gru 2015
Posty: 8
Pomógł: 0

Sorki wkradł się błąd 7 seg. 3 cyfrowy ;)
Językiem c posługuje się od jakiegoś miesiąca i nie znam jeszcze wszystkich funkcji , jedyne te podstawowe ,
Mam wielką prośbę pomożecie mi skonfigurować ten timer,żeby odliczał od 999 do zera ? Plss
Zacząłem już nawet szukać porównań do innych projektów tego typu i splotłem takie cosik ;)
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


------------------------ [ Dodano po: 39 minutach ]

Bartek123 i Krauser jesteście wielcy :D ..działa !!



Ostatnio edytowano 9 gru 2015, o 16:31 przez czesio0502, łącznie edytowano 2 razy

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 gru 2015, o 23:42 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

czesio0502 napisał(a):
Bartek123 jesteś wielki :D ..dzała !!


No nie tylko Bartek123 ale też
:
Krauser napisał(a):
czesio0502 napisał(a):
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Ma być y--



Tym panom należy się klawisz pomógł :)


Autor postu otrzymał pochwałę

_________________
Usługi druku przestrzennego - www.drumik.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 gru 2015, o 16:19 
Offline
Nowy

Dołączył(a): 04 gru 2015
Posty: 8
Pomógł: 0

https://www.youtube.com/watch?v=Py3Eg1e ... e=youtu.be
Program działa ale czasami nie wyświetla niektórych cyfr
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Wydaje mi się że trzeba coś zmienić i inaczej zapisać" s=i/100;
j=i%10;
d=((i-s)-j)/10;" ale nwm jak to zrobić ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 gru 2015, o 18:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

czesio0502 napisał(a):
https://www.youtube.com/watch?v=Py3Eg1esPbk&feature=youtu.be


Wydaje mi się że trzeba coś zmienić i inaczej zapisać" s=i/100;
j=i%10;
d=((i-s)-j)/10;" ale nwm jak to zrobić ?




Opis: Czesio komentujący problem Higienistki i P. Frał "A jak mają jakieś wąty to nie trza było sie phadź do telewizji mondzioły."

To odnośnie twoich cyfr :D

A teraz na poważnie ... można to zrealizować inaczej ...

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


wyliczone zostanie to tak:
setne = 255 / 100 = 2.5 gdzie liczba uint8_t nie jest zmienno przecinkowa więc zostanie 2
dziesietne = (255 - (2 * 100) ) / 10 = (255 - 200) / 10 = 55 / 10 = 5.5 zostanie 5
jednosci = 255 - ( ( 5 * 10 ) + ( 2 * 100) ) = 255 - (50 + 200) = 255 - 250 = 5

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


Oblicz sobie dla innych wartości bo pisałem to tutaj na forum ale powinno to działać z każdą wartością od 0 do 999

Pozdrawiam


Autor postu otrzymał pochwałę

_________________
Usługi druku przestrzennego - www.drumik.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 gru 2015, o 19:19 
Offline
Nowy

Dołączył(a): 04 gru 2015
Posty: 8
Pomógł: 0

Dzięki za radę ale nie działa :(
zastanawiam się czy nie szybciej by było na tym timerze :D niestety nie umiem z niego korzystać :( pomóżcie
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 gru 2015, o 19:23 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

Nie dziala bo s d j jest u ciebie to uint8_t a i jest typu int.

Zmien s d j na typ int

uint8_t to zakres cyfr od 0 do 255 a

9 * 100 to 900 wiec jak ma dzialac ?

Namazane ze smarta.

_________________
Usługi druku przestrzennego - www.drumik.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 gru 2015, o 19:32 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

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

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

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 gru 2015, o 19:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

Krauser napisał(a):
Kolega majster inaczej postawił nawiasy. Popraw:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

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


tak to się również zgadza ale kolega próbuje wpisać coś typu

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


powinno być tak:

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

_________________
Usługi druku przestrzennego - www.drumik.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 gru 2015, o 19:41 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

Będzie dobrze działać na uint8_t dlatego, że jest coś takiego jak domyślna promocja do typu int. Kod może wyglądać prościej:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Autor postu otrzymał pochwałę

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 gru 2015, o 19:44 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

Krauser napisał(a):
Będzie dobrze działać na uint8_t dlatego, że jest coś takiego jak domyślna promocja do typu int. Kod może wyglądać prościej:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Owszem może też będzie działało świetnie :)
prototyp zawsze można rozpisać prościej :) ja chciałem łopatologicznie :) by było zrozumiałe :)


Autor postu otrzymał pochwałę

_________________
Usługi druku przestrzennego - www.drumik.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 gru 2015, o 15:19 
Offline
Nowy

Dołączył(a): 04 gru 2015
Posty: 8
Pomógł: 0

Panowie i wszyscy należy wam się wielkie piwo bo działa
Dla innych zamieszczam kod który działa i wszelkie inne instrukcje
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Schemat podłączeń według datashit
http://www.sigmaelectronica.net/manuals/LDS-5361BS.pdf
http://download.maritex.com.pl/pdfs/sc/HEF4543B.pdf
a=Qa
b=Qb...
d0=PD0
d1=PD1...
zasilanie podłączone przez tranzystor w formie przekaźnika do wyświetlacza ;) Pozdrawiam i temat uważam za zamknięty



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

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