Welcome, Guest. Please login or register.


Author Topic: HID kezelés Arduino -val (Read 74783 times)

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: HW készítés Arduino-val
« Reply #105 on: 2014.October.02. 21:24:46 »
Mindenesetre én meglepődtem ...

Valahogy úgy éreztem (a "gondolni" szó már túl erős), hogy ha az ember 4 MHz -es z80 rendszerhez akar valami hardvert csinálni, mely hardver ráadásul mindösszesen annyi,
hogy figyel pár vezetéket, és a vezetékek állapotától függően rak értékeket pár másik vezetékre, és mellesleg még feldolgoz valami ps/2 vagy usb eszköztől kapot néhány bájtos memóriabuffereket, függvényhívásokat,
akkor egy 16 MHz -es cucc olyan érték (hisz csak 4MHz a proci, amihez kapcsolódni akarok), aminél a sebesség mint olyan fel sem merülhet mint paraméter.

Pedig valójában nagyon is felmerül. A 160 vagy az 1600 MHz lenne az az érték, ahol ez a dolog fel sem merülne ...

Valószínűleg amiket én csinálni akarok, azok is olyan feladatok, amiket egy olyan "programozható logikai áramkör" kütyüvel sokkal jobban meg lehetne csinálni,
mint egy ilyen mikroprocesszoros rendszerrel.

Nem látom igazából az elvi különbséget, sosem tanultam digitális hálózatokat, vagy ezek elvi okosságait, csak valahogy úgy érzem, hogy mivel a feladatok nem annyira "algoritmikusak",
simán, vagy könnyen le lehetne írni őket olyan alkatrésszel, ahol "nincs loop", és a "jel terjedése" igazából nem függ valami proci ciklusidejétől, hanem egyszrűen a logikai kapuk késleltetéseitől ... de most el ne kezdjétek, hogy a proci is csak logikai kapuk ... :)

Nyilván sokkal egyszerűbb amit meg akarok csinálni, minthogy egyáltalán egy proci kéne hozzá. Pld. egy joy illesztésnél ... Persze egy olyan feladatnál, mint egy PS/2 vagy USB eszköztől kapott memóriabuffer feldolgozása mi a helyzet azt még nem látom ... 100% -ban azt sem látom, hogy lehetne -e ilyen feladathoz tervezni logikai áramkört ... vagy mire megtervezném ezt a logikai áramkört, addigra nem "procinak" hívnák -e ... :)

Szóval valószínűleg logikai hálózatok tervezésében is sokkal jártasabbnak kéne legyek ahhoz, hogy programozható logikai áramkörrel próbáljam megoldani a feladatot ...

Mikroprocesszoros rendszerekhez, szoftverhez meg azért nem vagyok annyira hülye.

Csak valahogy ezekhez az alacsonyszintű dolgokhoz, amiknek kb. a kapuk késleltetésével (nanoszekundumuknál is kisebb lehet) kéne megtörténjen, ott valahogy gyenge a mikroprocesszoros rendszer ciklusideje.

Értem hogy ki lehet számolni hogy z80 ez valam 11 miroszek vagy mennyi, de mi lenne ha én ezt a joy illesztőt egy 100MHz -es géphez akarnám passzintani ? Akkor meg 1000 MHz mikrokontrolert kéne alkalmazzak, és azzal kéne olyan megfontolásokkal megoldjam a dolgot mint jelenleg a 4/16MHz esetben ...

Szóval mikor a ps/2, usb eszközök adatainak értelmezésével kell molyolni, oda valószínűleg a procis rendszer okés, de mikor ilyen jelek figyeléséről, meg kiírásáról van szó, akkor meg az oda szükséges gyors (kvázi 0 idejű) működést sima logikai kapukkal kéne megcsinálni ... vagy nemtom ...

Most találkozok ilyen problémákkal először ...
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: HW készítés Arduino-val
« Reply #106 on: 2014.October.02. 21:30:27 »
Quote
Mindenesetre anno Tigriannak sikerült egy ilyen cuccal a PS/2 illesztés.

Igen, azt én is valószínüsítem, hogy a feladat (azzal a lappal amit én választottam most) nem lehetetlen ...

(Valószínű hogy a linkelt atmel még sokkal gyengébb is, majd ellenőrzöm. (Nem dokumentálta egyébként az ember, részletesebben ? Kíváncsi lennék mit hogy csinált.))

