OldComp.cz

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


Právě je 20.04.2024, 00:52

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




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 23 ]  Přejít na stránku Předchozí  1, 2
Autor Zpráva
 Předmět příspěvku: Re: RS232 a Centronics
PříspěvekNapsal: 26.12.2020, 13:38 
Offline
Radil
Uživatelský avatar

Registrován: 23.05.2013, 20:30
Příspěvky: 322
Bydliště: Východní Čechy
Has thanked: 2 times
Been thanked: 48 times
tcat píše:
Aha díky.
Řekněme ale pro zapojení s MAX232, na straně C64,
Kód:
... viz výše
200 OPEN LF,GA,SA, CHR$(BR+DB+SB) + CHR$(HS+UA+PA)
210 LET n%=0
220 DIM block$(1024)
...
500 INPUT#LF,n%,block$


Nějak takhle přijmout, číslo datového bloku, a vlastní blok, šlo by?
No a v nějakém cyklu pak přijmout celý soubor.

Na straně PC,
Kód:
... viz výše
$ cp data_file /dev/ttyS1


`data_file' pak bude mít nějakou pevnou strukturu, zatím přesně nevím jakou,
0, byte0, ..., byte1023
1, ...
2, ...
-1, [konec]


Pokud se použije příkaz třeba Load "soubor", 2 ,tak je možné přes RS232 rutiny přijímat/vysílat soubory z/do PC,ale pouze rychlostí 300baud a na straně pc ten driver musí emulovat to co po něm c64 chce.
Jako první bych to řešil přes RS232 monitor na straně PC a sledoval co C64 posílá při každém povelu.Schéma komunikace to musí být beztak client (c64) a server (pc).
Při listování directory přes Load"$",2 , driver musí emulovat příkaz directory včetně přepočtu byte na block,aby se to chovalo korektně,protože listing je v basic ram a jednotlivé bloky jsou čísla řádků.Při loadování programu, musí mít soubor 2 byte (lo/hi) start adresu na začátku,aby na straně C64 se vědělo do jaké části paměti se má uložit a to pouze od $0800-$CFFF tj o max velikosti 51200 bajtů (limitováno Kernal rutinou,protože nepřepíná $01 automaticky).

_________________
JMP $FCE2

C64, C128DCR, IDE64, SuperCPU64, 1541 Ultimate-II, MMC Replay, FC3, REU 2MB, Geroram512, NeoRAM 2MB, RR-Net, SilverSurfer, Wiznet64 , 1541-II,1571,1581,Oceanic


Nahoru
 Profil  
 
 Předmět příspěvku: Re: RS232 a Centronics
PříspěvekNapsal: 26.12.2020, 16:49 
Offline
Kecálek
Uživatelský avatar

Registrován: 11.10.2020, 21:29
Příspěvky: 93
Has thanked: 0 time
Been thanked: 10 times
Aha díky, vyzkouším, zatím čekám až dorazí součástky.
Pořád ale nechápu to omezení na 300 Bd, v tý český knížce se píše, že lze nastavit až na 19200 Bd.
Baud je ve spodních čtyřech bitech nastavovacího registru.
Tom

_________________
TK


Nahoru
 Profil  
 
 Předmět příspěvku: Re: RS232 a Centronics
PříspěvekNapsal: 26.12.2020, 21:36 
Offline
Radil
Uživatelský avatar

Registrován: 23.05.2013, 20:30
Příspěvky: 322
Bydliště: Východní Čechy
Has thanked: 2 times
Been thanked: 48 times
tcat píše:
Aha díky, vyzkouším, zatím čekám až dorazí součástky.
Pořád ale nechápu to omezení na 300 Bd, v tý český knížce se píše, že lze nastavit až na 19200 Bd.
Baud je ve spodních čtyřech bitech nastavovacího registru.
Tom


Omezení je dáno rutinama samotnýma (nejsou napsány zrovna moc efektnivně) a taky,že se vše řeší softwarově.Tuhle knihu mám též, autor si jednoduše doplnil zbývající kombinace,ale v reálu to asi nikdy nezkoušel, holt papír snese vše.Přes hardwarový UART jako SwiftLink nebo SilverSurfer je možné dosáhnout daleko vyšších rychlostí (80Kb/s teoreticky) na C64 při 1Mhz.Se SilverSurferem mám osobně vyzkoušeno 57600Kbps a to funguje spolehlivě.

_________________
JMP $FCE2

C64, C128DCR, IDE64, SuperCPU64, 1541 Ultimate-II, MMC Replay, FC3, REU 2MB, Geroram512, NeoRAM 2MB, RR-Net, SilverSurfer, Wiznet64 , 1541-II,1571,1581,Oceanic


Nahoru
 Profil  
 
 Předmět příspěvku: Re: RS232 a Centronics
PříspěvekNapsal: 26.12.2020, 22:57 
Offline
Pan Generální

Registrován: 19.07.2013, 15:54
Příspěvky: 2728
Has thanked: 146 times
Been thanked: 422 times
[quote="Comos"Se SilverSurferem mám osobně vyzkoušeno 57600Kbps a to funguje spolehlivě.[/quote]
To je hodne rychle!


Nahoru
 Profil  
 
 Předmět příspěvku: Re: RS232 a Centronics
PříspěvekNapsal: 15.01.2021, 21:42 
Offline
Kecálek
Uživatelský avatar

Registrován: 11.10.2020, 21:29
Příspěvky: 93
Has thanked: 0 time
Been thanked: 10 times
Dorazil konektor na hranu pro user port, takovej modrej plast, Čína.

Dvě samostatný zapojení pro RS232 a Centronics [co jsem našel na netu 1 a 2] se snažím dát na jednu desku,
mělo by řešit seriovku a tiskárnu.
[1] https://www.c64-wiki.com/wiki/RS-232
[2] https://ist.uwaterloo.ca/~schepers/MJK/ ... cable.html

Zatím nedokážu úplně domyslet jak a jestli to bude vůbec fungovat takhle dohromady.
Je tam několik signálů který se tváří buď jako vstupy nebo výstupy, podle konfigurace na user portu, nevím zda
nějak neoddělit diodami.

`KiCad' design tool, hlásí přímo chybu na lince `FLAG2'.

