Jaki ARM na początek?

0

Witam czy tworzył ktoś własną płytkę pcb, na początek tak żeby się coś nauczyć. Jakiego mikrokontrolera/procesora używaliście oglądałem stm32 ale wydaje się bardzo mały do przylutowania. Jakie są inne procesory, czy istnieje możliwość aby ten mikroprocesorek pomierzył napięcie na przykład do 5v na schemacie widać że posiada wejścia oraz wyjścia.

3

Ale co chcesz zrobić? Nauczyć się lutować? Projektować? Czy masz już projekt i chcesz to wytrawić? Czy może chcesz tylko popisać apki na taki chip? Sam chip ci napięcia nie zmierzy. Żeby zrobić coś co będzie mierzyło to na początek lektura podstaw elektroniki i nauka jak co działa, jak tworzyć układy itp.

2

Kup sobie normalną płytkę rozwojową, stm32 nie jest jakoś specjalnie mały, tylko trzeba umieć lutować elementy SMD. Standardowe ARM działają na 3.3V, chyba są jeszcze niskonapięciowe.
Najlepiej napisz co chcesz robić. Programować ARM, wykorzystywać ARM jako mikrokontroler czy tworzyć płytki PCB

0

Programować ogólnie rzecz biorąc już trochę umiem, napisałem już takie aplikacje do komunikacji z płytkami poprzez ethernet jednak są to płytki robione, zaprojektowane. Płytki rozwojowe są na necie. Chciałem się zapytać jak się projektuje takie płytki. Widziałem takie robione płytki które mierzą niewielkie napięcia takie do 5 v. Płytka wykonana na frezarce.

2

No to jak chcesz najpierw stworzyć sam taka płytkę to najpierw czas na naukę minimum podstaw elektroniki. Polecam rozpocząć od symulatorów a nie od realnej płytki bo spalisz ich zbyt wiele.

2

Jeśli chcesz się uczyć lutować to zacznij od płytki prototypowej na elementy przewlekane i zacznij od takich elementów. Nazywa się to THT
A płytka o jakiej mówię to np. https://allegro.pl/oferta/plytka-uniwersalna-pcb-7x9-cm-raster-2-54-12807606508
Możesz użyć ATmega8 i sobie to polutować.
Nie zaczynaj od SMD. Nie oglądaj filmów o płytkach z frezarek.
Najpierw podstawy. Lutownica, stopy cyny, dobór topnika.
Potem dopiero możesz sobie trawić płytki, albo zamawiać gotowe z chin od JLCPB czy podobnych.
Wszystko jednak po kolei, inaczej się zrazisz.

0

Jaki symulator byś polecał, chętnie popróbuję :D

0

Najpierw musisz je zaprojektować. Osobiście używałem Altiuma oraz softu od Mentor Graphics. Ten drugi to jest ogromna kobyła więc próg wejścia jest większy. KiCad jest darmowy i prosty w nauce. Jak nie masz doświadczenia z elektroniką to polecam najpierw poznać jakieś podstawy i zacząć uczyć się od AVR(np. ATmega32).
Mam wrażenie, że nie do końca wiesz co chcesz zrobić.

STM32 zbadasz napięcie 12V i większe , tylko musisz mieć do tego odpowiedni układ zbudowany, który spowoduje, że to 230V zostanie przetworzona do napięcia max 3.3V, które będziesz mógł odczytać na przetworniku ADC.

1

Kiedyś sam bawiłem się w Proteus. Był darmowy dla 8051 Nie wiem jak jest teraz z licencją. Może jest jakaś testowa. W Proteus można było i Arduino całe symulować.

Co do badania napięcia. Najpierw podstawy elektroniki, bo skończysz z garstką spalonych układów. Mierzenie napięcia czy prądu w cale nie jest takie proste.

1

Zainstaluj np. KiCad. Jest dość prosty w obsłudze.
Projektowanie płytki zwykle zaczyna się od narysowania schematu. Program będzie sprawdzał czy tworzony układ ścieżek jest zgodny ze schematem. Bez tego bardzo łatwo o pomyłkę.

3

jeśli chcesz zacząć przygodę z elektroniką (arduino np.) to polecam zakupić coś co się nazywa płytka stykowa https://forbot.pl/blog/leksykon/plytka-stykowa do tego po 50 przewodów męski-męski + 50 męski-żeński. Prototypy dużo wygodniej składa się przy ich pomocy

