-
Data: 2021-11-15 19:34:19
Temat: Re: AVR po latach
Od: heby <h...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 15/11/2021 19:19, Grzegorz Niemirowski wrote:
>> Prawie nigdy nie jest potrzebne, przy prawidłowych abstrakcjach na
>> poziomie kodu i unit testach. Bez najmniejszego problemu mogę napisać
>> kod obsługujący, powiedzmy, modbusa przy pokryciu po stronie hosta na
>> poziomie 95% coverage, gdzie po stronie AVR znajduja się juz tylko
>> gołe read/write do rejestrów uartu.
> Wiadomo, że można (i powinno się) pisać na podstawie dokumentacji
Nie, dalej nie rozumiesz. Ja nie mówie o pisaniu zgodnie z dokumentacją
i wymagania nieomylności.
Ja mówie o pisaniu kodu w sposób, który redukuje potrzebę debugowania w
sprzęcie do zera lub blisko zera. To wymaga innych technik
programowania, niż stosowane w embedded, w szczególności przeproszenia
sie z C++ (przez co czeka nas przeczekanie obecnego pokolenia
programistów embedded, jako że to problem białkowy).
> uruchamiania kodu po każdej napisanej linijce. Chodzi o to, że
> praktycznie zawsze coś potem nie działa i wcale niekoniecznie z Twojej
> winy.
Jest śladowo prawdopodobne, abyś dał radę znaleźć nowy bug w AVR.
Miliony programistów Arduino raczej by go znalazły.
>> Nie wiem gdzie tu miejsce dla oscyloskopu, to ostateczność.
> Nie tylko Modbus jest na świecie. Poza tym mówimy o styku programowania
> z elektroniką. Jeśli oscyloskop nie jest potrzebny, to jest to albo
> prosty projekt albo embedded wysokopoziomowe (odległe od sprzętu).
Ani jedno ani drugie. Możesz napisać skomplikowany projekt blisko
sprzetu, w 95% pokryty testami po stronie komputera dev. To nie jest
rocket science. To normalna praktyka pisania kodu na dowolną platoformę,
od superkomputerów do attiny.
Debuggery hardwareowe to ostatecznośc. Jesli podczas pisania kodu musisz
ich używać, to masz kiepsko napisany kod.
Zgodzę się, że czasami mogą być przydatne przy uruchamianiu kodu, ale
zazwyczaj to oznacza, że coś jest spieprzone i nieprzetestowane
wcześniej, lub błąd masz w konkretyzacji abstrakcji (gdzie zwyczajowo
kodu wiele nie ma).
> W każdym razie ta część wątku zaczęła się od emulatora CPU. Arduino i
> tak go nie ma, więc nie ma co tu drążyć :)
Nie bez powodu. Dzięki temu, że ma gotowe bibliteki, taki debug jest
mało potrzebny.
>> I tu wchodzi jakiś tuzin znakomitych środowisk do pisania w C/C++. Bo
>> tylko tyle potrzeba w 99% wypadków pisania kodu embedded.
> Wracamy więc do początku wątku. Jeśli ktoś wybiera znakomite środowisko
> zamiast Arduino IDE, to nie ze względów religijnych ale dlatego, że jest
> ono... znakomite :)
Ale nie jestem przekonany, czy środowiska do embedded są znakomite. Jak
na razie po kontakcie z kilkoma na przestrzeni 20 lat, uciekam na same
słowa "embedded IDE".
Następne wpisy z tego wątku
- 15.11.21 19:57 Grzegorz Niemirowski
- 15.11.21 20:22 heby
- 16.11.21 09:03 Atlantis
- 16.11.21 11:26 Grzegorz Niemirowski
- 16.11.21 11:51 Grzegorz Niemirowski
- 16.11.21 18:18 heby
- 16.11.21 18:22 Pcimol
- 16.11.21 18:30 Pcimol
- 16.11.21 19:30 Atlantis
- 17.11.21 10:53 Grzegorz Niemirowski
- 17.11.21 11:45 Marek
- 17.11.21 12:05 Marek
- 17.11.21 12:58 Marek
- 17.11.21 14:51 Grzegorz Niemirowski
- 17.11.21 16:17 Marek
Najnowsze wątki z tej grupy
- Leżakujące SSD gubią po roku dane
- kolorowy e-paper
- Sterownik kotła CO praca PWM
- Jakie baterie A23 i LR44?
- OLED SSD1306 - degradacja?
- Który symulator AVR jest ,,prawilny"?
- Disk on Module, czym to odczytać?
- Pasta ochronna? Lutownicza?
- zagadka pneumatyczna
- Klip testowy, jak sie to używa
- Jak sie smazy elektronike z odleglosci kilkuset metrów?
- William Shockley, co-inventor of the transistor
- Gazowy kocioł CO regulacja cyklingu i regulacja pogodowa
- Zamek elektroniczny
- szablon do pasty DIY
Najnowsze wątki
- 2025-11-29 Warszawa => Recruiter 360 <=
- 2025-11-29 Warszawa => Mid/Senior IT Recruiter <=
- 2025-11-29 Kraków => PHP Full Stack Developer <=
- 2025-11-29 Warszawa => IT Recruiter <=
- 2025-11-29 Gemini w ma[g]linach...
- 2025-11-28 Leżakujące SSD gubią po roku dane
- 2025-11-28 Warszawa => International Freight Forwarder <=
- 2025-11-28 Białystok => Spedytor Międzynarodowy (handel ładunkami/prowadzenie
- 2025-11-28 Kraków => Spedytor Międzynarodowy <=
- 2025-11-28 Katowice => Key Account Manager <=
- 2025-11-28 Wymiana systemu operacyjnego w komórze
- 2025-11-28 Warszawa => Konsultant ERP Microsoft Dynamics 365 Commerce <=
- 2025-11-28 Warszawa => ERP Microsoft Dynamics 365 Commerce Consultant <=
- 2025-11-28 Warszawa => Senior Algorithm Developer (Java/Kotlin) <=
- 2025-11-28 Warszawa => APM/Observability Engineer - Presales Inżynier <=




Ile kosztują tanie mieszkania w polskich metropoliach?