Szóval inkább csak azon csodálkozok, hogy egy 16 MHz es mikroprocesszoros rendszernél még egyáltalán bármilyen formában figyelembe kell venni az időt, egy billentyű illesztéshez ... egy 4 MHz -es renszrnél, ami valszeg 10X lassabb mint amivel a billentyűt illeszteni szándékozok ...
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: HW készítés Arduino-val
« Reply #107 on: 2014.October.02. 21:37:00 »
Az is külön érdekes kérdés, hogy (ellenőriztem, lehet 4 független interrupt forrásom is, de kettő mindenképp),

szóval hogy figyelnem kell majd pld. a PS/2 eszközöknél valami órajelre, melyet az eszköz ad, és lefutó élénél kell majd adatbiteket olvassak ... ezt nyilván interrupttal tudom megcsinálni (hacsak nem annyira gyors a loop -om, hogy simán loop -ban olvasgatva sem hagyok ki egyetlen lefutó élt sem, de én megszakkal akarom),

csakhogy kell egy másik megszak is, ami meg az EP -t figyeli, és gyorsan kiszolgálja, ha kell ...

namost mi van ha egyikkel törődök még, mikor már jön a másik ... persze el lehet itt kezdeni, hogy nézzem meg milyen hosszú egyik, meg másik, és valahogy trükközzem össze a megszak prioritásokkal, meg ilyenekkel, hogy mindkettő ki legyen szolgálva idejében ... de amit én magyarázni próbálok, az az, hogy én tökre azt hittem, hogy a 10X -es sebességnél már ilyen megfontolásokat, trükközéseket nem kell csinálni egy sima billentyű kezelésnél ... pedig dehogynem ...
Z80 System

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14739
  • Country: hu
    • http://enterprise.iko.hu/
Re: HW készítés Arduino-val
« Reply #108 on: 2014.October.02. 21:37:10 »
Quote from: Z80System
Most találkozok ilyen problémákkal először ...
Én nem :oops:
Amit én akarok ott is erősen kérdéses, hogy mi jön ki belőle... de ígérik annak a cuccnak új generációját, ami már 16 mag, 200Mhz, 64 IO lesz :-) bár itt majd kérdéses lesz, mennyire lesz otthonilag kezelhető kivitel. Bár valami paneles verzió biztos lesz előbb utóbb.

Az esetedben az eredetileg akart egér illesztés az egyszerübb dolog, hiszen ott te írhatod a MOUSE.XR-be a vevő részt, így összehangolható kényelmesen a dolog.

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: HW készítés Arduino-val
« Reply #109 on: 2014.October.02. 21:39:40 »
Quote
em lenne szinte semmi idozites gond, ha szerezne az ember egy kis kapacitasa (cca 10*8 bites is eleg lenne) dual port SRAM-ot, vagy vmi hasonlot. 
Igen de az én projektem olyan, hogy nem akarok építeni. Maxi szerelés annyi lehet, hogy vezetékeket forrasztok össze,
és pld egy külső joy illesztőnél nem lehet rászerelni a meglévő alkatrészekre, meg ilyenek ... Szóval egy darabba összeszerelhető dologban gondolkodok ... mint egy ilyen mikrokontroler kártya ... mindegy végülis, de PCB ne kelljen ... akkor se ha kintre lesz az áramkör ...
Z80 System

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14739
  • Country: hu
    • http://enterprise.iko.hu/
Re: HW készítés Arduino-val
« Reply #110 on: 2014.October.02. 21:40:38 »
Quote from: Z80System
(Valószínű hogy a linkelt atmel még sokkal gyengébb is, majd ellenőrzöm. (Nem dokumentálta egyébként az ember, részletesebben ? Kíváncsi lennék mit hogy csinált.))
Itt a topikja a projektnek. Van is ott valami forráskód betéve.

Amit belsőleg tudott órajelet a vezérlő az 4MHz-es géphez volt elég, turbós (ami abban az időben 6/7.12Mhz volt) géphez egy külső 18.43Mhz-es kristály lett rátéve.

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: HW készítés Arduino-val
« Reply #111 on: 2014.October.02. 21:52:23 »
Quote from: Zozosoft
Mindenesetre anno Tigriannak sikerült egy ilyen cuccal a PS/2 illesztés.

