Mikes21: Já právě nějakou tu pomoc a nasměrování potřebuju, protože někde jsem sice dost daleko, ale jinde jsem vlastně ani nezačal a všude je problematika strašně rozsáhlá a už se mi nechce studovat tuny materiálů s vyhlídkou, že za pár let mi snad docvaknou alespoň nějaké základy, když je tu šance, že mě někdo několika větama nasměrruje už dnes co si mám projít a ty základy mi pak použitelně secvaknou už během týdne, i když tam bude pořád ještě potřeba třeba měsíců, abych tomu skutečně nějak hlouběji porozuměl
Už mi věci nelezou do hlavy tak rychle a dobře jako před pár desítkama let
Zápisník se taky začínám snažit psát, ale jde mi to jak psovi pastva.
Já s počítači dosud pracoval na výrazně vyšší úrovni (nízkoúrovňové bylo například něco jako čtení a náhodný přístup k souboru v binárním režimu, když jsem si psal vlastní databázový engine) a do HW jsem se pořádněji pustil až relativně nedávno, když jsem si koupil Arduiino Starter Pack, postavil všechny příklady a začal je kreativně měnit. Takže jsem nikdy neřešil systémové věci na 8bitových počítačích a nemám za sebou zkušenosti s HW na Sharpu, nebo jeho současnících. Vlastně můj první takovýto počítač byllo OMEN kiilo, se pkterým si právě hraju. Takže teprve narážím na nejrůznější pasti typu, že když něco napíšu na klávesnici, tk to funguje, když si to zkopíruju jinam, tak to vypadá stejně a když to pastnu zpátky, tak to nefunguje vůbec a teprve po mnoha pokusech přijdu na to, že to prostě nestíhá tak rychle číst a zpracovávat. Takže popřehážu bloky v programu a pořadí vyhodnocování vstupu, aby to bylo rychlejší a ono to pak funguje aspoň pro jednu řádku. Takže dojdu k potřebě řídit tok dat a říct "teď na mě nemluv, pracuju" - protože mi všechno stojí, tak to nějak zplichtím prográmkem v Pythonu, který zzneužívá toho, že zatím potřebuju jen úzký okruh věcí a dokážu mu o každé řádce do vstupu podstrčit nějaký znak (prompt ">"), aby poslal další řádek. Jde to, ale není to úplně ono, tak začnu studovat MC68B50 a zjistím, že tam by se to řídit dalo. Tak to zkusím a nefunguje to, protože nejsou vyvedené signály. Ale kdyby byly, tak by to stejně nefungovalo, protože bych si přišlápnul nohu, protože tehdy ty signály měly sice stejná jména, ale jinou logiku a ona tomu pomáhala až moc na dnešní poměry. Takže potřebuju ten signál dostat nějak ven, ale přez Expanduino to nejde, protože je pomalé a blokuje dlouho, takže bych začal ztrácet data ještě dřív. Takže potřebuju nějakou desku, která to udělá v HW dost rychle a dost včas, takže potřebuju vyřešit spolupráci se sběrnicí, ale ono to chce docela dost obvodů na takovou ptákovinu, tak začnu uvažovat, zda by to nešlo udělat nějak líp a zjistím, že vlastně bych nejraději předělal to OMEN kilo, aby CPU mohlo běžet na vyšší frekvenci a ACIA na nižší a signalizovat a dostávat signály a aby se mi nekazily zápisy do EEPROM kdykoli tam přepínám jumpery ručně a řadu dalších věcí, které by celkem šly udělat, kdyby tam na ně bylo místo na desce a nějaká měď na kontakty ...
Ale když už teda chci předělat jak základní desku, tak Exkpanduino, tak dělat další desky, tak by stálo za to se podívat, jak to dělají jinde a udělat to nějak dobře. A ono to neumím najít, protože hledání mi toho sice nabídne hodně, ale nic k věci. A tak si říkám, zda vymýšlet další kolo, nebo se zeptat a třeba se dozvím, že všichni si přece dělají rdukce na tuto sběrnici, protože se to po těch desetiletích už trochu sjednotilo. Nebo že přece tady jsou o tom udržované stránky. Nebo něco takového a já si prostš taky udělám redukci k rozšířenému standardu a pomalu se dostanu i ke psaní nějakých uživatelských programů. Tak se zeptám lidí, co se tomu věnují už léta a vidí do toho. Třeba mě někam pošlou
A taky ano, ten RC2014 vypadá zajímavě a pomohl mi si ujasnit spoustu věcí. (Jen jsem to musel najít a přečíst tam dost stránek a odkazů a ...) ... a sice to není přesně to, co chci, ale dost mě to posunulo.
A ten seznam busů od
mhi mi taky ukázal spoustu věcí (a ukáže ještě víc, až toho přečtu trochu víc) a taky nastolil spoustu otázek (EuroCard Bus má naprosto podivně rozházené piny a netuším proč ...)
A taky jsem narazil na
https://digicoolthings.com/minimalist-e ... -bus-mecb/ kde je spousta věcí zajímavých a spousta matoucích
A taky jsem narazil na řadu dalších věcí a každá z nich vede nejmíň ke dvěma dalším.
A bude trvat ještě dlouho, než se z toho nějak vymotám. Ale když jsem předtím hledal, tak jsem se ptal asi jinak a nic z toho jsem nenašel. Teprve až jste mi poradili tady.
Asi stejně skončím u nějakého vlastního návrhu, ale už bude výrazně poučenější a nějak tam zabuduju řadu z toho, co se mi na ostatních busech nezamlouvá (teda, naopak to tam odstraním, ale budu vědět, co se snažím odstranit a proč a taky co se snažím převzít a proč). A půjdou tam dělat redukce na ostatní busy.
Na té sběrnici z OMEN kilo bylo vytaženo 7 linek IO[1..7] (IO.0 byla použita interně), které "vybíraly desku a určily jí místo v paměti" - takže přidání jednoho ovládného pinu na samostatné desce byl relativně jednoduchý - reagovat na jeden z těch signálů (třeba IO.5) a pak už jen si nějak vybrat jeden daší pin pro nahození a jiný pro shození (takže jedna 74HC00 jako 2 NAND a 1 RS by byla vlastně celá funkční deska). Zatímco rozebrat těch 6 bitů adresy, ze kterých je složený ten IO.5 je už složitější a pokud to má dělat každá deska znova a rozumně se podělit s ostatníma, tak je to zase náchylnější na nějakou tu chybu, která se španě hledá.
Čili ten "CS" byl myšlen jako zjednodušený výběr jedné z 8 preferovaných přídavných desek a přidělení jí rozsahu použitelných adres.