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



Teraz jest 25 kwi 2024, o 16:10


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 30 ] 
Autor Wiadomość
PostNapisane: 18 lis 2015, o 08:42 
Offline
Użytkownik

Dołączył(a): 09 mar 2013
Posty: 28
Lokalizacja: Góra Kalwaria
Pomógł: 0

Witam,

Projektuję urządzenie, które w jednej obudowie będzie miało dwa oddzielne komputerki na Atmegach. Obydwie Atmegi będą potrzebowały odczytywać czas i teraz mam do was pytanie jak to najlepiej zaplanować na etapie projektowania?
Czy można podłączyć SDA i SCL obu procesorów do jednego PCF8583 (czy będzie działało)?
Może macie jakieś doświadczenia z podobnymi problemami.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lis 2015, o 10:02 
Offline
Użytkownik

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

Pomógł: 23

Wystarczy żeby jeden z procesorów był master, drugi slave. Master inicjując transmisję odpyta zegarek, procesor slave może "podsłuchać" transmisję do/z zegarka do mastera. Na slave trzeba by zapewne lekko zmodyfikować obsługę i2c żeby nie ignorował transmisji adresowanej do mastera.

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lis 2015, o 13:51 
Offline
Użytkownik

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

Można także zastosować 2 multipleksery, lub połączyć obydwie atmegi ścieżką i wymyślić sposób, aby kiedy jedna się komunikuje z rtc to druga nie przeszkadzała i na odwrót gdy druga atmega się komunikuje z rtc to pierwsza nie przeszkadzała.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lis 2015, o 14:19 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Ale po co tak kombinować. I2C pracuje poprawnie z więcej niz jednym masterem. Są przewidziane odpowiednie stany i procedury związane z zarządzaniem szyną przez więcej niż jeden master. Atmel nazywa to "Multi-master Arbitration Support":
Cytuj:
Multi-master Bus Systems, Arbitration and Synchronization
The TWI protocol allows bus systems with several masters. Special concerns have been taken in order to ensure that transmissions will proceed as normal, even if two or more masters initiate a transmission at the same time. Two problems arise in multi-master systems:
- An algorithm must be implemented allowing only one of the masters to complete the transmission. All other masters should cease transmission when they discover that they have lost the selection process. This selection process is called arbitration. When a contending master discovers that it has lost the arbitration process, it should immediately switch to Slave mode to check whether it is being addressed by the winning master. The fact that multiple masters have started transmission at the same time should not be detectable to the slaves, i.e. the data being transferred on the bus must not be corrupted.
- Different masters may use different SCL frequencies. A scheme must be devised to synchronize the serial clocks from all masters, in order to let the transmission proceed in a lockstep fashion. This will facilitate the arbitration process.
The wired-ANDing of the bus lines is used to solve both these problems. The serial clocks from all masters will be wired-ANDed, yielding a combined clock with a high period equal to the one from the Master with the shortest high period. The low period of the combined clock is equal to the low period of the Master with the longest low period. Note that all masters listen to the SCL line, effectively starting to count their SCL high and low time-out periods when the combined SCL line goes high or low, respectively.
Arbitration is carried out by all masters continuously monitoring the SDA line after outputting data. If the value read from the SDA line does not match the value the Master had output, it has lost the arbitration. Note that a Master can only lose arbitration when it outputs a high SDA value while another Master outputs a low value. The losing Master should immediately go to Slave mode, checking if it is being addressed by the winning Master. The SDA line should be left high, but losing masters are allowed to generate a clock signal until the end of the current data or address packet. Arbitration will continue until only one Master remains, and this may take many bits. If several masters are trying to address the same Slave, arbitration will continue into the data packet.
Note that arbitration is not allowed between:
- A REPEATED START condition and a data bit
- A STOP condition and a data bit
- A REPEATED START and a STOP condition
It is the user software’s responsibility to ensure that these illegal arbitration conditions never occur. This implies that in multi-master systems, all data transfers must use the same composition of SLA+R/W and data packets. In other words: All transmissions must contain the same number of data packets, otherwise the result of the arbitration is undefined.


--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lis 2015, o 14:47 
Offline
Użytkownik

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

Pomógł: 23

Co kraj to obyczaj. Ja uważam, że nasłuch sleva komunikacji między masterem a zegarkiem gwarantuje, że oba procesory zawsze będą miały ten sam czas "ze źródła". Multi master jest z definicji bardziej skomplikowany bo wymaga "negocjacji" a raczej arbitrażu miedzy masterami. Jak jest jeden master nie musi z nikim niczego uzgadniać. Ale jak kto woli. Można tak, można inaczej.