ja, emlekszem. Nem lehetetlen, csak "kenyelmetlen" :) amugy ezzel mi lett? Emlekeim szerint "atirodott" a flash neha, az meg gaz volt :( Azota ebben nincs elorelepes? max ki kene venni az upgrade lehetoseget, vagy egy jumperrel engedni, vagy tudomisen :) Vagy nem az okozta a gondot, hogy ez a "firmware" frissites sw-bol jellegu cucc kapcsan bejott ez a bug is?

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14739
  • Country: hu
    • http://enterprise.iko.hu/
Re: HW készítés Arduino-val
« Reply #112 on: 2014.October.02. 21:56:46 »
Elhalt a dolog, leginkább azért mert Tigriannak már nem volt ideje EP-zni :-(

Nem tudom hol ment bele a bug, de az elvileg nem módosuló boot loader is meg tudott sérülni, és akkor már kiszedéssel, újraprogramozással lehet feléleszteni. Nekem volt egy sima és és egy turbós is, de mindkettő megzakkant.

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: HW készítés Arduino-val
« Reply #113 on: 2014.October.02. 22:02:26 »
Quote
Nem tudom hol ment bele a bug, de az elvileg nem módosuló boot loader is meg tudott sérülni,
Na látjátok ilyen szempontból is sokkal jobb egy kész, kipróbált agyontesztelt mikrokontrolleres kártya:
nekem ilyen gondom nem lesz, mivel smd -sek, kártyában is elég kicsik tudnak lenni,
és a feltöltés, programozás, minden olyan dolog, ami NAGYOBB melót igényelne, mint a tényleges feladat (dógok illesztése),
már rég kész, programok, support adott.

Én egy kész kis elektronikát használok, még akkor is ha az csak egy AVR kivezető lap szinte, de az a "szinte" okozza azt a kompaktságot, amitől érdemes amatőr szinten nekifutni ...
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: HW készítés Arduino-val
« Reply #114 on: 2014.October.02. 22:24:48 »
Annak nagyon örülök, hogy Zozó vékonydrótos tippjével, meg a tápcsatlakozónál, gép alján lévő pont jó irányú "hűtőrácsfelfedezésemmel" hátul nagyon kényelmesen kivezethető a bill. összes vezetéke, meg még mellé amik kellenek, tápok, reszet, jelzőbit, akármi ... oly módon, hogy az a végső, összerakott gépnél sem ront az esztétikán (lévén alul/hátul), ráadásul roncsolni sem kell semmit ...

Elvben beszerzek még pár drótot, meg csatlakozót, (meg egy ps/2 bill. -t persze ... :)) és nagyon remélem hogy ezzel az egy mikrokontrollerres lappal (ami akkora kb. mit a z80 a gépben) kívülről megoldható az USB -s ezsközökön kívülről minden, amit csak csatolni akartam az EP -hez ...

Már az is tök jó poén lesz, hogy vezetékesből azt rakok rá, amit csak akarok, legyen az sokgombos joy, sega megadrive kontroller, vagy ps/2 -es mouse/keyboard.

Persze ezzel a mikrokontrollerrel amim van a GPIO -k száma miatt valószínűleg nem minden egyszerre lesz rádugható, hanem egyszerre mindíg csak egy eszközt tud majd kezelni előbbiek közül, de később egy többlábassal, vagy több ilyennel akárhány eszköz lehet egyszerre, pld. mind a négy ... :)

Aztán következő lépés lesz az USB, de közben arra is rájöttem, hogy igazából usb -ből is vannak joy -ok és játékvezérlők is, azokat sem szabad kihagyni ... és mindezekből van már vezetéknélküli is ugye ...

Szóval azzal hogy a billentyű (vagy újfajta egér) drótok hátra lesznek vezetve, nem különül el többé a dolog külső elektronikával csatolt,
és belülre szerelhető elektronikával csatolt dologra,
hanem szépen összeforrt a két projekt: vannak a gép hátán csatlakozók, amiken ott van MINDENféle input device,
és kell csinálni (akár egyetlen!) hardvert ami azokra illeszteni tud ... bármit! :)
Z80 System

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: HW készítés Arduino-val
« Reply #115 on: 2014.October.02. 22:31:01 »
Quote from: Z80System
Na látjátok ilyen szempontból is sokkal jobb egy kész, kipróbált agyontesztelt mikrokontrolleres kártya

