OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů


Právě je 28.03.2024, 16:16

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 336 ]  Přejít na stránku Předchozí  1 ... 8, 9, 10, 11, 12, 13, 14 ... 23  Další
Autor Zpráva
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 09.06.2021, 20:25 
Offline
Pan Generální
Uživatelský avatar

Registrován: 23.03.2014, 20:13
Příspěvky: 2773
Has thanked: 224 times
Been thanked: 601 times
To není panda, to je ďábel :lol:

Sokoban používá jen grafiku z Petra, nebo Petr poběží na Pico?

_________________
Plesnivý sýr z Tesca, zatuchlé kuřecí řízky z Albertu, oslizlé hovězí a myší trus z Lidlu.
Nákup potravinářské inspekce v ČR, říjen 2023.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 09.06.2021, 20:33 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 24.05.2018, 22:32
Příspěvky: 1972
Bydliště: Most, Praha
Has thanked: 864 times
Been thanked: 697 times
Sice jsem zatím přebral jen grafiku, ale už jsem uvažoval o možnosti programování přímo v Pico, systémem "Petr". První krok chci teď pokračovat možností spouštět programy z SD karty, hardware na to je připravený (klávesnice z mikrospínačů + SD karta), tak jen to zprovoznit. Mohl by se tam pak výhledově spouštět obrázkový programovací jazyk, kde by se sestavovaly programy systémem skládačky, které by řídily periferie. Např. by se v tom vytvořil program pro ovládání motorů a čidel robotka, kterého by Pico mohlo řídit.

_________________
i++ (INC) increment
i-- (DEC) decrement
i@@ (EXC) excrement


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 10.06.2021, 08:11 
Offline
Radil

Registrován: 03.07.2018, 23:06
Příspěvky: 362
Has thanked: 221 times
Been thanked: 253 times
https://www.reddit.com/r/programming/co ... erry_pico/

https://www.reddit.com/r/raspberrypipic ... erry_pico/

Na HN to zapadlo: https://news.ycombinator.com/item?id=27452069

_________________
Špóngiu navlhčiť


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 11.06.2021, 10:35 
Offline
Radil

Registrován: 03.07.2018, 23:06
Příspěvky: 362
Has thanked: 221 times
Been thanked: 253 times
https://hackaday.com/2021/06/11/vga-lib ... y-pi-pico/

_________________
Špóngiu navlhčiť


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 11.06.2021, 20:37 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Mirku, na začátku jsi uváděl, že tam byly nějaké výpadky, to už jsi odhalil ?

A teď Tě čekají knihovny (resp. odladění PIO) aby to generovalo LVDS a HDMI :lol:

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 11.06.2021, 21:21 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 24.05.2018, 22:32
Příspěvky: 1972
Bydliště: Most, Praha
Has thanked: 864 times
Been thanked: 697 times
Jo výpadky jsou vyřešené - některé věci jsem odhalil, něco se samo spravilo oddělením knihovny do druhého jádra procesoru (oddělení obsluh přerušení) a něco jsem sepsal v zásadách použití - např. že všechno co se zobrazuje musí být v RAM, z flash by to nestíhalo. Nakonec se vše dalo vyřešit tak aby to bylo dobře a spolehlivě použitelné. Během vývoje to postupně přešlo ve spolehlivou a snadno použitelnou knihovnu. :-)

HDMI těžko, nějak nevidím důvod proč to dělat. :-) Na vyšší úrovně jsou vyšší Raspberry. Já pokračuji naopak pokračováním v řešení malého levného retro Pico-počítače na kterém pojedou retro programy a emululátory.

_________________
i++ (INC) increment
i-- (DEC) decrement
i@@ (EXC) excrement


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 11.06.2021, 22:28 
Offline
Pan Generální
Uživatelský avatar

Registrován: 13.05.2013, 09:15
Příspěvky: 2278
Bydliště: Brno
Has thanked: 842 times
Been thanked: 302 times
Tyhle věci jsou mimo mé chápání, fakt supr! :thumbup:

_________________
Amiga - PMD 85


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 11.06.2021, 23:01 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Mirku, zajímá mě použití Rabsperry Pico, resp. tohoto procesoru přímo s TFT displejem připojeným přes LVDS.
Čili jak se dá udělat v PIO nejrychleji ten seriový výstup pro 4 kanály.
A na druhou stranu, jak rychle by se dal udělat seriový vstup třeba 16-ti kanálového log. analyzátoru, nebo AD převodníku.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 12.06.2021, 08:40 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 24.05.2018, 22:32
Příspěvky: 1972
Bydliště: Most, Praha
Has thanked: 864 times
Been thanked: 697 times
Musel jsem se podívat na LVDS na Wikipedii, neznám. :-)

Tohle by Pico už snadno nestíhalo, protože samotný procesor jede běžně na 125 MHz. Minimálně by byl nutný přídavný PISO převodník na sériová data. V nejrychlejší variantě stíhá Pico posílat grafiku ven rychlostí 1 pixel na 2 takty procesoru. Po přetaktování procesoru na 250 MHz by stíhalo posílat grafiku ven (v paralelním formátu) rychlostí 125 mega-pixelů/sec. To by se muselo převést na LVDS sériový formát převodníkem, a ten by musel být taktovaný hodinami, tak vysoké hodiny by ale Pico ani neměl k dispozici. Musela by k tomu být přídavná elektronika, která bude mít své rychlé hodiny, bude se synchronizovat HSYNC impulsem a pak by celou scanlinku převáděla paralelní data na sériová. Případně by se ještě z Pico asi daly vytáhnout hodiny pixelů, tak tím by se ještě ten hardware asi synchronizoval pro každý pixel.

Vstup - pro digitální vstup se dá použít PIO1, které je schopné s DMA přenášet data rychlostí megahertze. Teoreticky až rychlostí hodin procesoru, ale to by už zatěžovalo DMA výstup na displej. Nejsem si jistý zda i nižší rychlost DMA by nevyřazovala DMA displeje, to by se muselo ověřit do jakých rychlostí se dá zajít.

Pro analogový vstup jsou tam 3 ADC převodníky, které jsou 12-bitové a mají zvládat rychlost 500 kilosamplů/sec, ale asi je tím myšleno rychlost všech použitých kanálů, protože je to multiplexovaný ADC, tak při použití 2 ADC kanálů by asi byla rychlost 250 kilosamplů/sec. Ještě je malý zádrhel s přesností, protože standardně Pico používá jako referenci napájecí napětí, dá se ale přivést externí přesné referenční napětí.

_________________
i++ (INC) increment
i-- (DEC) decrement
i@@ (EXC) excrement


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 12.06.2021, 10:11 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
A PIO neumí serializaci ? A když umí, tak jakou max. rychlostí ?

Ty AD převodníky jsem nemyslel interní, ale externí s paralelními daty.
Se seriovými daty bysme zase potřebovali moc velkou rychlost.

Myslel jsem to u jednoduchých měřicích přístrojů, jedno jádro a jedno PIO b y řídilo proces, třeba generování signálu DA převodníkem a druhé jádro a PIO by dělalo obsluhu hloupého displeje bez řadiče, ovládacích prvků a komunikace.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 12.06.2021, 11:28 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 24.05.2018, 22:32
Příspěvky: 1972
Bydliště: Most, Praha
Has thanked: 864 times
Been thanked: 697 times
PIO dělá serializaci tak, že má posuvný registr (jeden pro vstup a druhý pro výstup), z něj čte postupně bity a odesílá je na výstupní port. Např. takhle vypadá simulace UARTU, odeslání 8 datových bitů:

Kód:
    pull                 ; z FIFO načte bajt k odeslání do posuvného registru OSR
    set    x,7           ; připraví čítač dat, 7 znamená že se odešle 8 bitů
loop:                    ; label začátku smyčky
    out    pins,1        ; odešle na výstupní port 1 bit z posuvného registru OSR
    jmp    x--,loop [6]  ; pokračuje ve smyčce 8x

Časování (baud rate) se dělá tak, že se do instrukcí přidává čekací prodleva (tady je to např. [6]). 1 instrukce PIO trvá 1 takt SM. Hodiny pro SM se získávají ze systémových hodin, mohou se dělit i necelým číslem. Nejrychlejší sériový vstup/výstup je stejný jako hodiny procesoru, lze za 1 takt procesoru udělat 1 instrukci PIO. .. maximum tedy nějakých 250 MBaud.