_________________
sig off ;(



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

Dołączył(a): 29 maja 2013
Posty: 432
Lokalizacja: Gostyń / Poznań
Pomógł: 25

A te dwa procesory rozmawiają ze sobą też jakoś? Może jeden obsłuży I2C a drugi mu wyśle czas inaczej?

_________________
Podpis...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lis 2015, o 15:34 
Offline
Użytkownik

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

Pomógł: 23

No chyba że faktycznie te procki za sobą gadają bo coś tam... np. po SPI. No to jeden drugiemu mógłby podrzucić od czasu do czasu również aktualny czas.
To już chyba autor wątku powinien podać więcej szczegółów. Zależy też jak dokładna musi być synchronizacja zegarków.

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lis 2015, o 15:38 
Offline
Moderator
Avatar użytkownika

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

Można też zrobić żeby jeden procek pracował jako SLAVE na I2C , i gdy Master odczyta czas z RTC to od razu wyśle go do SLAVE też po I2C ...

Możliwości jak widać jest miliard albo nawet i więcej ;)

_________________
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: 18 lis 2015, o 16:33 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Jak dwie atmegi mają mieć tylko wspólnego slave PCF8583 z I2C, to po co dorabiać kolejne magistrale?
Proces arbitrażu jest wbudowany w hardware obsługujący szynę TWI (I2C). Należy tylko sprawdzać status zwracany przy wysyłaniu danych na szynę i mamy informację czy możemy dalej nadawać czy zostaliśmy "pokonani" i musimy zaczekać do końca transmisji innego mastera.
Ale jak ktoś lubi sobie dodawać roboty to można nawet zrobić przekazywanie sobie czasu między procesorami po WiFi :lol:

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lis 2015, o 16:41 
Offline
Moderator
Avatar użytkownika

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

rskup napisał(a):
Ale jak ktoś lubi sobie dodawać roboty to można nawet zrobić przekazywanie sobie czasu między procesorami po WiFi :lol:

Szanowny Panie kolego Robercie, proponuję się nie naśmiewać z innych rozwiązań niż to które ty preferujesz. Każde, podkreślam KAŻDE rozwiązanie, które spełnia zadania projektu jest akceptowalne. A rozwiązań jest tyle ilu programistów na świecie ... więc proszę o odrobinę pokory i mniej ironii w swoich "poradach?"

Jeśli chcesz coś poradzić to zrób to, każdy będzie wdzięczny, jeśli masz zamiar ironizować - odpuść sobie - bo to nie to forum ok? proszę

_________________
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: 18 lis 2015, o 16:55 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Ale to "naśmiewanie" nie jest skierowane do innych porad, tylko do mojego pomysłu połączenie po WiFi procków by przesłać sobie czas/datę.
Przecież nie napisałem że proponowane użycie SPI lub innych konfiguracji podłączenia po I2C są złe, śmieszne, itp.
Pojawiały się kolejne propozycje, to także dodałem swoją i się sam do niej "uśmiechnęłem".

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lis 2015, o 17:02 
Offline
Moderator
Avatar użytkownika

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

ok - może źle coś zrozumiałem, proszę tylko uprzejmie o zrozumienie wszystkich na forum...

_________________
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: 18 lis 2015, o 18:47 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 08 maja 2013
Posty: 174
Lokalizacja: Kraków
Pomógł: 8

Najbardziej optymalnym rozwiązaniem w tym przypadku jest multimaster na I2C.

_________________
Rozwój i utrzymywanie Oprogramowania



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lis 2015, o 14:04 
Offline
Użytkownik

Dołączył(a): 11 wrz 2013
Posty: 709
Zbananowany użytkownik

Pomógł: 23

0livaw napisał(a):
Najbardziej optymalnym rozwiązaniem w tym przypadku jest multimaster na I2C.


Dlaczego akurat ten ma być najbardziej optymalny?
Dla mnie bardziej optymalnym jest jednak ten zaproponowany przez kolegę perlon choćby dlatego, że unikamy niepotrzebnych dodatkowych transmisji na magistrali i upraszczamy obsługę i2c.

--
Grzegorz...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lis 2015, o 15:11 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