Kód:
ErrType(5): Conflict problem between pins. Severity: error
    @(198.12 mm, 71.12 mm): Pin 6 (Open collector) of component U3 is connected to
    @(36.83 mm, 111.76 mm): pin 9 (Output) of component U1 (net 55).

 ** ERC messages: 3  Errors 1  Warnings 2


Moje dovednosti končí někde u jednoduchých TTL obvodů do patice DIL, ale je to hlavně zábava,
nejsem žádnej velkej elektronik. Pistolová páječka, lakované desky [CuPrexit?] bez prokovů si nechávám raději vyrobit.

Budu vděčný za rady tady od zkušenějších.

Díky


Přílohy:
port.png
port.png [ 74.36 KiB | Zobrazeno 3043 krát ]

_________________
TK
Nahoru
 Profil  
 
 Předmět příspěvku: Re: RS232 a Centronics
PříspěvekNapsal: 16.01.2021, 17:41 
Offline
Kecálek
Uživatelský avatar

Registrován: 11.10.2020, 21:29
Příspěvky: 93
Has thanked: 0 time
Been thanked: 10 times
Revize 1.1
- přidal jsem diodu D3
- opravil zapojení blok. kond. C5
- napájení PWR_FLAG
- C6 330nF

`KiCad' nehlásí chyby ani varování.
Snad takto lepší.


Přílohy:
port2.png
port2.png [ 75.24 KiB | Zobrazeno 3019 krát ]

_________________
TK
Nahoru
 Profil  
 
 Předmět příspěvku: Re: RS232 a Centronics
PříspěvekNapsal: 18.01.2021, 18:22 
Offline
Kecálek
Uživatelský avatar

Registrován: 11.10.2020, 21:29
Příspěvky: 93
Has thanked: 0 time
Been thanked: 10 times
Tak mám další úpravu.
revize 1.2
- SW1 přepínač [ RS232/Centronics ]
- /ACK pull-up s využitím R2
- D4 dioda na CTS lince

Přepínač prostě odpojí obvod MAX232 aby neovlivňoval Centronics při práci s tiskárnou, protože
jsou tam využity stejné linky.
Příloha:
port3.png
port3.png [ 78.35 KiB | Zobrazeno 2977 krát ]

Lepší řešení, jak navrhuje někdo na Lemon fóru, je aktivovat buď seriový nebo paralelní budič, podle orientace
signálů na CIA, napěťovým děličem na PB3 [4,7-5V], pokud nastaven jako vstupní linka. Ale toto zatím nedokážu zapojit, MAX232 nemá CS pin, proto ten přepínač.
Příloha:
Hi-Z-Detect-RS232-Centronics-Sw-itcheroo.png
Hi-Z-Detect-RS232-Centronics-Sw-itcheroo.png [ 38.29 KiB | Zobrazeno 2977 krát ]

_________________
TK


Nahoru
 Profil  
 
 Předmět příspěvku: Re: RS232 a Centronics
PříspěvekNapsal: 19.01.2021, 10:39 
Offline
Radil
Uživatelský avatar

Registrován: 23.05.2013, 20:30
Příspěvky: 322
Bydliště: Východní Čechy
Has thanked: 2 times
Been thanked: 48 times
Co se týče orientace signálů na User Portu, tak /FLAG je vždy vstup a /PC je výstup.Podle nich se řídí handshaking na Portu B.
Podrobnější info lze dohledat v CIA datasheetu.

_________________
JMP $FCE2

C64, C128DCR, IDE64, SuperCPU64, 1541 Ultimate-II, MMC Replay, FC3, REU 2MB, Geroram512, NeoRAM 2MB, RR-Net, SilverSurfer, Wiznet64 , 1541-II,1571,1581,Oceanic


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ů: 23 ]  Přejít na stránku Předchozí  1, 2

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 14 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