1
  1. odpowiedź sobie na pytanie co lubisz w życiu robić
  2. potem zacznij to robić

Bez zdefiniowania konkretnie projektu nie ma sensu kupować procka

0
ehhhhh napisał(a):

No to jak chcesz najpierw stworzyć sam taka płytkę to najpierw czas na naukę minimum podstaw elektroniki. Polecam rozpocząć od symulatorów a nie od realnej płytki bo spalisz ich zbyt wiele.

Spali wiele, i bez teorii nawet nic nie zrozumie co i dlaczego. Tzn warunkowo cenię "palenie", o ile jest to koszt nauki i rozwoju, ale to nie taki przypadek.

ps @ehhhhh: emulatora też nie zrozumie

usm_auriga napisał(a):

Programować ogólnie rzecz biorąc już trochę umiem,

No widzisz, programowanie jest rodzajem, gdzie da się "oszukać los" osiągając to i owo po łebkach, próbowac start pracy po bootcampie (bardziej szanuję niż następne) albo "widziałem przez ramię" - elektronika taką dziedziną nie jest. *) Zresztą wiele dziedzin produkcji materialnej zaskoczyło by programistę poziomem twardych wymagań. Software jest komfortową szklarnią

Pierwsza płytka z ARM-em ... no. oryginalny pomysł. Zrobiłes z własnego designu coś na 10-20 punktów na płytce ? Zrobiłeś płytkę na dwa tranzystory / albo 555 ?

usm_auriga napisał(a):

Jaki symulator byś polecał, chętnie popróbuję :D

:)

Co do "trochę umiem" ... właśnie przejrzałem historię

*) poszukaj o szóstym milicjancie i żarówce

2

Jeśli chodzi o samą płytkę to:

  • Projektować można w darmowym KiCad, z tego trzeba wygenerować Gerber'y
  • Wykonanie najlepiej zlecić do jakiejś firemki typu PCBWay, wychodzi wcale nie tak drogo zwłaszcza jak się zamawia x10

Problem z robieniem własnych płytek jest taki że trzeba do tego wykorzystać trochę chemikaliów, a jako że mieszkam w mieście to nie ma tego potem jak zutylizować. Także mazanie specjalnym flamasterem i wytrawianie dawno już sobie darowałem.

Pozostają 2 opcje:

Także ja radzę obejrzeć na YT kilka tutoriali do KiCad (koniecznie nowych bo co wersja się coś zmienia) i wykonać parę projektów nawet jakichś prostych typu lampka do roweru, licząc że i tak pierwsze 3 czy 4 będą do D...

Co do lutowania SMD to jest to dla mnie porażka, mam za duże łapska na tego typu zabawy i za słaby wzrok. Bez mikroskopu lub kamerki x5 ja już nie daję rady lutować najmniejszych komponentów. Lutowanie IC jest jeszcze gorsze, niby po prostu lutujesz na pałę a potem ściągasz nadmiar cyny miedzianą wstęgo ale w praktyce zawsze się coś spier....li. Także ja pozostałem przy starych DIL'ach.

Cała idea płytki prototypowej jest taka że można przetestować czy pomysł urządzenia ma sens, a jak ma to potem można już skroić faktycznie PCB na podstawie działającego prototypu. Robienie na odwrót spowoduje że będziesz miał 3 lub więcej wersji PCB, na wykonanie każdej będziesz czekał po 2 tygodnie i tracił tylko czas. Także radzę najpierw zrobić działający prototyp, potem pomyśleć o obudownie, zasilaniu itp. a dopiero na koniec mając te wszystkie informacje zaprojektować płytkę.

Uniwersalne płytki mają to do siebie że są dobre do przeciętnego projektu, pasują do przeciętnej uniwersalnej obudowy z allegro, ale takie urządzenia wyglądają zazwyczaj jak czarna skrzynka z guzikiem i tyle.

1

Jeżeli musisz pytać o to od jakiego mikrokontrolera zacząć, to zdecydowanie nie bierz się za kicad i robienie płytki od zera, bo się zniechęcisz. Tak jak koledzy wspomnieli możesz kupić płytkę stykowa, a do tego są układy stm32 wprowadzone na płytkę DIL. Poszukaj tych najtańszych, w okolicach 20-40zl.

I jeżeli ARM, to zapomnij o 5V - max 3.3V. 5V to miały stare układy jak popularna ATMega.