_________________
i++ (INC) increment
i-- (DEC) decrement
i@@ (EXC) excrement


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 12.06.2021, 15:18 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
To by už ty pomalejší mody HDMI zvládlo :)

Ty menší displeje mají časování podobné VGA, RGB paralelně 3x8bitů, použilo by se přiměřeně míň, ale potřebují mít vyvedený DCLK a DE, ale zase na časování až tolik nezáleží a schovají se i nějaké časové výpadky.

s RGB 24bit přenosem třeba
https://www.soselectronic.cz/products/w ... 020-214770
https://cdn.sos.sk/productdata/04/9d/32 ... tz-020.pdf
https://www.soselectronic.cz/products/w ... nt0-162882
https://cdn.sos.sk/productdata/49/48/2a ... agdnt0.pdf

s LVDS přenosem třeba
https://www.tme.eu/Document/5f286fe1575 ... IW-LNN.pdf

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 12.06.2021, 17:51 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 24.05.2018, 22:32
Příspěvky: 1972
Bydliště: Most, Praha
Has thanked: 864 times
Been thanked: 697 times
Displeje s paralelním RGB: S data clock by trošku problém byl, ale udělat by to mělo jít. Instrukce PIO mají kromě datových bitů ještě "postranní" bity, kdy instrukce může nastavovat některé výstupní bity přímo. Teď to používám na generování synchronizace. Jen ty postranní bity ubírají bity pro prodlevu. A jak se dívám, nepodporují synchronizační směs, musí být oddělený HSYNC a VSYNC. V PIO generátoru by se 2 bity použily pro synchronizaci HSYNC VSYNC, 1 bit pro data clock DCLK a 1 bit pro data enable DEN. Z 5 bitů by pro wait staty instrukcí zbyl 1 bit. Což je docela málo, špatně by se řešilo časování. Dalo by se ošetřit tím, že se pro základní obraz použijí 2 vrstvy (2 state machines) a ty řídicí bity se mezi ně rozdělí, tj. SM0 by řešil synchronizaci a SM1 by řešil obraz. Pak by to mohlo zvládat. Jen to bude mít trošku omezenější funkcionalitu, bude podporovat jen max. 2 překryvné vrstvy místo 3.

Se sériovým přenosem LVDS stále nevím zda by to umělo, jak to udělat, tam jsou asi o dost vyšší požadavky na rychlost dat.

_________________
i++ (INC) increment
i-- (DEC) decrement
i@@ (EXC) excrement


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 12.06.2021, 18:10 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Požadavek na rychlost je FCLK je 7x DCLK.
DCLK je běžně 50MHz, ale minimum uvádějí kolem 20MHz (chytá se na to PLL, takže rozsah toho PLL)
150MHz na seriovejch datech by mělo stačit.
Pro 6bit LVDS se generují 3 datové kanály a 1 hodiny od DCLK (4H_3L).

Ale pokud neumí Pico LVDS výstup (diferenciální) aspoň na ty 4 linky, tak se to musí obejít.
Nevím, jestli by to chodilo jen se singl výstupem, ale možná jo, LVDS vstupy přijímačů jsem používal jako rychlý komparátor na singl datech, na druhý vstup se zavedla střední hodnota, rozhodovací úroveň.
Takže by to řešilo zase jen pár odporů :D

A jestli to tak ještě číňan nehacknul, tak by jsi byl Mirku světově první a číňan by to opráskl a prodával na Ebay až za týden :lol:

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Naposledy upravil danhard dne 12.06.2021, 18:51, celkově upraveno 1

Nahoru
 Profil  
 
 Předmět příspěvku: Re: Raspberry Pico
PříspěvekNapsal: 12.06.2021, 18:42 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 24.05.2018, 22:32
Příspěvky: 1972
Bydliště: Most, Praha
Has thanked: 864 times
Been thanked: 697 times
Číňani mají stejně už u nás utrum kvůli podražení zásilek.

_________________
i++ (INC) increment
i-- (DEC) decrement
i@@ (EXC) excrement


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 336 ]  Přejít na stránku Předchozí  1 ... 8, 9, 10, 11, 12, 13, 14 ... 23  Další

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 5 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz