Mini system dla jednodolarowego mikrokontrolera Digispark
Napisałem mini system dla mini-arduino Digispark, którego można znaleźć na AliExpress już za jednego dolara. Na filmiku możliwości systemu w połączeniu z najmniejszym na świecie laptopem, a w powiązanych wpis blogowy i sketch do pobrania.
+181
pokaż komentarz
To nie jest system operacyjny tylko taki interfejs po USB. System operacyjny pozwala uruchamiac dodatkowe programy, zarzadza pamiecia, komunikacja, systemem plikow itp -to cos tego nie robi.
No i oczywiscie ten arduinowy kod - delay-delaya-delayem pogania. Timerow i ISR sie do tego uzywa.
-15
pokaż komentarz
@nowoczesny_jawnogrzesznik: tak oczywiście masz rację, dlatego nazywam go MINI systemem - to taki śmieszek, bo jak w komentarzu poniżej: ciężko napisać coś więcej mając do dyspozycji 3k flasha i 256 bajtów RAMu :) Fascynuje mnie jednak, że można się zalogować do takiego małego, jednodolarowego urządzenia, wykonać przydatne komendy sterujące np. urządzeniami w domu (w filmie lampka podłączona pod 230v), a następnie wylogować się :) Usuwając zbędne procedury (oznaczone w kodzie) można łatwo rozbudować sketch o własne rozwiązania - jest takim templatem pod pomysły użytkownika.
Na moim GitHubie można znaleźć jeszcze bardziej żartobliwą wersję - dodającą wymóg logowania na roota i naśladującą linuxowy znak zachęty :) https://github.com/jaromaz/DigiOS
+37
pokaż komentarz
@jaromaz: Moj sterownik do maszyny (tez na AVR), ktory odczytuje enkoder, steruje serwomotorem, bada stan kilku czujnikow, obsluguje wyswietlacz LED i po RS232 komunikuje sie z hostem w sposob bardzo podobny do twojego ogarnia to w okolo 6kB flasha i kilkudziesieciu bajtach RAM. Z czego polowa flasha to biblioteczny printf. Oczywiscie nie ma sensu tego optymalizowac, skoro jeszcze 20-kilka kB flasha jest wolne... Tak wiec w kilku kilobajtach zmiesci sie calkiem duzo kodu.
Wywal z kodu te delay'e, przerob na przerwania i timery. Bedzie to duzo plynniej dzialalo.
+1
pokaż komentarz
@nowoczesny_jawnogrzesznik: delay'e są opisana w kodzie - są one niezbędne bezpłatnej apce na Androida Serial USB Terminal, która jako jedyna obsługuje Digisparka. Bez nich apka źle łamie wyświetlany tekst. W kodzie jest też info, że można usunąć te delay'e jeżeli korzysta się z innego systemu. W DigiOS dodałem kilka funkcji, które nie każdemu będą potrzebne, ale dzięki którym projekcik chociaż trochę przypomina system operacyjny (a przypominam, że dysponuję mniej niż 3k flasha ;) . Po ich usunięciu (a procedury do usunięcia są oznaczone w kodzie) również pozostaje "sporo" wolnego miejsca :)
+15
pokaż komentarz
@jaromaz: To ta apka jakas popier... jest.
+1
pokaż komentarz
@nowoczesny_jawnogrzesznik: hmm jako jedyna bezproblemowo obsługuje Digisparka. Niby Linux domyślnie również, ale jest trochę problemów żeby się na Digisparka wbić. Dla Windows 7 trzeba instalować sterowniki Digistump, a dla Windows 10 nieoficjalny sterownik, który trzeba ręcznie podpisywać :) a czasami pomaga dopiero włączenie testowego trybu Windows 10. Te kilka delayów w kodzie, to niska cena za bezproblemową obsługę Digisparka :)
+7
pokaż komentarz
@nowoczesny_jawnogrzesznik: Generalnie to się z Tobą zgadzam, jednak w dobie Raspberry Pi zero z Wifi za $5 które ma 1Ghz CPU, 512MB RAM, obsługę kart SD, USB, pełnowymiarowe jądro Linuxa, itp, itd, ostatnio sam mam problem w usprawiedliwianiu moich wynalazków opartych na AVR. Nie mówię żeby do migania ledami stosować RPi, ale STM32 czy też ESP32 są bardziej na czasie. No i nie trzeba się bawić w timery i bo to chodzi np. na FreeRTOS.
+5
pokaż komentarz
@k_suchy: Taki AVR ma moim zdaniem jedna zalete - jako uklad starszej daty chodzacy na 5V i z niskim zegarem - jest bardziej odporny na zaklocenia/przepiecia itp niz szybkie ARMy.
A prawda taka, ze jak ktos sie nauczyl AVR tak jak ja to wszystko w tym klepie a alternatywy szuka gdy to co zna nie wyrabia. Tak bylo z '51 i PIC, tak jest z AVR, tak bedzie z ARM.
RPi tez jest fajne - sam ostatnio wykorzystalem je jako substytut panelu HMI :)
W tym wszystkim nalezy jedynie pamietac o tym, ze co by to nie bylo to powinno sie znac dzialanie sprzetu a nie tylko magicznych bibliotek typu arduino czy co tam innego jest do ARM'ow. Nie ze na wyrywki 1000-stronicowy datasheet ale zeby po prostu wiedziec co sie dzieje gdy wywolamy magiczne Serial.costam().
0
pokaż komentarz
@nowoczesny_jawnogrzesznik:
Mi to wygląda na konsolę. Ale fajna konsola.
+13
pokaż komentarz
MINI systemem
@jaromaz: nie chodzi o to, że jest mikroskopijny, tylko że nie ma cech systemu operacyjnego. Z takim podejściem to każdy kod można by nazwać mini systemem operacyjnym.
0
pokaż komentarz
@pies_harry: Tak wlasnie pomyslalem - mozna cos w tym stylu zrobic w oparciu o troche mocniejszy procek, np AtMege32 jaka jest w pospolitym Arduino. 32 kB flasha to calkiem duzo by zaimplementowac prosty interpreter jakiegos basica lub innego jezyka skryptowego. Laczac to z jakas pamiecia szeregowa mozna zrobic cos na ksztalt starych 8-bitowcow. Pewnie ktos juz cos takiego zrobil :)
0
pokaż komentarz
@jaromaz: mistrzu, ale to ma aby 250 linijek
0
pokaż komentarz
@nowoczesny_jawnogrzesznik:
W tym wszystkim nalezy jedynie pamietac o tym, ze co by to nie bylo to powinno sie znac dzialanie sprzetu a nie tylko magicznych bibliotek typu arduino czy co tam innego jest do ARM'ow.
W przypadku AVRów czy innych prostych układów to się zgadzam. Z drugiej strony zrozumienie interfejsu USB czy nawet modułu Wifi wbudowanego w kontroler czasami może przerosnąć hobbystów. Z drugiej strony - niestety - o cenie decyduje rynek i redukując koszty tworzenia gotowego układu zatrudnia się ludzi którzy potrafią tylko zrobić Serial.connect() - bo przecież dla szefostwa to wystarcza ¯\_(ツ)_/¯
+10
pokaż komentarz
ciężko napisać coś więcej mając do dyspozycji 3k flasha i 256 bajtów RAMu :)
@jaromaz: 1K flasha i 32 bajty ramu, generacja dźwięku 3 kanały i wyjście VGA RGB na uC z 6 nóżkami (Attiny 15).
http://www.linusakesson.net/scene/bitbanger/index.php
pokaż spoiler
Oczywiście nie umniejszam.
źródło: youtube.com
-6
pokaż komentarz
@zarowka12:
Mini nie oznacza "małego" :) tylko "zmniejszoną funkcjonalność", bo też nikt nie będzie wymagał od mikrokontrolera AVR bycia pełnoprawnym komputerem. Może zwrot jest faktycznie niefortunny - to bardziej emulator systemu. To jednak, czy taka emulacja może być przydatna użytkownikowi, można ocenić oglądając mój filmik.
+3
pokaż komentarz
Laczac to z jakas pamiecia szeregowa mozna zrobic cos na ksztalt starych 8-bitowcow. Pewnie ktos juz cos takiego zrobil :)
@nowoczesny_jawnogrzesznik: Nawet w wersji 16 procesorowej :)
http://www.ostracodfiles.com/mega/Concept_3.txt
źródło: ostracodfiles.com
+7
pokaż komentarz
tak oczywiście masz rację, dlatego nazywam go MINI systemem
@tank_driver: Sorry ale bardziej poprawnie byłoby gdybyś go nazywał MINI-programem bo jakie on ma cechy wspólne z systemami operacyjnymi? (albo mini systemami operacyjnymi). Logowanie i wydawanie komend (czyli sterowanie programem) może być w każdym sofcie. System operacyjny zawiera np. rzeczy, które opisał @nowoczesny_jawnogrzesznik
A ludzie uruchamiali linuxy na 8 bitowych AVRach i jeszcze na kostce mieścił się emulator ARM (sic!) i to był mini system operacyjny - sztuka dla sztuki.
Poza tą gafą nazewniczą to fajny projekt.
pokaż spoiler
tylko zasilacz z czarnej listy
pokaż spoiler
pisze poprawnie po polsku
pokaż spoiler
( ͡° ͜ʖ ͡°)
0
pokaż komentarz
@Waldemar_Morawiec: Jak odpalisz linuxa na 8bitowym AVR?
0
pokaż komentarz
@k_suchy: To prawda, jest pewien poziom powyzej ktorego trudno ogarnac caloksztalt - np GSM :)
+2
pokaż komentarz
@Waldemar_Morawiec: Chyba ci się zmienna przepełniła, nie ja pisałem ten "mini system" :) Wkleiłem tu jedynie dwa posty pokazujące że pod odpowiednik opiekunem nawet AVR potrafi zadziwić, skorzystam z kolejnej okazji i wkleję następne cudo - programowo generowany sygnał composite, do tego oczywiście muzyka i animacje:
http://www.linusakesson.net/scene/phasor/index.php
źródło: youtube.com
0
pokaż komentarz
Jak odpalisz linuxa na 8bitowym AVR?
@nowoczesny_jawnogrzesznik: Tak jak napisałem pisząc emulator ARM xD Oczywiście to już totalna sztuka dla sztuki.
Są też dedykowane systemy dla AVR ale wątpię czy któryś z nich ma sens wychodzący poza prace magisterskie/hobby no i pewnie żaden na attiny nie pójdzie
Szybkie googlowanie - https://en.wikibooks.org/wiki/Embedded_Systems/Atmel_AVR/Operating_systems_and_task_managers
+4
pokaż komentarz
@jaromaz: powtórzę: wcale nie chodzi o to, że on jest mini. Chodzi o to, że nie ma nic wspólnego z systemem operacyjnym. To po prostu program z CLI. Systemem operacyjnym nie nazywamy czegoś, co ma interfejs tekstowy i obsługuje jakieś komendy. Tak samo nie jest to żaden emulator bo niczego nie emuluje. AVR jest biedniutki, ale można na nim uruchomić coś, co nosi cechy systemu operacyjnego. Zobacz FreeRTOS. Zarządza zadaniami, przydziela pamięć, pozwala synchronizować zadania (semafory, muteksty, kolejki). Twój projekt jest interesujący, ale nie używajmy określeń, które do niego nie pasują.
0
pokaż komentarz
Chyba ci się zmienna przepełniła, nie ja pisałem ten "mini system"
@tank_driver: Fakt miało być do @jaromaz
@nowoczesny_jawnogrzesznik - https://dmitry.gr/?r=05.Projects&proj=07.%20Linux%20on%208bit
+1
pokaż komentarz
@Waldemar_Morawiec: Chryste Panie, podziwiam ludzi ktorzy maja czas taka sztuke dla sztuki robic :) Szacun :)
-1
pokaż komentarz
@zarowka12 @tank_driver @Waldemar_Morawiec @msichal @nowoczesny_jawnogrzesznik
Odsyłam do mojego komentarza tutaj:
https://www.wykop.pl/link/4760127/comment/62326825/#comment-62326825
bo już muszę na dzisiaj kończyć. Pozdrawiam :)
+1
pokaż komentarz
@jaromaz: Ty nie bierz tego źle, dobra robota, każdy projekt na AVR do czegoś się komuś przyda. Ja się nabrałem na podgląd, miałem nadzieję na graficzny interfejs ;) Na pewno się da skoro na 8 bitowcach były takie jak Geos (wiem, atmega nie ma koprocesora od grafiki ale za to jest sporo szybsza od 6502 i przy 20 MHz generuje stabilne VGA). Tyle że dzisiaj to już sztuka dla sztuki, nie da się tego sprzedać a nikomu nie chce się dla poklasku siedzieć miesiącami i klepać w ASM czy C ze wstawkami.
0
pokaż komentarz
@nowoczesny_jawnogrzesznik: może nie dokładnie na AVR ale jest lub było coś takiego jak uCLinux i miało port na 8bit procesor H8.
+14
pokaż komentarz
Jest to oczywiście mini-system, bo ciężko napisać coś więcej na urządzenie z 8k pamięci flash zajęte w 60% przez bootloader i soft emulujący komunikację po USB (ponieważ Digispark nie posiada dodatkowego chipu USB) :). Program pozwala na wpięcie się po USB do uruchomionego już Digisparka, zalogowanie się, wykonanie kilku komend, a następnie na wylogowanie się i odpięcie terminala. Digispark dalej pozostanie uruchomiony i będzie uwzględniał wprowadzone wcześniej komendy.
Oczywiście można też wpiąć Digisparka bezpośrednio do portu USB komputera i mini-system uruchomi się korzystając z zasilania dostarczanego przez złącze USB - jak na filmiku powyżej. Więcej informacji w powiązanych.
+8
pokaż komentarz
@jaromaz: jak sie nazywa ten mikro lapek ?
+22
pokaż komentarz
@Szolek: Gemini PDA - to najmniejszy produkowany seryjnie laptopo-telefon. W filmie korzystam na nim z Androida, ale w dual boot jest jeszcze zainstalowany w pełni funkcjonalny Debian.
Strona producenta: https://planetcom.squarespace.com
+1
pokaż komentarz
@jaromaz: Ten w pełni funkcjonalny debian jest zainstalowany na start czy zrobiłeś dual i zainstalowałeś debka ? W dupę bardzo drogi 2k +
+1
pokaż komentarz
@airflame: firma udostępnia proste, wizualne narzędzie do instalacji wielu systemów równocześnie oraz gotowe ich obrazy. Ja mam właściwie zainstalowane w triple boot: zrootowanego Androida, Debiana i Sailfish OS. Ich Debian jeszcze nie obsługuje połączeń głosowych, tylko transmisję danych, ale już Sailfish jest w pełni zintegrowany z urządzeniem.
+6
pokaż komentarz
@airflame:
bardzo drogi
ja miałem trochę taniej, bo z racji zamiłowania do Psionów
( https://jm.iq.pl/psion-5mx-z-linuxem-na-pokladzie/ )
dość wcześnie uczestniczyłem w kampanii crowdfundingowej fundującej produkcję tego urządzenia :) (zwróć uwagę, że mój Gemini nie posiada na klawiaturze litery "ć" :) na szczęście da się ją uzyskać w Androidzie dłużej naciskając c, a i też dość rzadko "ć" występuje w języku polskim.
+3
pokaż komentarz
@jaromaz wg mnie to bardziej pda niż laptop, zgodnie z założeniem reaktywacja psiona :) Prawdziwy mikro laptop to GPD pocket 2, ale i tak pewnie gemini kupię za udawanie telefonu https://www.gpd.hk/gpdpocket2
+4
pokaż komentarz
@tamlinek: Debian dla Gemini PDA jest pełną, desktop-ową wersją - więc to laptop z wbudowaną transmisją danych 4G :)
+2
pokaż komentarz
@jaromaz zaletą gpd jest działająca zaskakująco dobrze winda, czego na gemini nie uswiadczysz :) już spędziłem trochę czasu na namyślaniu się i nie jest to dla mnie ważne, ale dla kogoś to może być dealbreaker
+2
pokaż komentarz
@tamlinek: u mnie zwyciężyły wymogi rozmiarowe, ale też wtedy nie istniał GPD Pocket 2 - jedynka miała sporo niedociągnięć. Teraz prawdopodobnie wybrałbym właśnie GPD Pocket 2. Niestety z jakości klawiatury w Gemini PDA nie jestem do końca zadowolony - w Psion 5mx klawiatura jest dużo lepsza, a to urządzenie ma już 20 lat :) .
0
pokaż komentarz
@jaromaz A jednak? Wiele słyszałem złego o tej klawce, ale stwierdziłem, ze nie może być tak zle.
+1
pokaż komentarz
@tamlinek: niestety nie zawsze wchodzi dany klawisz i trzeba dość mocno uderzać żeby tego uniknąć (jak na powyższym filmiku). Podesłali mi bezpłatnie dodatkową matę, ale tak nie powinien działać produkt, którego głównym ficzerem jest właśnie klawiatura. Rozmiar jest jednak nie do pobicia :)
0
pokaż komentarz
Albo może https://allegro.pl/oferta/gpd-win-pc-ver3-konsola-mini-laptop-wysylka-pl-7518272488 ? :)
0
pokaż komentarz
@airflame: nieee :) najbardziej podoba mi się nowa, czarna wersja GPD Pocket 2:
https://www.amazon.com/GPD-Pocket-Portable-Touchscreen-Processor/dp/B074RK6TBG
0
pokaż komentarz
@jaromaz: No wiem ale cena niestety nie dla zwykłego zjadacza chleba :)
+1
pokaż komentarz
@airflame: bez przesady - po prostu pytanie czy dana rzecz jest ważnym i niezbędnym, czy zbędnym wydatkiem. Ja odpuszczam sobie GPD :)
0
pokaż komentarz
@jaromaz: Wiesz mam lenovo e11 yoga i daje rade :) Ale czasami chciał bym coś wrzucić do torby mniejszego ale to tam taka mała niewygoda.
0
pokaż komentarz
@jaromaz: cena trochę zaporowa jak za takie maleństwo
0
pokaż komentarz
@mechatronics: w 1998 roku pracowałem w polskiej redakcji PC Magazine. Dostałem do testów Psion 5 i zamarzyłem o tym sprzęcie :) potem korzystałem trochę z wersji Revo oraz z wielu urządzeń z Palm OS. Rok temu kupiłem na OLX Psion 5mx w doskonałym stanie i odpaliłem na nim Debiana Etch ( było na wykopie: https://bit.ly/2T4AZnC ). Gemini PDA zostało zaprojektowane przez twórcę Psion 5mx i wiedziałem, że korzysta się z niego identycznie jak z klawiatury w 5mx, więc kupiłem Gemini w ramach sentymentu - wtedy cena nie jest tak istotna ;) Pomimo pewnych wad nowej klawiatury jestem z Gemini bardzo zadowolony, ale polecam tylko takim maniakom PDA jak ja :)
+29
pokaż komentarz
@jaromaz: Heh, sam mam obecnie Gemini na sprzedaż. Powody zakupu podobne, choć u mnie służył też do pracy zdalnej, gdzie ostatnio praktycznie się to nie zdarza.
Tu Gemini w gronie innych 'klawiaturowców' z kolekcji. Choć to tylko mały ułamek tego co leży w kartonie z palmtopami.
źródło: i.imgur.com
+1
pokaż komentarz
@jaromaz:
ja miałem trochę taniej, bo z racji zamiłowania do Psionów
u mnie zwyciężyły wymogi rozmiarowe
Nikogo kto używał Psiona serii 5 nie oszukasz. Zobaczyłeś coś z tak cudowną klawiaturą, pomyślałeś "wow ale zajebiste" i kupiłeś. U mnie jest na liście zachcianek. :D
+2
pokaż komentarz
Jest to oczywiście mini-system,
@jaromaz: A jaka jest definicja mini-systemu? Bo ja widzę tu zwykły wsad i nie ma się czego wstydzić jeśli idzie o idee. To nie jest system operacyjny w żadnym calu. Narzekasz że masz mało pamięci bo bootloader to programuj w czystym C.
0
pokaż komentarz
@kitor: Ech mam parę innych wydatków a bym Ci chętnie odciążył pudło :D
Z ciekawości ile za niego chcesz? I lile chcesz za Psiona 5 i Nokie?
I tak mnie nie stać ale zawsze warto zapytać :D
0
pokaż komentarz
@wbielak: Tu akurat 5MX jest, piątkę też ostatnio dopadłem. One akurat na sprzedaż nie są ;)
A sam Gemini, tutaj:
https://pdaclub.pl/forum/sprzedam/planet-gemini-pda-wspolczesny-psion-5mx-z-androidem-i-telefonem/
-2
pokaż komentarz
@CukrowyWykop: już ustalone, że lepszą nazwą jest "emulator systemu" ... coś co dla użytkownika końcowego tylko przypomina system operacyjny, ale co jest również dla niego użyteczne. Oczywiście, że to tylko wyłapywanie pewnych stringów i utrzymywanie pewnych stanów. Cokolwiek innego przy Digisparku byłoby przerostem formy nad treścią :) jak widać na filmie takie rozwiązanie jest po prostu użyteczne ... i tak jak wspominałem po usunięciu zbędnych procedur (oznaczonych w kodzie blokiem) nic nie stoi na przeszkodzie, aby użytkownik wykorzystał ten sketch jako szablon dla swojego kodu (np. odczytującego dane z pinów).
+2
pokaż komentarz
już ustalone, że lepszą nazwą jest "emulator systemu"
@jaromaz: jaki emulator systemu?(co to w ogóle jest?) To jest standardowy program dla małych avr, pobierz coś z pinów/wystaw i prześlij po RS. Jest to standardowy wsadowy program w C(C ukryte tu pod arduino).
coś co dla użytkownika końcowego tylko przypomina system operacyjny,
Dla użytkownika końcowego przypomina to urządzonko co zapala lampkę. On nawet nie myśli o systemie operacyjnym, bo on nawet nie wie że lampka mogła by mieć system operacyjny.
-2
pokaż komentarz
To jest standardowy program dla małych avr
@CukrowyWykop: oczywiste - w końcu gołym okiem widać, że to sketch Arduino IDE :) Dla użytkownika sketch ten może spełniać użyteczną funkcję i na pierwszy rzut oka działa jak system operacyjny - emuluje go uwzględniając ograniczenia i zalety Digisparka - wykorzystując to, do czego Digispark jest przeznaczony. Generalnie nazywam go mini-systemem i pod takie sformułowanie "twórca" może podpiąć Wszystko :) jeżeli sketch się komuś przyda, to się cieszę - jeżeli nie, to tylko niepotrzebnie traci czas na pisanie tutaj i akademickie dywagacje co kryje się pod pojęciem "mini system" ;)
+1
pokaż komentarz
@kitor: Pdaclub.pl - aż dziw, że jeszcze istnieje :D Kawał życia człowiek przesiedział na forum. Łezka się w oku kręci jak sobie pomyślę o tych wojenkach PalmOS vs WM, testach Tungstena 1, sporach PDA z modułem telefonicznym, czy PDA + telefon... I pomyśleć, że pojawienie się smartfonów doprowadziło do IMO powolnego upadku portalu. Co za nostalgia ( ͡° ͜ʖ ͡°)
+3
pokaż komentarz
na pierwszy rzut oka działa jak system operacyjny - emuluje go
@jaromaz: niczego nie emuluje, sprawdź znaczenie tego słowa. I nawet na pierwszy rzut oka nie działa jak system operacyjny. Ma tylko parę komend tekstowych, ale to ani trochę nie czyni nawet podobnym do systemu operacyjnego. System nie musi obsługiwać żadnych komend. Serio, doceniam projekt, ale nie ma sensu brnąć w to słownictwo :)
+3
pokaż komentarz
@jaromaz: wiesz co, nie wiem ile masz lat i czy masz szansę pamiętać czasy kiedy takiemu programowi jak zrobiłeś nadawano angielską nazwę "system monitor" albo po prostu monitor. nawet najprostsze 8bit komputery odróżniały pojęcia System Operacyjny i Monitor.
tak więc daj spokój z tym emulatorem i nazwij sprawy po imieniu.
-1
pokaż komentarz
@jaromaz oo cześć jaromaz, pozdrowionka od starego cumpla z A2C (ACC) (⌐ ͡■ ͜ʖ ͡■)
0
pokaż komentarz
@ksawery2001:
nie wiem ile masz lat
mało
Czy taki system monitor był/jest aktywny? tzn. czy pod to monitorowanie podchodzi aktywna akcja w stylu wysyłania sygnałów HIGH na piny? Bo system monitor kojarzy mi się bardzo statycznie, ale możliwe, że błędnie.
Czy jeżeli miałby się nazywać monitorem systemu, to musiałoby to oznaczać, że na Digisparku jest w ogóle jakiś system?
@zarowka12:
niczego nie emuluje, sprawdź znaczenie tego słowa
Niestety definicja też nie jednoznaczna (o dziwo !) :) np. za słownikiem PWN emulacja to "wierne naśladowanie działania systemu komputerowego lub jakiegoś jego elementu przez inny system komputerowy"
https://sjp.pwn.pl/sjp/emulacja;2556671.html
Pytanie czy mój "mini system" wiernie naśladował "system komputerowy" w powyższym filmie? Chyba tak, bo jeżeli pod tym samym tytułem znaleziska umieściłbym jeden z odcinków bajki Tom i Jerry, to zapewniam, że znalezisko nie miałoby ani jednego wykopu (xD).
Żeby nie powtarzać treści z innych wątków odsyłam tutaj:
https://www.wykop.pl/link/4760127/comment/62329953/#comment-62329953
Zgadzam się żebyśmy nie brnęli dalej :)
@kupyn Cześć ! :)
0
pokaż komentarz
Czy taki system monitor był/jest aktywny? tzn. czy pod to monitorowanie podchodzi aktywna akcja w stylu wysyłania sygnałów HIGH na piny?
@jaromaz: oczywiście że aktywny, wydajesz komendy, sprawdzasz zawartość pamięci lub portów i/o, modyfikujesz ich zawartość, itp. niektóre, np. z Apple II miały także wbudowany disassembler czy inne "zaawansowane" funkcjonalności. generalnie programy takie służyły do niskopoziomowej obsługi sprzętu i pomagały w debugowaniu czy pisaniu oprogramowania systemowego.
Bo system monitor kojarzy mi się bardzo statycznie, ale możliwe, że błędnie.
@jaromaz: niestety teraz termin ten ma całkowicie inne znaczenie
Czy jeżeli miałby się nazywać monitorem systemu, to musiałoby to oznaczać, że na Digisparku jest w ogóle jakiś system?
@jaromaz: w tym przypadku określenie "system" odnosi się do platformy sprzętowej, a nie "systemu operacyjnego".
tak jak pisali inni w tym wątku, system operacyjny musi dostarczać trzy elementy:
1. zarządzanie sprzętem
2. zarządzanie zadaniami użytkownika
3. dostarczanie podstawowych, ogólnych usług dla zadań użytkownika
w twoim przypadku, jak rozumiem masz tylko 1).
0
pokaż komentarz
@ksawery2001:
niestety teraz termin ten ma całkowicie inne znaczenie
No właśnie aktualne znacznie wydaje mi się ogólnie dość istotne - np. "kutas" to ozdobna zawieszka przy pasie szlacheckiego kontusza :)
"system" odnosi się do platformy sprzętowej
Żeby nie było nieporozumień usunąłem słowo operacyjny, tam gdzie to było możliwe i teraz pozostał już tylko "mini system" "odnoszący się do platformy sprzętowej" :)
0
pokaż komentarz
@kitor: Nie chcesz sprzedac czegos z kolekcji? Gemini tez jestem zainteresowany, podaj mi na priv mejla, nie ogarniam wykopu.
0
pokaż komentarz
@kitor co to za telefon trzeci od dołu?
0
pokaż komentarz
@KozussziJB: chyba od lewej? Blackberry KeyOne.
0
pokaż komentarz
No właśnie aktualne znacznie wydaje mi się ogólnie dość istotne
@jaromaz: porównujesz kilkusetletnie zaszłości językowe z terminami technicznymi opracowanymi tylko 30 lat temu. poza tym, ważny jest także kontekst w którym używany jest dany zwrot. dla wspomnianego przykładu "apple ii system monitor" to pojęcie tak jednoznaczne, że tylko idiota będzie starał się przypisać mu inne znaczenie. analogicznie "windows system monitor" to totalnie inny produkt i nikt nie pomyli go ze wspomnianym "apple ii system monitor".
"mini system"
@jaromaz: rób jak chcesz, wymyślasz własne pojęcia, ok, tylko że nikt nie będzie cię rozumiał.
0
pokaż komentarz
@ksawery2001:
rób jak chcesz
dzięki :)
nikt nie będzie cię rozumiał
oby tak się nie stało ! ale 480 wykopujących potraktuję jako dobrą wróżbę :)
+24
pokaż komentarz
Klasycznie
źródło: comment_TVgTnvUK2yOvitAETiaMDtHFSpVT2u8Y.jpg52379367436171523980
+1
pokaż komentarz
@marcepanowykrzyzyk: Gosc z mema ma wiele racji. Dzisiaj niewielu, szczegolnie tych z mlodego pokolenia zaglebia sie w szczegoly jak co dziala, jak cos mozna zrobic prostym sprzetem i tak dalej. Teraz modne jest wyklikac cos uzywajac super-hiper bibliotek - czy to mikrokontrolety czy strony www czy inne rzeczy. A potem do byle czego potrzeba megabajtow...
+6
pokaż komentarz
@nowoczesny_jawnogrzesznik:
Kiedyś żeby zamrugać diodką trzeba było zbudować multiwibrator astabilny na dwóch tranzystorach a przy okazji człowiek nauczył się istoty działania takiego układu. Teraz odpalasz mikroprocesor z zegarem 8 Mhz + 3 linijki kodu żeby zrobić to samo.
źródło: obrazki.elektroda.pl
+2
pokaż komentarz
@smk666: Ta... sam pamietam jak za dzieciaka lutowalem jakies mrugadla na BC107 i kondensatorach wyciagnietych ze starego radia:)
Teraz mamy takie czasy, ze koszt jednego tranzystora jest coraz mniejszy wiec za kwote ktora kiedys kosztowal np NE555 teraz mamy jakies ATTiny czy prostego ARMa z ktorego pomoca mozna zrobic wiele wiecej. Inna kwestia ilu amatorow takiego mrugania wlasciwie rozumie co tam w srodku sie odbywa:)
+19
pokaż komentarz
@smk666: a kiedyś, żeby ogień rozpalić to trzeba było krzemień znaleźć albo patyk o patyk ocierać, a teraz milenialsi zapalniczkami palą! Kurła...
-9
pokaż komentarz
@Ogau:
Bardziej chodzi mi o to, jak rośnie stopień bazowania na wiedzy innych ludzi. Żeby zrobić takie banalne urządzonko kiedyś wystarczyły podstawowe elementy. Na produkcję arduino składają się tysiące godzin projektowania, testowania i wdrażania samego mikrokontrolera, potem kolejne godziny na zaprojektowanie modułu arduino, napisanie softu, bibliotek... A to wszystko wykorzystane tylko po to, aby zamrugać sobie LEDem na podstawie tutka z sieci przeklejonego bez zrozumienia z przeglądarki do Arduino IDE.
Do tego rośnie rzesza "elektroników" których wiedza sprowadza się do łączenia gotowych płytek przewodami i pisania nieco kodu a którzy nie wiedzą jak to ustrojstwo tak naprawdę działa.
+2
pokaż komentarz
@smk666: ktoś pracuje, żeby ktoś miał łatwiej. O to chodzi w pracy, żeby ułatwiać innym życie za pieniądze ( ͡° ͜ʖ ͡°)
+10
pokaż komentarz
@smk666:
No wiesz, kiedyś, żeby napisać prosty program trzeba było użyć kodu maszynowego, następnie go przenieść na taśmę dziurkowaną... Później pojawiły się assemblery i możliwość pisania kodu na komputerze. Później język C, wystarczy, że przydzielisz sobie pamięć, odwołasz się do odpowiednich funkcji systemu - napisze "hello world". A teraz w takim Pythonie piszesz tylko 'print "hello world"' i już.
I tak ze wszystkim. Chciałeś zrobić grafikę 3D - najpierw na kartce zaprojektuj geometrię. Później napisz procedury przeliczające geometrię, transformację na macierzach, ba, samo rysowanie linii to już było wyzwanie, żeby robić to szybko. Później pojawiły się shadery i praktycznie dowolnie skomplikowaną scenę 3D zrobisz dziś w JS (Shader Toy). Czy w dowolnym innym języku wysokiego poziomu.
Podoba mi się to. Możesz się skoncentrować na konkretach zamiast abstrakcjach. Tzn jak robisz grę nie interesuje Cię za bardzo jak komputer narysuje 1 trójkąt z wielu milionów. Ba, na dobrą sprawę możesz olać wszystkie paskudne detale i skoncentrować się na algorytmach samej gry. I będzie działać, chociaż może nie na kalkulatorze, tylko współczesnym PC.
Oczywiście grafika to tylko przykład. Masz dziś gotowce od przetwarzania dźwięku, obrazu, machine learning, dowolnego szyfrowania i kompresji.
Sprzęt idzie w tę samą stronę. Elementy układów scalonych są tak małe i tanie, że w zasadzie można z nich robić inteligentne materiały, odzież, cokolwiek.
+4
pokaż komentarz
Kiedyś żeby zamrugać diodką trzeba było zbudować multiwibrator astabilny na dwóch tranzystorach a przy okazji człowiek nauczył się istoty działania takiego układu. Teraz odpalasz mikroprocesor z zegarem 8 Mhz + 3 linijki kodu żeby zrobić to samo.
@smk666: dziś roboczogodziny kosztują więcej od poszczególnych elementów elektronicznych, pamięci, mikroprocesorów/mikrokontrolerów. To o czym piszesz, poza jakimiś skrajnymi przypadkami użycia - nie ma żadnego sensu.
0
pokaż komentarz
@marcepanowykrzyzyk: Wszedłem tu tylko po to, żeby to zaplusować ( ͡° ͜ʖ ͡°)
0
pokaż komentarz
@smk666: w #programista15k widać to bardzo dobrze - ludzie bez pasji albo się wypalają, albo kończą na wysokim juniorze/regularze. Elektronicy pewnie mają podobnie, też ciężko zrobić coś bardzo dobrego, czyli ekonomicznie wydajnego, bez głębszego poznania podstaw.
Z drugiej strony Arduino, ESP i tak dalej to świetna droga do poznania całej branży z bardzo niskim progiem wejścia - tym samym więcej zajawionych ludzi trafi do właściwej branży, zamiast grzebać się z raportami, rozliczeniami i inną excelozą wbrew temu co lubią.
-1
pokaż komentarz
a kiedyś, żeby ogień rozpalić to trzeba było krzemień znaleźć albo patyk o patyk ocierać, a teraz milenialsi zapalniczkami palą! Kurła...
@Ogau: no właśnie nie. Zapalniczka to nadal bardzo proste urządzenie, zawierające z resztą coś w rodzaju krzemienia. Nie było tutaj wielkiej ewolucji. A tu mowa o przeskoku z dwóch tranzystorów na dwa miliony.
0
pokaż komentarz
Bardziej chodzi mi o to, jak rośnie stopień bazowania na wiedzy innych ludzi. Żeby zrobić takie banalne urządzonko kiedyś wystarczyły podstawowe elementy.
@smk666: no tak, bo tranzystory sobie można z kawałka drutu zrobić i proces technologiczny to nie jest ogromne bazowanie na cudzej wiedzy
0
pokaż komentarz
@nowoczesny_jawnogrzesznik: Na TG50 się robiło, a nie na jakiś nowoczesnych BC! ;)
+1
pokaż komentarz
Kiedyś żeby zamrugać diodką trzeba było zbudować multiwibrator astabilny na dwóch tranzystorach a przy okazji człowiek nauczył się istoty działania takiego układu. Teraz odpalasz mikroprocesor z zegarem 8 Mhz + 3 linijki kodu żeby zrobić to samo.
@smk666: też tak robiłem, do tego analogiczny schemat zmodyfikowałem tak aby zrobić generator akustyczny i po podłączeniu zestawu klawiszy włączających różne rezystory miałem namiastkę "syntetyzatora" jak muzycy z telewizji, a wszystko to w 6 klasie, ach to były czasy.
a wracając do sedna, to teraz taka wiedza jest skrajnie niepraktyczna, to jak nauka pisma klinowego, bo ktoś, kiedyś je wymyślił. nikt w obecnych czasach, nawet amatorzy, nie buduje układu do migania diodą jako końcowego produktu. takie miganie diodą to sprzętowy odpowiednik "hello world". jest wstępem do ogarnięcia nowego środowiska czy nowego projektu. a nawet, jeśli z jakiegoś powodu zdarzy się, że w gotowym produkcie musi być migająca dioda, to są setki tańszych rozwiązań niż budowanie multiwibratora na elementach dyskretnych.
niestety takie mamy czasy, że pełnoprawny mikrokontroler 8 bitowy potrafi kosztować mniej niż jeden tranzystor w takim schemacie, np. Padauk PMC150 kosztujący 0,03 USD za sztukę przy zakupie tylko 100 sztuk - to jest 0,1 grosza za sztukę, ma następujące parametry:
1. 1KWord OTP program storage
2. 60 Bytes data storage
3. a 16-bit timer
4. Quick wake-up function
5. Built-in high frequency RC oscillator (IHRC)
6. Built-in Band-gap hardware module output 1.20V reference voltage
7. 6 IO pins with 10mA current drive capability
8. Operating voltage range: 2.2V ~ 5.5V
9. Clock source: internal high frequency oscillator, internal low frequency oscillator
10. Wake-up function can be set for each IO pin
11. 8-segment LVR reset setting: 4.1V, 3.6V, 3.1V, 2.8V, 2.5V, 2.2V, 2.0V, 1.8V
12. 1 external interrupt pin
0
pokaż komentarz
@czarna_sraczka: Za moich czasow (poczatek lat 90) najpopularniejsze byly BC w metalowych obudowach i troche mocniejsze BD. O TG to w zasadzie tylko sie czytalo w starych ksiazkach o elektronice wypozyczonych z biblioteki :)
0
pokaż komentarz
A potem do byle czego potrzeba megabajtow...
@nowoczesny_jawnogrzesznik: Jak pamięć jest tania to co w tym złego? Celem każdej technologii jest rozwiązywanie problemów i ułatwianie ludziom życia.
0
pokaż komentarz
@jaromaz: Co można zrobić na takim Psion'ie? Jakie to daje możliwości?
+1
pokaż komentarz
@rubesom: wszystkie możliwości, które daje Ci Android i desktopowy Debian :) - jak wspominałem wcześniej mam na nim w triple boot Androida, Debiana i Sailfish OS. Na dostarczonym przez producenta Debianie udało się skompilować sterownik do dongla DVB-T+FM+DAB i odebrać zdjęcie pogodowe bezpośrednio z satelity. Może być to przydatne np. żeglarzom pokonującym Atlantyk - nie muszą ze sobą targać laptopa i telefonu i wszystko mają w tym jednym, małym urządzeniu.
+17
pokaż komentarz
@jaromaz: to uczucie, gdy napisałeś OS a większym zainteresowaniem cieszy się zupełnie inne urządzenie na filmie :D
+2
pokaż komentarz
@grzemach: zakładałem, że połączenie będzie interesujące :) Spodziewałem się pytań o Gemini i oczywiście klasycznego arduinowego mema - dziwne, że tak późno się pojawia :) @marcepanowykrzyzyk
+15
pokaż komentarz
SoC za dolara obsługiwany przez mcroPC za 2k :DD