A jak już będziesz wiedział o co chodzi to możesz zacząć projektować własne płytki. Wtedy rzeczywiście gorąco polecam KiCad.

2

mi właśnie dzisiaj przyszły 3 płytki ESP32-WROOM z aliexpress (sztuka niecałe 20zł, zamówione dokładnie tydzień temu). Wcześniej bawiłem się z ATMEGA328P Pro Mini - powstało z nich

  • sterownik oświetlenia na schodach
  • sterownik do pompki CO (będę przerabiał na ESP żeby zbierać info o temperaturze na we i wy pieca)
  • watomierz (2szt) mierzący w sumie pobieraną moc na 18 obwodach (też właśnie przerabiam na ESP)

Dobrze mieć chociaż podstawową wiedzę z elektroniki i wiedzieć z której strony trzymać lutownicę, żeby sobie krzywdy nie zrobić. Co więcej wszystkie te układy mają w pewnym momencie styczność z 220V więc żeby nie zrobić sobie krzywdy trzeba wiedzieć co się robi.

0

Kup płytkę rozwojową, napisz co masz napisać przekładając elementy na płytkach stykowych bez żadnego lutowania. Jak już będziesz miał działający prototyp, zamów drukowaną płytkę wraz z zamontowanymi elementami on-line w dowolnie wybranym chińskim fabie. Wyjdzie taniej, szybciej i lepiej, niż coś co zrobisz sam.
KiCAD jest za darmo i pozwoli ci przygotować projekt, który później wysyłasz do faba, 2 tygodnie później przychodzą zmontowane układy.

Arduino Uno/Leonardo jest dobrym miejscem żeby zacząć - tanie, duża społeczność, gotowe biblioteki do obsługi wszystkiego co będziesz chciał obsłużyć. Jeżeli będzie za duże, to mają też całą serię płytek ze słabszymi SoC, które również kosztują grosze, do tego płytki występują w pomniejszonych wersjach, więc można się nawet pokusić o zrobienie gotowego urządzenia wykorzystując lekko nadmiarowy układ.
Zrobienie całości samodzielnie jest kosztowne, bo potrzebujesz sporo kosztownego sprzętu; sama stacja lutownicza to już więcej niż zestaw startowy na pełnym wypasie. Płytkę i tak musisz zamówić, bo realnie nie jesteś w stanie zrobić jej w domu.

Jeden z producentów PCB https://jlcpcb.com/

0

To jest pierwszy błąd pytasz się czy coś da się na danym procesorze zrobić, a nigdy z niego nie korzystałeś, pewnie nic z embedded nie zrobiłeś.
Robienie płytki samemu jest dość nieopłacalne.
Dodatkowo pytasz się jak pomierzyć 5V, to w ogóle nie wiesz na czym to polega, jeśli masz analog to digital convereter, po prostu możesz przyjąć od 0-5V w zależności od mikrokontrolera czasem 0-3.3, ale możesz pomierzyć dowolne napięcie, tyle że musisz dzielnik napięcia zrobić, tak żeby przy 25V na przykład po dzielniku wchodziło 5V na wejśćie, a przy 0V, 0V i wtedy układ jest zbudowany pod taki zakres badania.

Tak samo masz z temperaturą czy np. innymi parametrami mierzenia, możesz dostosować wysoką rozdzielczość, ale małą precyzję, albo wysoką precyzję, ale małą rozdzielczość, jak w mechanice kwantowej, albo znasz położenie albo pęd, możesz balansować, ale nigdy oba na raz, zawsze jedno kosztem drugiego jest.
Wysoka rozdzielczość to np. od 0- 220V, a wysoka precyzja to od 1V do 0.0001V, czyli ile miejsc po przecinku.

Najprościej wiadomo zacząć od AVR, bo większość procków THT.
Zaprojektowanie np. własnej płytki typu arduino board jest bardzo proste, arm jest podobnie, ale jest bardziej złożone więcej lutowania i tu już tylko wielowarstwowe płytki, po prostu na dwóch warstwach nie zrobisz tego, teoretycznie się da przy nieskończonej ilości kabelków w pajączka przylutowanych.

Zbudowanie płytyki Typu arduino jest mega proste, kupujesz sobie uC AVR, tam wchodzisz do dokumentacji masz przystępnie podany schemat, VCC i narysowane.
na płytce stykowej połączasz zasilanie tu i tu, tutaj kwarc, tutaj dławik i reset button + reset podciągnięty do VCC z 10k rezystorem.

