Elvis Grudzień 19, 2022 Udostępnij Grudzień 19, 2022 (edytowany) @H1M4W4R1 Starajmy się nie tworzyć offtopu, chociaż temat jak dla mnie bardzo ciekawy. @Treker może warto wydzielić jako oddzielny wątek? Jak chodzi o programowanie w asemblerze, to wystarczy opanować jak kompilator C tworzy i wywołuje procedury - później program można pisać tak samo jak w języku wysokiego poziomu, po prostu roboty jest więcej. Ale moim zdaniem pisanie aplikacji w asemblerze to nie jest najlepsze wykorzystanie czasu i umiejętności. W tym kompilatory radzą sobie już całkiem dobrze i nie trzeba ich wyręczać. Asembler jest bardzo fajny jeśli chcemy programować na poziomie systemowym - przykładowo chcemy napisać własny RTOS, albo jego namiastkę. Oczywiście pisanie kolejnego systemu może nie mieć sensu, ale to bardzo ciekawe ćwiczenie, które pozwala trochę lepiej poznać działanie procesora. Kolejne zastosowanie programowania w asemblerze to procedury obsługi przerwań i wyjątków. W przypadku Cortex-M nie jest to już wymagane, ale Cortex-A nadal potrzebuje wsparcia w asemblerze. W nowych Cortex-M33 oraz wszystkich Cortex-A mamy jeszcze TrustZone, tutaj również asembler się może przydać do napisania własnego monitora, albo chociaż zrozumienia co robi gotowy kod. Moim zdaniem znajomość chociaż jednego asemblera jest bardzo cenna i wcale nie taka trudna jak się wydaje. Natomiast pisanie zwykłych aplikacji w tym języku to niekoniecznie dobry pomysł. Edytowano Grudzień 19, 2022 przez Elvis Link do komentarza Share on other sites More sharing options...
pmochocki Grudzień 19, 2022 Udostępnij Grudzień 19, 2022 23 godziny temu, Treker napisał: które dla początkujących elektroników i majsterkowiczów wyglądają na stosunkowo proste, a tak naprawdę są dość trudne? Elektronika analogowa Wzmacniacze operacyjne Łączenie analogówki z cyfrówką Filtrowanie zasilania Prawidłowo zaprojektowanie PCB Projektowanie urządzeń na baterię Anteny programowanie wielowątkowe programowanie sterowników w "kernel space" Ogólnie im więcej wiesz przewidujesz problemy, które mogą się pojawić. Ze wszystkich powyższych jak zadziała to super, a jak nie działa to może być poważne wyzwanie. To jest moja lista rzeczy, których osobiście nie doceniłem pod względem trudności. 2 Link do komentarza Share on other sites More sharing options...
Elvis Grudzień 19, 2022 Udostępnij Grudzień 19, 2022 5 minut temu, pmochocki napisał: programowanie sterowników w "kernel space" Tego tematu sobie na forum nie przypominam, ale może warto byłoby go kiedyś opisać? Tutaj podobnie jak z asemblerem jestem zdania że to nie aż takie trudne, ale mogę się mylić. Link do komentarza Share on other sites More sharing options...
pmochocki Grudzień 19, 2022 Udostępnij Grudzień 19, 2022 6 minut temu, Elvis napisał: Tego tematu sobie na forum nie przypominam, ale może warto byłoby go kiedyś opisać? Tutaj podobnie jak z asemblerem jestem zdania że to nie aż takie trudne, ale mogę się mylić. No ogólnie nie jest trudne. Ale jak masz urządzenie typu dekoder satelitarny, sprzedawany od roku w nakładzie szejscio cyfrowym i nagle się okazuje, że po updacie kernela dostajesz "kernel panic" jak odłączysz kabel SACRT, gdy jednocześnie jest podłączony kabel HDMI. W ten sposób dostałem dostałem pierwszą pracę po studiach w Szwecji. Niby łatwe, ale nikt przez dwa tygodnie nie mógł znaleźć, że mutex jest przetrzymywany przez sterownik i2c dostarczony przez STMicroelectronics... Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Zarejestruj się lub zaloguj, aby ukryć tę reklamę. 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
Elvis Grudzień 19, 2022 Udostępnij Grudzień 19, 2022 @pmochocki W sumie nie chodziło mi o pisanie sterowników dla dekoderów produkowanych w milionach, myślałem raczej o podstawach na RaspberryPi. Ale chyba znowu odchodzimy od tematu. Natomiast w pełni się zgodzę, że o wiele trudniejsze niż się wydaje jest pisanie programów, które będą używane w seryjnie produkowanych urządzeniach. I to nawet jeśli nie będą to miliony rocznie 🙂 Link do komentarza Share on other sites More sharing options...
pmochocki Grudzień 19, 2022 Udostępnij Grudzień 19, 2022 9 minut temu, Elvis napisał: @pmochocki W sumie nie chodziło mi o pisanie sterowników dla dekoderów produkowanych w milionach, myślałem raczej o podstawach na RaspberryPi To samo mogło teoretycznie wydarzyć na Raspberry Pi. Ogólnie jak pojawi się problem, to jak jest w kernel space, to jest on trudniejszy do debugowania.... To samo na Windowsie. Masz problem w sterowniku. Po 2 sekundach dostajesz TDR i wiesz na dzień dobry tylko tyle że prawdopodobnie u Ciebie coś 2 sekundy temu się zważyło... Jak działa to jest super i jest prosto. Jak pojawia się problem to jest zong... Link do komentarza Share on other sites More sharing options...
Elvis Grudzień 19, 2022 Udostępnij Grudzień 19, 2022 @pmochocki Na pisaniu sterowników do Windows niestety się nie znam. Ale jeśli miałbyś kiedyś wolną chwilę na napisanie krótkiego artykułu z wprowadzeniem do programowania sterowników dla Windowsa, bardzo chętnie przeczytam. Link do komentarza Share on other sites More sharing options...
Zealota Grudzień 19, 2022 Udostępnij Grudzień 19, 2022 23 godziny temu, Elvis napisał: mikrokontrolerów STM32F7/H7 Co do H7 się nie wypowiem, jeszcze leży w "do zrobienia" natomiast co do F7 to się nie zgodzę. Taki STM32F722 w obudowie 64 pin to taka bardziej rozbudowana F4. Wiele modułów "kopiuje" się w wprost. Choćby część interfejsów z DMA Link do komentarza Share on other sites More sharing options...
Elvis Grudzień 19, 2022 Udostępnij Grudzień 19, 2022 @Zealota A jak dbasz o spójność pamięci cache w STM32F7? Link do komentarza Share on other sites More sharing options...
Zealota Grudzień 19, 2022 Udostępnij Grudzień 19, 2022 (edytowany) 2 minuty temu, Elvis napisał: A jak dbasz o spójność pamięci cache w STM32F7 Na etapie "prostych projektów", o których pisałeś nawet nie ma potrzeby o tym myśleć. Zrobiłem już kilka takich i nawet nie wiem o czym pisałeś 🙂 Edytowano Grudzień 19, 2022 przez Zealota Link do komentarza Share on other sites More sharing options...
Popularny post Elvis Grudzień 19, 2022 Popularny post Udostępnij Grudzień 19, 2022 @Zealota Jeśli nie włączyłeś pamięci cache to faktycznie nie ma problemu, ale F7 na pewno nie wykorzysta swoich możliwości. Natomiast po włączeniu pamięci trzeba się zająć jej spójnością, bo co ciekawe Cube tego nie robi. Oczywiście jeśli używasz tylko pamięć TCM wszystko będzie działać, ale już dodanie jednej zmiennej może popsuć cały program. Nawet przykłady dla DMA od ST tak mają - działa bo bufor akurat jest w TCM, dodanie zmiennej globalnej i już nie działa... A wydaje się proste i takie samo jak na F4. 2 1 Link do komentarza Share on other sites More sharing options...
pmochocki Grudzień 19, 2022 Udostępnij Grudzień 19, 2022 41 minut temu, Elvis napisał: jeśli miałbyś kiedyś wolną chwilę na napisanie krótkiego artykułu z wprowadzeniem do programowania sterowników dla Windowsa, bardzo chętnie przeczytam. Sam bym chętnie przeczytał. Niestety zawodowo zajmuję się dość wyspecjalizowaną częścią sterownika Windows i jeśli chodzi pogłębianie wiedzy są inne priorytety. Hobbitycznie bardziej zajmuję się Linuxem, bo w pracy na co dzień nie mam z nim styczności. Może kiedyś, ale nie w najbliższym czasie... 1 Link do komentarza Share on other sites More sharing options...
Popularny post farmaceuta Grudzień 26, 2022 Popularny post Udostępnij Grudzień 26, 2022 A mi wydaje się że większość tematów wydaje się prosta dopóki się człowiek za nie nie weźmie i nie stwierdzi.."kuwa no...a myślałem że to takie proste 😜" 6 Link do komentarza Share on other sites More sharing options...
Popularny post _LM_ Grudzień 26, 2022 Popularny post Udostępnij Grudzień 26, 2022 Korzystanie not katalogowych i wszelkich user manual. To dotyczy również nieco bardziej obytych w elektronice. 3 Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Grudzień 27, 2022 Autor tematu Udostępnij Grudzień 27, 2022 13 godzin temu, _LM_ napisał: Korzystanie not katalogowych i wszelkich user manual. Całe szczęście, że napisaliśmy na ten temat e-booka dla początkujących: https://kurs.forbot.pl/cnk Koniec autoreklamy 😉 2 Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
Bądź aktywny - zaloguj się lub utwórz konto!
Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony
Utwórz konto w ~20 sekund!
Zarejestruj nowe konto, to proste!
Zarejestruj się »Zaloguj się
Posiadasz własne konto? Użyj go!
Zaloguj się »