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



Teraz jest 18 lis 2024, o 14:43


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 12 ] 
Autor Wiadomość
PostNapisane: 27 gru 2013, o 17:15 
Offline
Użytkownik

Dołączył(a): 08 lis 2013
Posty: 31
Pomógł: 0

Witam wszystkich.

Chciałem podzielić się z wszystkimi moją nową konstrukcją.
Jest to zegar LED z obsługą jednego czujnika DS18B20.
Nie jestem autorem softu od zera. Dokonałem tylko modyfikacji.

Oto co zmieniłem:
- dodałem obsługę jednego czujnika DS18B20
- wyeliminowałem problem słabego świecenia wyświetlaczy
- wyeliminowałem z kodu przestarzałe już instrukcje
- usunąłem podtrzymanie bateryjne
- zmniejszyłem częstotliwość migania kropki (zmiana stanu co sekundę)

Aby wyświetlacze świeciły jaśniej, emitery zostały zasilone z przetwornicy napięcia opartej o układ LM2596 (układy te można tanio kupić w Chinach z darmową przesyłką) ustawionej na 7,5V. Dodatkowo zostały zmienione tranzystory na BC327-40 (mogą być BC327-25) dodane diody na bazy, oraz rezystory między bazami, a emiterami.
Przy zastosowaniu filtra (użyłem dymionej plexi) wszystko na wyświetlaczach widać bardzo dobrze zarówno w nocy, jak i w słoneczny dzień.
Cały układ zasilam z zasilacza 12V i taki zasilacz zalecam.
Uwaga. Gdy ktoś programuje procesor w układzie, na czas programowania należy odpiąć/wylutować czujnik temperatury, gdyż "przeszkadza" on w programowaniu.

Działanie: układ na zmianę pokazuje czas i temperaturę. Temperatura pokazywana jest przez 2 sekundy co 8 sekund. Czas ten można bardzo prosto zmienić sobie wg upodobań w kodzie głównym programu. Trzy przyciski służą do ustawiania godzin, minut oraz resetowania sekund.

Atmega8 taktowana z wewnętrznego rezonatora 8MHz, timer działa w trybie asynchronicznym z zewnętrznego kwarcu 32768Hz.

Zdjęcia:
ObrazekObrazek
ObrazekObrazekObrazek
Obrazek

W załączniku zamieszczam program (w języku C wraz z biblioteką do DS'a oraz skompilowany *.hex) oraz płytkę pcb w *.pdf'ie.

Życzę powodzenia wszystkim początkującym elektronikom, w razie czego służę pomocą.

Pozdrawiam, szczęśliwego nowego roku!


Załączniki:

Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 gru 2013, o 18:08 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 lip 2013
Posty: 420
Lokalizacja: Kraków
Pomógł: 17

Super projekcik. Może kiedyś mi się przyda :D

_________________
GreenBook i BlueBook



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 gru 2013, o 20:01 
Offline
Moderator
Avatar użytkownika

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

Ślicznie wyglądają te wyświetlacze za tym ciemnym filtrem ;) bardzo ładna konstrukcja ;)

_________________
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: 2 sty 2014, o 18:08 
Offline
Użytkownik

Dołączył(a): 08 lis 2013
Posty: 31
Pomógł: 0

Dzięki, cieszę się, że się podoba.

dambo, nie, ten czujniczek tak nie sterczy :) Nie widać go w ogóle.

Do zegarka dorobiłem bardzo prostą korekcję chodu.

W pliku main.c wewnątrz funkcji if (od przepełnienia dziesiątek minut) wystarczy dodać linijkę:
Kod:
czesci_sekundy=510;

Oczywiście zamiast 510 należy wpisać swoją wartość.

Jeśli komuś zegarek spieszy o 2 sekundy na 5 dni, trzeba wpisać 503, ponieważ: (512-503)*1/512*24*5=~2s

Jeśli komuś zegarek się spóźnia o 2 sekundy na 5 dni, różnicę 512-503=22 należy dodać do 512, czyli wpisać należy wtedy 534

