Skocz do zawartości

Jaki procesor do projektu?


Tedy23

Pomocna odpowiedź

Witam. Tak jak w temacie szukam mikroprocesora do projektu. Planuje zbudować możliwie jak najtańszy układ który miałby na celu:

1)zapisywanie danych o danej godzinie raz dziennie :

- ilości impulsów na jednym z portów

-2 czujniki temperatury

-godzina z datą

2)komunikacja z telefonem

Co do do zbierania danych myślę że wiem jak się do tego zabrać. Gorzej sprawa wygląda z doborem procesora i komunikacją. Nie musi to działać kosmicznie szybko, sam układ miałby być podłączony na stałe do zasilania ( nie żadne baterie czy coś takiego).

Link do komentarza
Share on other sites

Planuje zbudować możliwie jak najtańszy układ który miałby na celu:

Mowa o seryjnej produkcji, w której chcesz "urwać" z ceny mikrokontrolera każdego możliwego grosza, czy to jednorazowy projekt i zwyczajnie nie chcesz wydać dużo na uC? Pytam, bo w pierwszym przypadku należałoby się rozejrzeć za czymś "egzotycznym", a w drugim przypadku wystarczy pewnie dowolny mikrokontroler 😉

Link do komentarza
Share on other sites

Zdecydowanie kilka sztuk chociaż tak jak wspomniałeś nie chce wydawać dużo. Zastanawiałem się nad AT89C52 Bo już troche na tym pisałem ale nie wiem jak wygląda sprawa z podłączeniem do tego mikroprocesora analogowych termometrów.

Link do komentarza
Share on other sites

Przy wymaganiu na wejście analogowe musisz skupić się na kostkach mających wbudowany ADC. Owszem, zawsze możesz coś dospawać na zewnątrz, ale to zwykle będzie droższe. Nawet prosty przetwornik 10-bitowy z interfejsem szeregowym typu SPI czy I2C to koszt rzędu 5zł. A tyle to kosztuje cały mikrokontroler z ADC. Generalnie rodzina '51 jest droga, bo core tego procesora jest (stosunkowo) duży więc zajmuje dużo krzemu więc kosztuje. Być może w przypadku produktów ATMELa/Microchipa wchodzą w grę także opłaty licencyjne dla Intela.

Jeśli jesteś jakoś przyzwyczajony do 51 (co na tym zrobiłeś? napisz, to może być ciekawe) i nie chcesz uczyć się nowej architektury, to wybierz termometry z interfejsem cyfrowym. Może nie od razu megadrogi 18B20 - powinieneś znaleźć coś tańszego.

Rozwiązaniem pośrednim jest zrobienie przetwornika A/C na zewnątrz procesora z paru tanich elementów. Prymitywny "przetwornik" U/t wykonany z tranzystora i kondensatora ma szansę osiągnąć 6-7 bitów i będzie kosztował grosze.

Moim zdaniem, jeśli nie masz już tych procesorów w szufladzie i będziesz coś kupował, weż pod uwagę inne rodziny (AVR? ARM?) lub (od biedy) '51 z wbudowanym ADC. Już nawet szeregowo programowane 89S52 (wygoda) będzie lepsze. A w ogóle to w miarę dzisiejsza, kompletna kostka programowana na płytce (ISP) z wbudowanym generatorem taktującym, układem RESETu, 10-bitowym przetwornikiem A/C, UARTem, kilkoma timerami, szybsza i mniej prądożerna będzie tańsza niż kobylasta '51. Tego używają już chyba tylko ludzie do podtrzymywania starych projektów (i studenci na zajęciach w Polsce...).

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Niestety moje doświadczenie to projekty na uczelni. Jakieś proste klawiaturki, liczniki, obsługa 7segmentowych wyświetlaczy albo lcd. Nie jest to jakiś kosmos ale zainteresował mnie ten temat.

Nie jestem zamknięty na coś nowego poprostu myślałem że łatwiej może być napisać coś na mikro na którym chociaż troche pisałem ale jeżeli są lepsze i nowsze rozwiązania to jak najbardziej będę się skłaniał do nich. Jeszcze nic nie kupowałem bo do tej pory bawiłem się w symulatorach więc będę musiał zainwestować w programator i tym podobne rzeczy. Oczywiście jakieś rady jaki zestaw kupić sobie na początek są baaaaaardzo mile widziane, bo można powiedzieć że jestem nowy w temacie ale z motywacją do działania 😋

Link do komentarza
Share on other sites

Oczywiście, że łatwiej stworzyć projekt na procesorku, który już znasz i używałeś. Z tego co piszesz (i z typu procesora) obawiam się, że pisałeś swoje programy w asemblerze więc próg zmiany może być jeszcze wyższy zważywszy, że w dzisiejszych realiach standardem jest C lub C++.