Ezzel nem ertek egyet (egy AVR szerinted nem tesztelt, de a ra epulo kartya az tuti? vagy nem ertem), nem normalis, hogy egy MCU flash tartalma csak ugy serul. Mivel az Arduinoban is pont AVR van, ha hozzakotod, az is ugyanugy serulhet, ha az talalja ki az ember, mi a fene lehetett itt a hatterben. Lehet, EP-tol kap tusket, vagy tudomisen. De akkor az masra is veszelyes lehet. Igen, az Arduinora is. Bar pl nem tudom, hogy a fenti projectben pontosan hogy volt felprogramozva az az MCU, pl a brown-out volt-e hasznalva stb, de talan anno irtam is a tasztillesztos szalban. Oh, regen volt, megkeresem ... Szoval ki tudja. Nehez dolgok ezek :(
« Last Edit: 2014.October.02. 23:06:23 by lgb »

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: HW készítés Arduino-val
« Reply #116 on: 2014.October.02. 22:38:30 »
Quote
Ezzel nem ertek egyet 
Hát nekem az volt a feltételezésem, hogy nyilván nem a cucc volt rossz, hanem a programozásba, inicializálásban, akármiben rontott el valamit a tigrian nevű illető ...

Persze ez csak prekoncepció, nincs bizonyítva.

De ha igaz, akkor onnantól áll amit mondtam: az a hiba olyan kódban van, amit nekem már nem kell elkövetnem, mert nekem kompakt platformként adták oda a cuccot,
és nem kell az aljáról programoznom.

Olyan ez mint a védett mód a 386 -nál ... köllött a 32 bit, meg a lineáris memória, de én akkor is csak alkalmazást programozni akartam volna 32 biten,
na de ahhoz hogy az első pixelt kirakjam, ahhoz előtte hetekig nyammogni kellett dos alól a protected mód bekapcsolásához ... hogy minden szaros descriptort, meg interrupt vektort, meg francemlékszikmármiket az ember korrektül felállítson ... hogy végre beírhassa az egy sort, ami kirakja a pixelt ...

Nyilván (nem nyilván, értem) ott is valami nem jól lett megcsinálva, és emiatt mehet tönkre a progi a cuccban ...
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: HW készítés Arduino-val
« Reply #117 on: 2014.October.02. 22:39:59 »
Quote
Már az is tök jó poén lesz, hogy vezetékesből azt rakok rá, amit csak akarok, legyen az sokgombos joy, sega megadrive kontroller, vagy ps/2 -es mouse/keyboard.
És menni fog az autofire is ! Végre !!! :)

Olyan autofire -os joy -aim meg kontrollereim vannak, hogy húsz potival lehet állítani rajtuk az autofire frekvenciáit, jellemzőit ...
Z80 System

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: HW készítés Arduino-val
« Reply #118 on: 2014.October.02. 23:05:24 »
Quote from: Z80System
Hát nekem az volt a feltételezésem, hogy nyilván nem a cucc volt rossz, hanem a programozásba, inicializálásban, akármiben rontott el valamit a tigrian nevű illető ...

Vegulis, ez a feltetelezes sem biztos, hogy rossz. Meg 2012-ben a tasztillesztos topic-ban (most olvastam vissza, mar el is felejtettem) irtam pont erre, hogy jo lenne tudni, hogy pl a BOD engedelyezve volt-e, tobbek kozott hasonlo dolgok kivedesre is hivatott lehet, amennyire en tudom. Amugy ott volt az AVR forras is, de az mar nem letoltheto. :( Most meg mar nem talalom, az vmi regebbi elfekvo gepem hdd-jen lehet :( Mondjuk a FUSE bitek allasa akkor sem biztos, hogy benne volt, mert az nem a program resze, hanem az AVR programozasanal kell beallitani.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14739
  • Country: hu
    • http://enterprise.iko.hu/
Re: HW készítés Arduino-val
« Reply #119 on: 2014.October.02. 23:07:59 »
Quote from: lgb
Amugy ott volt az AVR forras is, de az mar nem letoltheto. :( Most meg mar nem talalom, az vmi regebbi elfekvo gepem hdd-jen lehet :(
Reméljük meg van, mert innen szerintem a nagy szerver összeomlásban tűnhetett el :-(