PS: Dzięki jednej linijce "kodu", aby uzyskać zadowalającą dokładność nie musimy stosować układu DS3231, ani DCFa, ani nawet modułu GPS! :D



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 17 sty 2014, o 00:26 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2013
Posty: 67
Pomógł: 1

Kolega z [*] Mod Planet ?

_________________
Zdravim



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

Dołączył(a): 31 sty 2014
Posty: 7
Pomógł: 0

Fajny projekt sam myślę na podobnym, mam pytanie jaką metodą wykonywałeś płytkę termotransferem czy fotochemicznie?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 lut 2014, o 21:28 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 12 paź 2011
Posty: 780
Pomógł: 20

czym zabezpieczyłeś ścieżki ?

elegancko ci to wyszło :)
osobiście to ja z lenistwa bym połączenia narysował magistralą :) ale to niema znaczenia projekt fajny nawet bardzo :)
a powiesz poco są te diody zenera ? :)

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 lut 2014, o 21:36 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 31 sty 2014
Posty: 24
Lokalizacja: Leżajsk
Pomógł: 1

Wyszło świetnie! :D

Mam tylko takie techniczne pytanie: mierzyłeś ile układ pobiera prądu? Gdy korzystasz z zasilacza, pewnie wydaje się to mało istotne; ja myślałem nad czymś podobnym, ale zasilanym z baterii.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 kwi 2014, o 20:03 
Offline
Użytkownik

Dołączył(a): 08 lis 2013
Posty: 31
Pomógł: 0

Przepraszam, że tak późno odpisuję, ale dawno tutaj nie zaglądałem.

Maras, tak, na mod-planet również czasem piszę :) (tak, tam coś ktoś jeszcze pisze ;) )

Płytkę wykonywałem metodą termotransferu, na żelazko.
Ścieżki niczym nie są zabezpieczone.
Diody Zenera są konieczne, jeśli procesor zasilany jest innym napięciem, niż wyświetlacze.
Cały układ zasilam z zasilacza, nie mierzyłem ile pobiera prądu.
Z baterii nie zalecam zasilać wyświetlaczy LED, prędzej takie z nokii 3310 ;)
Jednak te świecidełka pobierają zbyt dużo prądu, żeby bawić się w baterie. Chyba, że masz jakiś duży akumulator i chcesz sobie go ładować ogniwem fotowoltaicznym, ale to już inna bajka.

Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 mar 2015, o 18:40 
Offline
Użytkownik

Dołączył(a): 24 wrz 2014
Posty: 25
Pomógł: 0

Pytanie z innej beczki: Jak "dorobić" kropkę w tym kodzie. Chodzi mi o wyświetlenie dziesiątej części temperatury po kropce. Trzeba zakładać nową tablice, aby w niej przypisać wartości cyfr już wcześniej zdefiniowanych jako te z kropką "przypisaną"? Czy istnieje jakieś prostsze rozwiązanie? Z góry dziękuję za odpowiedź.
Marcin


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: 29 mar 2015, o 19:03 
Offline
Użytkownik
Avatar użytkownika

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

Jeśli używasz biblioteki do obsługi wyświetlacza LED z Bluebooka to możesz zrobić tak topic869.html#p3279
albo tak topic7744.html#p87600



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 mar 2015, o 21:12 
Offline
Użytkownik

Dołączył(a): 14 lut 2015
Posty: 44
Pomógł: 2

Lub jeszcze inaczej, też gdzieś to tutaj wyczytałem, ale teraz znaleźć nie mogę.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Zmienną "kropka" wykorzystujesz do na którym segmencie chcesz zapalić kropkę.
Ja za pomocą tego zrealizowałem miganie kropki imitujące dwukropek w zegarkach :D
Zmieniam po prostu cyklicznie z "0" na "2", gdyż w drugim segmencie potrzebowałem kropki :P

EDIT: A przepraszam, jest odnośnik do tego sposobu w tematach wklejonych wyżej.
post35234.html#p35234



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

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 3 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:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO