OldComp.cz

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


Právě je 28.03.2024, 21:14

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




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 10 ] 
Autor Zpráva
 Předmět příspěvku: I2C pro Z80 CPU
PříspěvekNapsal: 28.04.2020, 14:11 
Offline
Profík

Registrován: 21.10.2018, 08:27
Příspěvky: 559
Has thanked: 278 times
Been thanked: 139 times
Mě by se velmi líbila nějaké přívětivá implementace I2C masteru k Z80. Zkoušel jsem PCF8584, ale moc se mi s tím nedaří pohnout. Pak už připojit jakékoliv nejen arduino smetí je jen otázka práce s pamětí a registry.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Simple RTC Interface
PříspěvekNapsal: 28.04.2020, 14:32 
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 to se I2C nedá obsluhovat bitově přímo Z80 ?
U těhle periferií žádnou rychlost nepotřebuješ a lezeš tam jednou za čas.

_________________
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: Simple RTC Interface
PříspěvekNapsal: 29.04.2020, 09:23 
Offline
Profík

Registrován: 21.10.2018, 08:27
Příspěvky: 559
Has thanked: 278 times
Been thanked: 139 times
Bitově to určitě jde, dokonce existují i (nejen tyto) zdrojáky: https://github.com/VladimirBakum/Z80)
To není to co hledám, ideálně bych chtěl I2C kartu periferii ve stejném duchu jako Jiiruv RTC - malá destička, dekodér adresy, PCF, oddělovač a z boku konektor I2C sběrnice. Jakmile mi SW bude trochu fungovat a něco dělat, tak se do toho pustím.

Ještě také krásná publikace: http://www.blunk-electronic.de/train-z/ ... 80-CTC.pdf - I2C od strany 27.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Simple RTC Interface
PříspěvekNapsal: 29.04.2020, 13:02 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
zxcygnus píše:
V adresáři TRDOSu prostor není, není tam pro soubory ani byte navíc
Je - a to pocet sektorov obsadenych suborom. Toto sa da priamo urcit z celkovej dlzky a nie je nutne si to este osobitne pametat.

Btw. kto vymyslel pre spektracky filesystem taku uchylnost ze 8-znakove meno ?!?! :?


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Simple RTC Interface
PříspěvekNapsal: 29.04.2020, 13:22 
Offline
Profík

Registrován: 06.02.2019, 11:47
Příspěvky: 898
Has thanked: 51 times
Been thanked: 230 times
pwramp píše:
Bitově to určitě jde, dokonce existují i (nejen tyto) zdrojáky: https://github.com/VladimirBakum/Z80)
To není to co hledám, ideálně bych chtěl I2C kartu periferii ve stejném duchu jako Jiiruv RTC - malá destička, dekodér adresy, PCF, oddělovač a z boku konektor I2C sběrnice. Jakmile mi SW bude trochu fungovat a něco dělat, tak se do toho pustím.

ad HW: Stacia dva vystupne a jeden vstupny pin. Kedze musi byt open-collector, tak sa to da vyriesit bud cez dalsie IO (7407) alebo kombinaciou odporu a diody (obr.)

ad SW: Ja mam napisane 6 kratkych rutin (v pripade zaujmu nazdielam): I2C INIT, I2C_START, I2C_STOP, I2C_WRITE, I2C_READ_ACK, I2C_READ_NACK a s tym viem ovladat jednoducho akukolvek periferku, napr. pre PCF8591:
Kód:
        CALL    I2C_INIT        ; prepare lines
DA:     CALL    I2C_START       ; start cond.
        LD      C, DEV_ADDR     ; send device address
        CALL    I2C_WRITE       ; and device setting
        LD      C, %01000100    ; enable output, 4 single inputs, autoincrement
        CALL    I2C_WRITE
        LD      C, DA_VALUE     ; finally D/A value
        CALL    I2C_WRITE
        CALL    I2C_STOP        ; stop cond.
AD:     LD      IX, TEMP        ; input data pointer
        CALL    I2C_START       ; start cond.
        LD      C, DEV_ADDR+1   ; send device address + read bit
        CALL    I2C_WRITE   
        CALL    I2C_RDACK       ; and four readings
        LD      (IX+0), C
        CALL    I2C_RDACK
        LD      (IX+1), C
        CALL    I2C_RDACK
        LD      (IX+2), C
        CALL    I2C_RDNACK      ; say no more readings
        LD      (IX+3), C
        CALL    I2C_STOP        ; stop cond.


Přílohy:
I2C.png
I2C.png [ 1.01 KiB | Zobrazeno 3987 krát ]
Nahoru
 Profil  
 
 Předmět příspěvku: Re: Simple RTC Interface
PříspěvekNapsal: 29.04.2020, 16:48 
Offline
Profík

Registrován: 21.10.2018, 08:27
Příspěvky: 559
Has thanked: 278 times
Been thanked: 139 times
Už mám delší dobu postavený I2C modul pro RC2014, ve stejném duchu bych ho stavěl i pro ZX. Už jsem se k tomu delší dobu nedostal, skončil jsem někde u inicializace PCF8584. Adresy portů 155 a 187, snad to s něčím známým na ZX nebude kolidovat.

Obrázek

PS: Ve schématu dekodéru je chyba, jsou to jen takové bastlící poznámky ...


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Simple RTC Interface
PříspěvekNapsal: 29.04.2020, 17:37 
Offline
Profík

Registrován: 21.10.2018, 08:27
Příspěvky: 559
Has thanked: 278 times
Been thanked: 139 times
Re: Martin1: o rutinky zájem mám, prosím pošli :-)


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Simple RTC Interface
PříspěvekNapsal: 29.04.2020, 17:44 
Offline
Pan Generální

Registrován: 01.12.2017, 21:01
Příspěvky: 2062
Bydliště: BA-Petržalka :(
Has thanked: 18 times
Been thanked: 323 times
V tej poslednej schéme, tam by tie diódy možno ani nemuseli byť. Iba rezistor 4k7 by ako pull-down mal stačiť, teda pokiaľ sa nepripojí veľa zariadení súčasne.

_________________
Oznamy o novom príspevku mi na mail chodia iba sporadicky, takže keď sa nehlásim v diskusii, tak je to tým. V 80% nepríde mail vôbec.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Simple RTC Interface
PříspěvekNapsal: 30.04.2020, 09:22 
Offline
Profík

Registrován: 06.02.2019, 11:47
Příspěvky: 898
Has thanked: 51 times
Been thanked: 230 times
PotPalo píše:
V tej poslednej schéme, tam by tie diódy možno ani nemuseli byť. Iba rezistor 4k7 by ako pull-down mal stačiť, teda pokiaľ sa nepripojí veľa zariadení súčasne.

Nemuseli, ale v každom prípade by som ich tam dal. Aspoň to bude viac vyhovovať špecifikácii i2c.
M.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Simple RTC Interface
PříspěvekNapsal: 30.04.2020, 10:04 
Offline
Profík

Registrován: 06.02.2019, 11:47
Příspěvky: 898
Has thanked: 51 times
Been thanked: 230 times
pwramp píše:
Re: Martin1: o rutinky zájem mám, prosím pošli :-)

Prikladám bitbanging I2C rutinu zo ZBerry. Nakoľko je adresácia portov 16bitová, bude to trochu ťažšie čitateľné, treba sa riadiť komentármi.
Vzhľadom na takt 10MHz sú tam aj nejaké "wait" inštrukcie, aby bolo časovanie I2C zbernice max. 100kHz
M1.


Přílohy:
zb_i2c.zip [912 bajtů]
233 krát
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ů: 10 ] 

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