to jest podstawowe zasilanie układu, teraz wyprowadzasz sobie gdzieś piny digital i analog, jak w normalnym arduino na szynę.
Potem jakieś porty ISP do programamowania w jedno miejsce.

Jakieś zasilanie z usb zwykle jest 5V, potem jakieś przetwornica/stabilizator na 3,3v, jeśli np. masz 3.3v mirkoklocka.
UART porty wyprowadzasz do następnego układu usb-uart.

Po ISP wgrywasz bootloader i teraz masz arduino board.

Jak przepiszesz to do kicad, to możesz sobie zamówić płytki, samemu zrobić termotransfer.

Ewentualnie, uniwersalne płytki, ale lutujesz taką płytkę wtedy 1-2h, a wartość jest 20zł.
Czyli kompletnie nie opłacalne, lepiej po prostu kupić, ale jak zlutujesz 1-2 takie to już ci się odechce.

Dobrze też rozlutować jakąś płytkę i zlutować ponownie i jak nie dasz rady tego to nie bierz się za następny etap.
Bo to jest ważna umiejętność.

W ogóle najpierw coś nauczyć się musisz na płytkach prototypowych, możesz też zacząć od razu od stm32 nucleo jakieś i popisać trochę kodu, skonfigurować sobie vscode bo dobre jest do embedded.
Napisać kilka programów i zobaczyć podstawowy schemat zasilania takiego arm processora, na pewno będziesz musiał mieć hot air lutownice i pastę lutowniczą, a nie zwykłą cynę.

5

Jak chesz się pobawić to najprostsze jest Arduino, płytka stykowa i przykłady w necie. Pozapalasz diody led, podepniesz wyświetlacz LCD, zczytasz dane z jakiegoś modułu czujnika. Prostota wynika z tego, że Arduino dostarcza w miare ustandaryzowane środowisko od strony programistycznej i elektronicznej, biblioteki i moduły do zabawy.

Kolejnym krokiem dla Atmega (MCU w Arduino) jest gołe C w AVR GCC / Microchip studio / MPLAB. Jak ogarniesz przeskok na PIC lub STM32 i inne powinien być dość łatwy - język i pryncypia te same, inne narzędzia.

Tworzenie PCB to jeden z późniejszych etapów tworzenia hardware, natomiast wnioskuje, że OP nie ma pojęcia o elektronice.
Proces projektowania to kilka iteracji pomysł -> wymagania -> schemat -> symulacja (np spice) -> netlista -> pcb -> prototyp -> testowanie -> produkcja.

Płytke można zaprojektować w KiCAD, jest za darmo i odkąd dostał wsparcie CERNu można go uznać za profesjonalne oprogramowanie EDA. Dawniej z darmowych popularny był Eagle. Inne pakiety to np Altium Designer i OrCAD. Chałupniczo kupujesz laminat, robisz termotransfer przy pomocy drukarki laserowej, papieru kredowego i laminatora i trawisz. Brudna robota więc lepiej zamówić wykonanie w firmie.

Samo projektowanie PCB to sztuka sama w sobie, nawet jak zainstalujesz i wyklikasz sobie elementy to prawdopodobnie zrobisz to źle bez znajomości elektroniki i standardów.
Tu nie ma hello world, trzeba przecierpieć swoje na fizyce, teorii obwodów, analizie układów. Są powody dla których linie sygnałowe i zasilania prowadzi się tak czy tak. Pola masy tak, unika pętli masowowych, generowania szumów, zakłóceń. Inaczej projektuje się PCB dla układów analogowych, inaczej dla układów mocy, inaczej dla cyfrowych, a jeszcze inaczej dla układów pracujących w wysokich częstotliwościach. Są różne rodzaje laminatu. Płytki mogą być wielowarstwowe. Róźne techniki montażu.

Ciekawostka, poradnik NASA:
https://workmanship.nasa.gov/lib/insp/2%20books/frameset.html

Przykładowa płytka, którą robiłem i itak nie jest idealnie ale działa:3091127100_1606647563.png
5396744300_1606647453.jpg

A tu masz co mozna robic na płytce stykowej z Arduino Nano:
341154750_3837541646473798_42115841003836939_n.jpg

1 użytkowników online, w tym zalogowanych: 0, gości: 1