Od ZERA do Komputera: Karta graficzna 1#

Поделиться
HTML-код
  • Опубликовано: 12 сен 2024
  • Podsumowanie kilku lat pracy nad własnym komputerem 8-bit budowanym od podstaw. W tym odcinku omówię Wam osiągnięcia w sprawie budowy karty graficznej do tego projektu.
    Zastosowano fragmenty następujących utworów:
    * "Rapapara" Łydka Grubasa"
    • ŁYDKA GRUBASA - Rapapa...
    * "Jeszcze raz Vabank" Henryk Kuźniak
    • Henryk Kuźniak - Jeszc...
    Datasheet:
    www.alldatashe...

Комментарии • 87

  • @ELEKTRON1
    @ELEKTRON1  3 года назад +7

    *Z najnowszych informacji!*
    Dorwałem polutowane płytki telegazety i jak się uda, to z palcem w nosie będzie szło na nic zrealizować karty graficzne!
    Wygląda na to, że większość jest sterowana przez I2C (TWI)
    Inne układy, które testujemy do tego celu:
    1) STV9426 - układ z odcinka, Sterowanie: [I2C], IN: Vsync, Hsync, OUT: R, G, B, FBK 0.8___5v (dobrać rezystory 510R przy 75R terminatora)
    2) D6450CX - 12 LINII x 24 dla VCR Sterowanie: [DATA, CLK, STB, BUSY] IN: Composite; OUT: Composite (Input+OSD);
    3) SAA5281ZP/H (TELETEXT)
    4) SAA5246 (TELETEXT)

    • @awli8861
      @awli8861 3 года назад

      Powodzenia z gu!

  • @compaqchemlab
    @compaqchemlab 3 года назад +8

    Bajerancki film! Tylko tak dalej!

  • @janekmarciniak5804
    @janekmarciniak5804 3 года назад +3

    Łał takiego filmu to żem się nie spodziewał .👍💪 powodzonka przy projekcie

  • @pococitesmieci2137
    @pococitesmieci2137 3 года назад +5

    Bardzo fajnie zrobiony film i ciekawy projekt!

  • @lemonekq
    @lemonekq 3 года назад +6

    Swietny Material

  • @sciencedeveloper6637
    @sciencedeveloper6637 3 года назад +8

    Świetnie opracowany materiał

  • @dominikworkshop6007
    @dominikworkshop6007 3 года назад +5

    Nareszcie! Super materiał!

  • @matid8453
    @matid8453 3 года назад +2

    super pora się chyba zainteresować elektroniką cyfrową bo ty robisz takie rzeczy niesamowite a ja się cieszę jak mi nadajnik w końcu odpalił

    • @ELEKTRON1
      @ELEKTRON1  3 года назад +1

      Nie jest trudne, ale trzeba nieraz sobie na tym zęby połamać. Wystarczy, że jeden kabelek nie łączy i jest po zawodach. W dodatku nie ma opcji, że zrobi się to na pająka. Albo PCB trzeba, albo ostatecznie płytka stykowa

  • @__MINT_
    @__MINT_ 3 года назад +9

    Pierwszy ;)

  • @pralkatv3485
    @pralkatv3485 2 года назад

    Mam znajomego fachowca, który również buduje komputery od zera. Szacun i bardzo się cieszę, że jesteś tak pozytywnie zakręcony.

    • @pralkatv3485
      @pralkatv3485 2 года назад

      Ten opisany znajomy zdobył 2 miejsce na targach we Frankfurcie za komputer diagnostyczny do samochodów.

  • @maniekgame
    @maniekgame 3 года назад +2

    świetny film czekam na następne

  • @radekb9479
    @radekb9479 2 года назад

    Właśnie odkryłem twój kanał szacunek że robisz to z fajnym poczuciem humoru extra leci sub.

  • @mateusz_mf8353
    @mateusz_mf8353 3 года назад +4

    ❤️❤️❤️❤️❤️❤️❤️❤️❤️

  • @Lechoslowianin
    @Lechoslowianin 3 года назад +2

    👍👏👏👏

  • @franekwierzba3037
    @franekwierzba3037 3 года назад +3

    Fajna nazwa dla tego filmu ;)

  • @borysenduro2
    @borysenduro2 4 месяца назад

    świetny film

  • @eR-MIK
    @eR-MIK 2 года назад

    Mylisz się (5:51), że bez assemblera się nie obejdzie. Uzyj ARM, który ma DMA i wstawek ASM nie trzeba robić. Jak pisałem na AVR to czasem robiłem wstawki ASM od czasu jak używam ARM i sprzętu, który oferuje (np DMA) nie robię wstawek asm bo nie ma takiej potrzeby!.

  • @skynetcybersystem3tech
    @skynetcybersystem3tech 2 года назад

    super

  • @coolbitbmwretrofitgarage8033
    @coolbitbmwretrofitgarage8033 2 года назад

    A zasubskrybuje sobię, jak kiedys bede miał czas to poogladam... A narazie zbieram sobie do pudełka stare procesorki :)

  • @lukaszstacholkusz5343
    @lukaszstacholkusz5343 Год назад

    Fajne 👍

  • @tomaszm6777
    @tomaszm6777 Год назад

    👌

  • @ololukiXP
    @ololukiXP 2 года назад

    6:19 też miałem taki sam problem z adresami w I2C, tylko że dokładnie odwrotnie - w nocie katalogowej był adres 0x27 a mój program przyjmował 8-bitowe wartości, więc musiałem wartość adresu slave'a pomnożyć przez dwa

  • @TheApokalipsa88
    @TheApokalipsa88 2 года назад

    Mega mózg.

  • @TymexComputing
    @TymexComputing 2 года назад

    2:40 - przekaźniki Made in Poland to jest miły akcent - specjalnie zaznaczony na wideo, ja wiem.
    Tak sobie pomyślałem - ogląda Cię wielu młodych ludzi - możesz zorganizować konkurs dla widzów na wygranie (przez nich) na popularnym portalu aukcyjnym upatrzonego przez widza uszkodzonego sprzętu elektronicznego za max 5$ z wysyłką, rozkręcenie i naprawienie lub nienaprawienie, zrobienie dokumentacji wideo lub zdjęciowo tekstowej z diagnozy i prób naprawy i głosowanie dla reszty widzów :) ludzie lubią wygrywać albo wybierać wygranych! Nagroda - AMA :). Nagroda uboczna to stworzenie z Polski drugiej ... nowej Zelandii, szwajcarii - byle nie Irlandii - to już było...

  • @oshie3287
    @oshie3287 3 года назад +1

  • @__MINT_
    @__MINT_ 2 года назад +1

    Jako że będę budował swój komputer 8-bit, potrzebuję do niego karty graficznej VGA. Planuję oprzeć ją o pamięć SRAM, oraz różne cyfrowe scalaki. Koncepcja jest taka: Synchronizacja pionowa i pozioma będzie generowana przez liczniki binarne i bramki logiczne, taktować je będzie jakiś generator na kwarcu. Użyję pamięci 32kB, co daje 256 000 komórek jedno-bitowych. Przy czarno-białym obrazie i rozdzielczości 640x400 będzie właśnie 256 000 pikseli. Pamięć będzie wystawiać dane dla 8 pikseli naraz, więc częstotliwość zmiany adresu pamięci będzie 8 razy niższa, niż częstotliwość przechodzenia pomiędzy pikselami. Żeby móc podawać dane dla pojedyńczych pikseli, do wyjścia pamięci podłączę szybki rejestr przesuwny lub multiplekser. Znasz jakiś szybki układ tego typu? Generalnie po wpisaniu danych do pamięci karta ma wyświetlać obraz dotąd, aż pamięć nie zostanie odświeżona. Wyczytałem, że przy takiej rozdzielczości potrzebne jest przełączanie pomiędzy pikselami z częstotliwością 25.175MHz, ale przy odswieżaniu 70Hz. Mi wystarczy nawet 10Hz, i teraz pytanie: czy jeśli zamiast zegara 25.175MHz użyję częstotliwości 7 razy niższej, monitor będzie prawidłowo wyświetlał obraz i wykryje, że pracuje przy 10 fps? Rozumiem, że dla Ciebie takie kombinowanie może nie mieć sensu, ale ja robię to dla satysfakcji i sprawdzenia swoich możliwości. Poza tym w internecie jest znikoma ilość dokładnych opisów takich układów (o ile wogle są), więc takim zapaleńcom jak ja z pewnością mój opis się przyda

    • @ELEKTRON1
      @ELEKTRON1  2 года назад

      Monitory mają kilka standardów wyświetlania obrazu. Jak sobie zmienisz, to zobaczysz czarny ekran i tylko tyle. Prostu monitor tego nie wyświetli. Gdyby było tak łatwo na scalakach generować obraz, to już bym dawno to robił. Nawet niektóre SRAMy są do tego celu za wolne.
      Poszukaj kanału LUCIDSCIENCE.
      Oni robili dokładnie to, co odpisujesz

    • @__MINT_
      @__MINT_ 2 года назад

      @@ELEKTRON1 YT usunął moją odpowiedź, mam nadzieję, że przeczytałeś, albo masz ją w "do sprawdzenia"...

    • @__MINT_
      @__MINT_ 2 года назад

      @@ELEKTRON1 Drobna zmiana planów, użyję klasycznego VGA 640x480@60Hz, mój monitor działa tylko przy 60Hz. Zegar dam kilkanaście MHz, muszę teraz wszystko dobrze poprzeliczać, jaką da mi to rozdzielczość, i do jakich liczb muszą liczyć liczniki. Zamiast multipleksera dam rejestr przesuwny 74HC165, wg. noty ma maksymalną częstotliwość pracy aż 51MHz przy 4,5V. Nie znalazłem u siebie żadnego licznika binarnego, który wytrzyma kilkanaście MHz, dlatego bezpośrednio do zegara podłączę licznik dwu-trzy bitowy na przerzutnikach D, mam 74LS74 i 74L74, ten pierwszy wytrzymuje ponoć 25MHz. Zastanawiam się teraz, z czego zrobić zegar na te kilkanaście MHz, mam bramki NAND Schmitta (CD4093), ale na płytce stykowej rozpędzają się tylko do 4MHz. Znasz jakiś układ zegara wysokiej częstotliwości na kwarcu?

    • @__MINT_
      @__MINT_ 2 года назад

      @@ELEKTRON1 Znalazłem u siebie niepozorny multiwibrator 74LS123, który rozpędził się do 14MHz... na płytce stykowej! Tylko czy da się go jakoś synchronizować kwarcem?

    • @ELEKTRON1
      @ELEKTRON1  2 года назад

      ​@@__MINT_ Mój drogi...To się robi tak:
      GENERATOR KWARCOWYYYY
      i to leci na liczniki, które są połączone tak, by zliczały do odpowiedniej wartości, a potem się resetowały.

  • @ATISzlotniskaTORPsan
    @ATISzlotniskaTORPsan 3 года назад +1

    Brakuj twoich materiałów.

  • @kacpermatla9648
    @kacpermatla9648 3 года назад +1

    fajny film ale czy moglbys nagrac cos dla poczatkujacych ?

    • @ELEKTRON1
      @ELEKTRON1  3 года назад +1

      Będę to wdrażał w kolejnych filmach.
      Już tutaj omówiłem rodzaje pamięci, początki początków.
      Trzeba będzie tylko śledzić uważnie wszystkie filmy, a potem już będzie bardzo łatwo

  • @eR-MIK
    @eR-MIK 2 года назад

    Nie znasz (6:33) I2C! Adres ZERO ISTNIEJE. Poczytaj w specyfikacji I2C. Liczba urządzeń na magistrali to nie 127 bo I2C przewiduje adresowanie 10-bit!

  • @__MINT_
    @__MINT_ 2 года назад

    Wziąłem się za pisanie programu do obsługi swojej karty graficznej, i pojawił się pewien problem. Dotyczy on polskich znaków. Wygląda na to, że typ char może przechowywać znaki z tablicy ascii o numerze nie większym niż 127. Przy polskich znakach, gdy odczytuję je z tablicy, dzieją się dziwne rzeczy. Odczytywany jest nie tylko sam znak, ale także nieistniejąca spacja, i to z pojedyńczej komórki tablicy! Postanowiłem sprawdzić, jak te znaki są zapisane w postaci binarnej, i zauważyłem coś dziwnego. Podstawowe znaki są zapisane prawidłowo, na 7 bitach, ale polskie znaki wychodzą poza zakres 7 bitów, i są zapisywane na 32 jako ogromna liczba bliska 2³². To chyba nie jest normalne, wygląda na odczyt z sąsiednich komórek pamięci. Przekształciłem zapis binarny na dziesiętny, wyszły liczby ujemne, co mnie nie dziwi, bo liczby wyszły poza zakres 7 bitów, a bit 8 to -128. Ale jest pewna zależność pomiędzy tymi liczbami ujemnymi a umiejscowieniem polskich znaków w ascii. Gdy do 128 dodam tą liczbę ujemną, która reprezentuje dany znak, a wynik tego działania dodam do liczby 256, otrzymuję prawidłowy indeks znaku w ascii. Przykładowo "Ą" to -124, a 128-124+256 to 260, czyli numer "Ą" w ascii. Jak prawidłowo używać polskich znaków w arduino, i czy ten zapis na 32 bitach jest normalny? Raczej nie. Jedyne, co muszę robić z tymi znakami, to znaleźć indeks w tablicy, na którym znajduje się dany znak, i odczytać ten sam indeks w drugiej tablicy, gdzie jest zapisany wygląd znaku

    • @ELEKTRON1
      @ELEKTRON1  2 года назад

      Poczytaj o "UNSIGNED"
      2) Stwórz własną tablicę ascii i na niej operuj

    • @__MINT_
      @__MINT_ 2 года назад

      @@ELEKTRON1 Tak właśnie myślałem, żeby zrobić coś z unsigned, zamieni to wtedy bit 8 z -128 na 128, ale maksymalna wartość dalej bedzie mniejsza, niż indeksy polskich znaków w ascii. Wystarczy że zadeklaruję zmienną jako unsigned char? Jeśli chodzi o stworzenie własnej tablicy ascii, to trzeba to zrobić niskopoziomowo? Bo już sam zapis np. const char znaki[] = {'A', 'Ą', 'B', itd.}; powoduje wystąpienie tego błędu z zapisem znaku na 32 bitach. Jest wogle jakiś sposób na to, aby zapisywać polskie znaki w kodzie i nie powodować błędu?

    • @__MINT_
      @__MINT_ 2 года назад

      @@ELEKTRON1 Wreszcie rozgryzłem, w jaki sposób zapisywane są polskie znaki, i jak poprawnie ich używać. Znaki, których numer w ascii wychodzi poza 255, są zapisywane na dwóch 8-bitowych liczbach, i np. ("Ą").length() zwraca 2, a nie 1. Obie liczby są ujemne, bo wychodzą poza zakres 7 bitów. Trzeba je przechowywać w typie byte (wtedy liczba ujemna zamienia się w większą od 127), a nie char, bo w przypadku char polskie znaki są zapisywane na 32 bitach, mimo że teoretycznie char to 8 bitów. Podczas odczytu stringa, gdy funkcja [string].charAt([index]) zwróci wartość większą niż 127 (przechowujemy ją w unsigned int), trzeba tą odczytaną wartość przesunąć w lewo o 8 bitów, a pierwsze 8 bitów zamienić na kolejny znak ze stringa, czyli [string].charAt([index+1]). Liczba uzyskana w ten sposób będzie taka sama, jak liczba z własnej tablicy znaków, np. takiej: uint16_t znaki[] = {'A','Ą','B',...}
      Liczba to np. znaki[1], a napis to "Ą".
      Gdy stworzysz nowego stringa:
      byte first = napis.charAt(0)
      byte second = napis.charAt(1)
      String napis2 = char(first) + char(second)
      I wypiszesz napis2 poprzez port szeregowy, to zamiast "?" wypisze się "Ą"

    • @ELEKTRON1
      @ELEKTRON1  2 года назад

      @@__MINT_ Dobrze słyszeć, że chociaż u Ciebie są postępy

    • @__MINT_
      @__MINT_ 2 года назад

      @@ELEKTRON1 Od dwóch tygodni codziennie pracuję nad swoim komputerem ;)

  • @Sebasaper
    @Sebasaper 3 года назад +1

    Witam jak z dalszą częścią oscyloskopu jakiś opisuje itp

    • @ELEKTRON1
      @ELEKTRON1  3 года назад +1

      Dalej z nim walczę

    • @Sebasaper
      @Sebasaper 3 года назад

      @@ELEKTRON1 oki czekam na pewno zbuduję 🙂
      Powodzenia i zdrowia życzę

  • @eR-MIK
    @eR-MIK 2 года назад

    Mikrokontrolery (2:42) NIE MUSZĄ ZAWIERAĆ ROM/FLASH! zapoznaj się z notą MC68332.

  • @eR-MIK
    @eR-MIK 2 года назад

    Metodą z EPROM (2:08) to sto lat można pisać soft. Do tego używa się symulatorów EPROM np:
    er-mik.prv.pl/projekty_avt/2000-06_65_EP_AVT-870_SymulayotEpromEepromDoWszystkichTypowKomputerow.pdf
    Można zrobić prostszy sprzętowo na kilku 4094 paru bramkach NOR i RAM.

  • @czarnybolo9539
    @czarnybolo9539 3 года назад +1

    Masz może jakiś dc serwer dla widzów?

    • @ELEKTRON1
      @ELEKTRON1  3 года назад

      DSC już istnieje od ponad roku. discord.gg/9vUNrmtKXz

  • @oliwierm982
    @oliwierm982 2 года назад

    Na końcu tego filmu mówiłeś coś o telewizji analogowej, konkretnie że jej już nie ma. Dało by się w jakiś sposób zrobić nadajnik analogowy, który by przesyłał obraz z dźwiękiem? I Obraz z dźwiękiem np. pobierany z AV?

    • @ELEKTRON1
      @ELEKTRON1  2 года назад

      Pewnie że tak. Robi to tak zwany MODULATOR, który można bez problemu wyjąć np. ze starego magnetowidu.

    • @oliwierm982
      @oliwierm982 2 года назад

      @@ELEKTRON1 Musze pomyśleć jak to zrobić.

  • @____.__._.._
    @____.__._.._ 3 года назад +3

    define Bokserki String xdd

    • @ELEKTRON1
      @ELEKTRON1  3 года назад +2

      W filmie jest jeszcze wieeeeeele podobnych dowcipów z każdy się jakoś odnajduje po kolejnym obejrzeniu. Polecam szczególnie przyglądać się zdjęciom, którym poleciałem z jakością w dół (efekt zamglenia, rozmazania, zrobienia słabym telefonem), bo normalnie bym czegoś takiego nie wrzucał do filmu ze względu na jakość, ale trzeba było jakoś zamaskować/rozproszyć uwagę widza, by można przemycić jakiś spoko dowcip.

    • @____.__._.._
      @____.__._.._ 3 года назад +1

      @@ELEKTRON1 Jaja wielkanocne i ukryte dowcipy to świadectwo przylożenia się do produkcji filmu :)

  • @ajesthehacker
    @ajesthehacker 2 года назад

    :)

  • @Karabanov_Aleksandr.
    @Karabanov_Aleksandr. Год назад

    Hi. I really need a demo source for atmega 328 on OSD 9426. I can 't figure out how to output the characters ( . I want to use stv9426 to implement a menu for GPS - control. I will be grateful if you give me a link to the source code !

    • @ELEKTRON1
      @ELEKTRON1  Год назад +1

      Hi! In fact, to this day I have not been able to discover how this integrated circuit works. its documentation is incomplete. However, I will look for the code I used and if I find it, I will post it here.

    • @Karabanov_Aleksandr.
      @Karabanov_Aleksandr. Год назад

      @@ELEKTRON1Thanks! I took two days, the only thing I could do was to control the position of the garbage that appears when OSD (DISPLAYCONTROL) is activated. For some reason, there are no registers in the documentation that allow you to work with COM Character Generator.

  • @Montecristo257
    @Montecristo257 3 года назад

    A "Cajberpank " na tej karcie zadziała ? :D

  • @lis6502
    @lis6502 2 года назад

    4:39 colpo grosso na vhsie? ;d

    • @ELEKTRON1
      @ELEKTRON1  2 года назад

      Gdzieś mam nawet czyjeś chrzciny - wspaniałe rzeczy można znaleźć na śmietniku

  • @100lQ
    @100lQ 3 года назад

    ruclips.net/video/zZG2C3FReOY/видео.html pamiętarz ten film? Gdzieś w komentarzu odpisałeś widzowi jak odzyskać srebro octem i perhydrolem bo kwasu siarkowego się już się nie kupi (wiadomo przez kogo) i ostatnio sporo styków nazbierałem i chciałbym je odzyskać. Opisz cały proces co i jak i wytrącić potem to srebro itp pozdrawiam.

    • @ELEKTRON1
      @ELEKTRON1  3 года назад

      Tak, jak napisałem pod poprzednim filmem. Zamiast siarkowego najlepiej azotowy. Wtedy od razu wszystko się trawi bez dodatków

  • @ozjaszgoldberg1727
    @ozjaszgoldberg1727 Год назад

    pamięć sram haha

    • @ELEKTRON1
      @ELEKTRON1  Год назад

      Bawiło mnie to, gdy chodziłem do podstawówki....

    • @ozjaszgoldberg1727
      @ozjaszgoldberg1727 Год назад

      @@ELEKTRON1 przykro mi, że uraziłem twoją inteligencje 🙃