Nie namawiam do niczego. Ludzie startują od Arduino opartego (z nielicznymi wyjątkami) na rodzinie AVR i z powodzeniem realizują proste projekty. Krzywa nauki jest stroma i korzystając z ogromnej literatury, forów, samouczków, gotowych bibliotek i mnóstwa przykładów - także wbudowanych w samo środowisko IDE - możesz w miarę bezboleśnie w ciągu miesiąca opanować podstawy i budować za chwilę całkiem spore urządzenia. Nawet gdzieś tu na Forbocie leży seria kursów Arduino wraz z rekomendowanym zestawem startowym.

Możesz jednak spróbować rozwijać swoją dotychczasową ścieżkę i bazować na '51 - w końcu to też działa, choć asortyment układów i ich ceny nie są argumentem za. Z drugiej strony sentymentu i już zdobytej wiedzy nie sposób przeliczyć na pieniądze.

Wiesz, święta wojna o wyższości jednych architektur, środowisk czy języków nad innymi to niekończąca się historia. Nie dostaniesz porady: zrób tak i tak, bo tylko tak będzie dobrze, no chyba że od fanatyka a wiadomo - lepiej od nich z daleka. W sumie ciekaw jestem Twojego wyboru 🙂

Link do komentarza
Share on other sites

2)komunikacja z telefonem

Zgaduję, że bierzesz pod uwagę tylko opcję bezprzewodową.

Propozycje:

- dodanie modułu BT (np. HC-05) do układu i komunikacja bezpośrednio z telefonem

- wykorzystanie układu z WIFI (np. NodeMCU)

Osobiście spróbowałbym tego drugiego. Koszt NodeMCU z Chin to ~2-3€ i nie potrzeba programatora. Jeśli układ miałby stały dostęp do Internetu np. przez domowe WIFI to może pobierać godzinę z serwera NTP. Cyfrowe czujniki temperatury DS18B20 mogą się komunikować po 1-Wire. Impulsy to zwykłe wejście I/O. Telefon też będzie mógł się z nim skomunikować.

Link do komentarza
Share on other sites

Tak raczej komunikacja bezprzewodowa, jednak wygoda jest większa i łatwiej to zainstalować.

Akurat te programy które pisałem były pisane w C, a i zabawa z arduino nie jest mi obca kompletnie obca.

Tak jak wspominałem chodzi o cenę projektu, bo budowa tak prostego układu na arduino wydaje mi się bezsensowna i za droga. Dlatego też postanowiłem to zrobić na mikro. Jestem świadomy że na uczelni mogą być przestarzałe rozwiązania dlatego właśnie chce się poradzić 😃 co do dostępnych rozwiązań.

To zapytam inaczej marek1707, jaki Ty byś wybrał mikroprocesor ? I który termometr wybrać ? Bawić się w cyfrowe czy analogowe (Jak narazie miałem styczność tylko z analogowymi i działało super) ?

Dziękuję bardzo za dotychczasowe rady i wskazówki.

Link do komentarza
Share on other sites

Arduino za drogie... no tak, płytka klon Pro Mini kosztuje ok. 9 PLN na Allegro, goła ATmega jest nieco droższa.

Powiem co ja bym zrobił:

ESP8266 (do eksperymentów ESP12E/S, do projektów sam układ lub właśnie ESP-12E z uwagi na łatwość lutowania/wymiany).

Termometry DS18B20 - ESP bardzo ładnie je obsługuje.

Łączność - ESP ma wbudowane WiFi, powinno wystarczyć.

Nie jest potrzebny programator, wystarczy konwerter USB/UART (w Botlandzie ok. 7 PLN, ale to drogi sklep).

Godzina z datą - zegarek w kuchni na ESP działa mi już drugi rok, polega wyłącznie na danych pobranych z internetu. Przy czym trzeba pamiętać, że nawet w uśpionym ESP układ RTC pracuje, czyli synchronizacja nie musi się odpywać przy każdym wybudzeniu układu.

Programowanie - do wyboru: albo C++ i Arduino IDE (całkiem porządnie działa), albo oryginalny C od Chińczyków (nie próbowałem, ale w Arduino czasem trzeba użyć funkcji z chińskiego standardu, czyli warto przynajmniej pobieżnie się z nim zapoznać).

Jak dla mnie najtańsze rozwiązanie.

Link do komentarza
Share on other sites

Tedy23, ten uklad możesz wykorzystać samodzielnie bez użycia Arduino. W jego skład wchodzi ESP8266 o taktowaniu 80MHz (chyba tyle) i zintegrowanym module WiFi. Na tym można nawet webserwer postawić. Tylko brać i programować 🙂

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.