A to dlatego, że i tak musisz mieć funkcję odczytu zegara po I2C. Wystarczy, że dodasz tylko sprawdzanie statusu zajętości szyny (arbitraż) i masz I2C w wersji multi master. To same funkcje dajesz w obu procesorach i temat załatwiony.
A dodawanie komunikacji po SPI wymaga stworzenia kolejnych połączeń między procesorami oraz całego protokołu wymiany informacji.
Jeżeli jest to tylko pobieranie czasu z zegara dostępnego po I2C, to jest to wiele więcej roboty niż obsługa multi master i2C. Ale jeżeli procesory będą wymieniać się także innymi informacjami, to dodawanie obsługi SPI może mieć większy sens.

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lis 2015, o 15:58 
Offline
Użytkownik

Dołączył(a): 11 wrz 2013
Posty: 709
Zbananowany użytkownik

Pomógł: 23

Jeśli odnosiłeś się do mojej odpowiedzi to proszę cytuję post kolegi perlon:
"Wystarczy żeby jeden z procesorów był master, drugi slave. Master inicjując transmisję odpyta zegarek, procesor slave może "podsłuchać" transmisję do/z zegarka do mastera. Na slave trzeba by zapewne lekko zmodyfikować obsługę i2c żeby nie ignorował transmisji adresowanej do mastera."

Gdzie kolega lub ja pisaliśmy o dodatkowych połączeniach (np. SPI) czy dodatkowym programowaniu innych niż i2c modułów.
To tylko wykorzystanie możliwości.

Dodatkowo jeśli te dwa uC mają się ze sobą porozumiewać po i2c to chyba łatwiej aby jeden był slave.
A jeśli nie mają się tak porozumiewać to i tak rozwiązanie jest wg. mnie dobre - wystarczy do obu procków doprowadzić INT z PCF-a i mamy "wyzwalacz" synchronizujący pracę obu procków z czego jeden jako master inicjuje transmisję, a drugi tylko "słucha" odpowiedzi z PCF.

--
Grzegorz...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lis 2015, o 16:07 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

SPI wzięło się z wypowiedzi kolegi perona:
Cytuj:
No chyba że faktycznie te procki za sobą gadają bo coś tam... np. po SPI. No to jeden drugiemu mógłby podrzucić od czasu do czasu również aktualny czas.
Może miał coś innego na myśli, ale ja tak to zrozumiałem ;(

Tylko aby słuchać na drugim procki komunikacji musisz mu zrobić pełne "debagingowe" procedury I2C. To chyba lepiej zrobić dodanie sprawdzania kilku statusów i2C ...

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lis 2015, o 16:32 
Offline
Użytkownik

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

Pomógł: 23

Moja uwaga o SPI była jedynie przyczynkiem do pytania kol. eMCe2. Skoro dwa procesory siedzą w jednej obudowie to zapewne po coś tam siedzą i od czasu do czasu z nudów do siebie gębę otworzą. Ja jakbym siedział w jednym pokoju z drugą osobą to bym się w końcu odezwał. No nie ma bata, jakby to była nawet cela ;-) Nic nie wiemy nt. komunikacji między nimi więc wszystko co powyżej jest napisane jest czystą spekulacją. Co wiemy na pewno?
1 procesor musi być MASTER
1 zegarek musi być SLAVE
1 procesor może być MASTER albo może być SLAVE albo może być podłączony za pomocą innego medium. Pytanie było o odczytywanie czasu i wspólną linię SDA SCL więc zakładam że wszystkie trzy elementy wiszą na I2C, więc chyba nie ma sensu dublować połączeń. Jeszcze w grę oczywiście wchodzą szybkości magistral.
A kol. sauron80 rzucił hasło i zniknął :)

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 lis 2015, o 17:28 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Cytuj:
A kol. sauron80 rzucił hasło i zniknął :)

Też to zauważyłem, że my sobie dyskutujemy o wyższości Świąt Wielkiejnocy nad Świętami Bożego Narodzenia a autora zamieszania nie ma :(

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 lis 2015, o 15:03 
Offline
Użytkownik

Dołączył(a): 09 mar 2013
Posty: 28
Lokalizacja: Góra Kalwaria
Pomógł: 0

Zniknąłem, ale wątek przelotnie przeczytałem, widzę, że wywołałem burzę w szklance wody.

Po przeczytaniu porad i wstępnej analizie wybrałem następujący sposób.(czekam an komentarze)
Dodam może, że nie mogę poświęcić bardzo dużo czasu na naukę i staram się wykorzystać wiedze nabytą z blue book i forum.

1. Wyjście INT PCFa podłączę do INT obu procesorów.
2. Na jednym procesorze ustawię przerwanie na zbocze narastające, a na drugim opadające.
3. W przerwaniach oba procki będą sobie rozmawiać na zasadach master-slave z PCFem.

Dodam, że mój czas poświęcony na projekty jest wprost proporcjonalny do spania dziecka w dzień, a jest to zmienna mocno losowa.

Dwa komputery w jednej obudowie będą ponieważ pomiar temperatury za pomocą 18B20 wymaga długich przestojów, co wpływa znacząco na wykonywanie kodu. Dodatkowo na Allegro kupiłem Atmega pro mini, które się świetnie do tego nadają.

Dzięki za wszystkie odpowiedzi/podpowiedzi :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 lis 2015, o 16:07 
Offline
Moderator
Avatar użytkownika

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

sauron80 napisał(a):
2. Na jednym procesorze ustawię przerwanie na zbocze narastające, a na drugim opadające.

hahahaha ;) o mało co nie padłem .... ale z podziwu (w pozytywnym znaczeniu) BRAWO! sauron80 ....

to pokazuje TYLKO JEDNO - co ZAWSZE powtarzam, że rozwiązań jest TYLE ilu jest programistów i elektroników na świecie ;) i nie ma "najoptymalniejszych" rozwiązań .... Bo najbardziej optymalne jest to jakie autor zastosuje w swoim projekcie i spełnia ono swoje zadania w 100%

A to też fajny sposób ;)

_________________
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 lis 2015, o 17:31 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Czy przyczyną użycia drugiego procesora jest tylko fakt
Cytuj:
Dwa komputery w jednej obudowie będą ponieważ pomiar temperatury za pomocą 18B20 wymaga długich przestojów

W czasie konwersji temperatury możesz wykonywać inne operacje i odczytać temperaturę dopiero jak będzie na to pora.

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 lis 2015, o 17:41 
Offline
Moderator
Avatar użytkownika

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

rskup napisał(a):
W czasie konwersji temperatury możesz wykonywać inne operacje i odczytać temperaturę dopiero jak będzie na to pora.

DOKŁADNIE - przy 12-bitowej rozdzielczości będziesz miał na to aż 750 ms ! ;) to cała wieczność dla procesora..... A tu można zobaczyć, co można robić w procku jednocześnie mierząc temperatury takimi czujnikami
http://mirekk36.blogspot.com/2011/09/fa ... mow-z.html

oczywiście można jeszcze więcej ;) co niedługo też pokażę

_________________
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 lis 2015, o 20:16 
Offline
Użytkownik

Dołączył(a): 09 mar 2013
Posty: 28
Lokalizacja: Góra Kalwaria
Pomógł: 0

Dzięki za informacje na temat pomiaru temperatury, miałem już dawno zadać to pytanie na forum, a wyszło przy okazji. Dwa procesory pozostaną także ze względu na wysokość obudowy 1U i potrzebę umieszczenia min. 4 linie po 16 znaków (czyli 2 LCD 2x16).

Nie mówcie teraz, że da się podłączyć dwa wyświetlacze alfanumeryczne do jednego procka :)



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

Dołączył(a): 29 maja 2013
Posty: 432
Lokalizacja: Gostyń / Poznań
Pomógł: 25

Oczywiście ze się da nawet na tym samym i2c co rtc :)

_________________
Podpis...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 lis 2015, o 21:59 
Offline
Moderator
Avatar użytkownika

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

sauron80 napisał(a):
Nie mówcie teraz, że da się podłączyć dwa wyświetlacze alfanumeryczne do jednego procka

:lol: da się nawet trzy ;) albo i cztery co za problem ? i to nawet bez udziału i2c tylko wręcz bezpośrednio .... taka mała podpowiedź albo pytanie do ciebie

A wiesz jak działa wyświetlacz alfanumeryczny o parametrach 4x40 ?

Jeśli nie to podpowiem - to są dwa całkowicie niezależne wyświetlacze ;) ... a od pojedynczego różni go tylko to, że posiada dwie linie o symbolu E ;) ... Idąc tym tropem możesz połączyć sam dwa, trzy , cztery ;) a jak się uprzesz to i więcej takich wyświetlaczy do jednego procka i to wcale nie tracąc dodatkowych pinów na kolejne linie RS,RW i DATA ;) .... Jedynie linie E ci się rozmnożą

_________________
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: 22 lis 2015, o 08:55 
Offline
Użytkownik

Dołączył(a): 11 wrz 2013
Posty: 709
Zbananowany użytkownik

Pomógł: 23

sauron80 napisał(a):
Dwa komputery w jednej obudowie będą ponieważ pomiar temperatury za pomocą 18B20 wymaga długich przestojów


Nie no sorry jakich przestojów?
Jakby z takiego powodu wszędzie stosowano po dwa ( a może więcej, bo coś "hamuje") uC to firmy je produkujące by chyba mogły jeszcze większe "pałace" stawiać.
Zainteresuj się kolego jak programować bez oczekiwania czyli delay-ów.
Ja Ciebie przepraszam, ale dla mnie to "głupota" dodawanie kolejnego procka tylko dlatego, że nie umiesz tego rozwiązać w programie.
Myślę, że to przede wszystkim powinno dać do myślenia dla "idących Twoim śladem" na temat tzw. "dobrych praktyk" w projektowaniu urządzeń jak i ich oprogramowaniu :).
Sorki za sarkazm i krytykę, ale chyba warto troszkę poczytać i spróbować tego w praktyce bez takich błędów.

--
Grzegorz...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 lis 2015, o 12:04 
Offline
Użytkownik

Dołączył(a): 09 mar 2013
Posty: 28
Lokalizacja: Góra Kalwaria
Pomógł: 0

Poczytałem już wstęp do systemów czasu rzeczywistego z niebieskiej. Na podstawie informacji z tego wątku i książki zmieniłem trochę ideologię projektu. Nie wiem tylko, czy wystarczy pamięci na kod programu w Atmega32 (takie mam wykonane płytki w SMD i kupione procesory), ale spróbuję wszystko zmieścić.

Projekt docelowo ma zawierać:
1. pomiar temperatury z dwóch czujników 18B20, dodatkowo z zapamiętywaniem średniej temp. dobowej, tygodniowej, miesięcznej i rocznej
2. pełne wyświetlanie czasu i daty z PCF8583
3. Sterowanie 3 klawiszami oraz pilotem IR(to jedyna tematyka, której w praktyce jeszcze nie przećwiczyłem)
4. sterownie kilkoma urządzeniami zewnętrznymi wł/wył max.4
5. sterownie PWM diodami 4 kolorowymi RGB + biały
6. wyświetlenie godziny na 4 wyświetlaczach 7-segmentowych z multipleksowaniem (opcja, jeżeli uda się kupić wyświetlacz z maskownicą (zielony).
7. Dwa LCD 2x16 lub 1 LCD 2x16 + wyświetlacz 7-segmentowy
8. Jak się nauczę to dodam jakąś transmisję danych i synchronizację czasu po wi-fi (opcja o najniższym priorytecie)

Tylko proszę nie piszcie teraz, że to wszystko da się zrealizować na Atmega8 :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 lis 2015, o 12:09 
Offline
Moderator
Avatar użytkownika

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

sauron80 napisał(a):
5. sterownie PWM diodami 4 kolorowymi RGB + biały

Weź sobie diody Magic LED to wystarczy ci jeden pin procka do wysterowania nawet 20 takich diod za pomocą PWM ;)
https://www.youtube.com/playlist?list=P ... jwua5p-vkv

sauron80 napisał(a):
6. wyświetlenie godziny na 4 wyświetlaczach 7-segmentowych z multipleksowaniem

Użyj rejestrów przesuwnych to znowu zaoszczędzisz na pinach procka a i łatwo się je wysteruje
http://mirekk36.blogspot.com/2013/09/re ... stawy.html

to wszystko co opisałeś NAJSPOKOJNIEJ w świecie da się zrobić w m32 i jeszcze miejsca w każdej pamięci zostanie ;)

_________________
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: 23 lis 2015, o 21:05 
Offline
Użytkownik

Dołączył(a): 11 wrz 2013
Posty: 709
Zbananowany użytkownik

Pomógł: 23

sauron80 napisał(a):
6. wyświetlenie godziny na 4 wyświetlaczach 7-segmentowych z multipleksowaniem (opcja, jeżeli uda się kupić wyświetlacz z maskownicą (zielony).
7. Dwa LCD 2x16 lub 1 LCD 2x16 + wyświetlacz 7-segmentowy


To mnie zastanowiło.
Jak te wyświetlacze będą podłączone do płytki?
W sensie takim czy będą w jednej obudowie czy zamierzasz kable ciągnąć, a przede wszystkim jak długie?

--
Grzegorz...



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

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 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