GPIO ohjauksia Win10

Torsti

Member
Osaisikohan kukaan antaa perusteita / suuntaviivoja kuinka lähteä liikkeelle GPIO ohjauksien kanssa?
Rautana on Mini-ITX emo (MSI MS-9892) jolle asennettuna Windows 10.
Tarkoituksena aluksi saada pelkistetty ja yksinkertainen sovellus jolla voidaan vain lukea inputteja ja jonkun päätelmän mukaan kirjoittaa 1 tai 0 outputeille.
Emolla on 16-bittinen GPIO (8 input ja 8 output) liityntä.

En ole Windows ympäristössä kirjoittanut koodia muuta kuin Arduinon kokeilusarjalla eli ohjeet voivat olla kuten aloittelijalle.

Eli kuinka aloittaa, mikä sovellus, ym?

Emon dokkareista löytyy koodiesimerkkiä:

Set N_GPO0 output “high” (IO portti on 0xA02)
val=Inportb (0xA02); //Read value from N_GPO0 port.
val=val | (1<<4); //Set N_GPO0 address (bit4) to1 (output“high”).
Outportb (0xA02,val); //Write backto N_GPO0 port.

Get N_GPI2 input value.
val=Inportb (0xA02); //Read value from N_GPI2 port.
val=val & (1<<2); //Read N_GPI2 address (bit2).
if(val) printf (“Input of N_GPI2 is High”);
else printf (“Input of N_GPI2 is Low”);
 

maanma

energiaonnellinen
Ensin pitää saada tolkku minkä kielen kanssa toimitettu rajapintakirjasto on yhteensopiva.
Minusta tuo näyttää C++ tyyliseltä, mutta C# tai Javaakin voisi olla.
 

pere

Member
"Rautana on Mini-ITX emo (MSI MS-9892) jolle asennettuna Windows 10"
Minulle aivan tuntematon.

Itse olen käyttänyt laiteohjelmontiin Raspberry:ä ja ohjelmointikielenä C
Raspberry on halpa ja siihen löytyy valmiita esimerkki ohjelmia ja ohjeita vaikka kuinka paljon.

The Raspberry Pi is a very cheap computer that runs Linux, but it also provides a set of GPIO (general purpose input/output) pins that allow you to control electronic components for physical computing and explore the Internet of Things (IoT).
 

Hotzone

New member
Miksi sitä Arduinoa ei voisi käyttää? IO ohjaaminen on sillä jotenkin kaikkein luonnollisinta.

Windows ja Linux estää suoran IO osoittamisen tehokkaasti. Rasbissa tätä varten on sitten erilaisia keinoja.
Windowsissa asiat dekadilla vaikeampaa jos ei ole jotain laiteohjainta mikähuolehtii käyttäjäkoodin ja IO välisestä kommunikoinnista. Linuxissa (Rasbi) homma menee myös näin.

Kun homma sujuu Arduinolla voisi ajatella vaikka ajtkoa NodeMCU:lla joka on ESP8266 pohjainen WiFi-prossu. Sillä tekee tulitikkuaskin kokosien web serverin lataamalla valmiin mallikoodin ja muuttamalla sen sitten miten haluaa. Tuossa prosussa myös on jonkin verran IO-pinnejä. Voit sitten ohjata vaikka kännykän web-selaimella.
Jollain vekottimella ne perusteet kannattaa opetella. Arduino on siihen ihan pätevä. Miksei Rasbikin mutta jos sattuu IOn kanssa käry käymään, on poltetun raudan arvossa suuri eri.
Arduinot on kiinasta tilaten muutamasta eurospa ylöspäin, samoin kuin nuo WiFI-prossut. NodeMcu ohjelmointikin menee Arduino IDE:llä yhtä vaivattomasti kuin perus Arduino prossukorrttien.
 

Tahma

New member
Ääni Nodelle.
Helppo koodata IDEllä ja jos kotosalla jotain seurailet tai ohjailet niin tuo on todella vaivaton opetella ja yhdistää kodin langattomaan verkkoon.
 

Hotzone

New member
Tässä on omaa värkkäilyä. Vasemmalla on Arduino Mega-klooni ja oikealla on NodeMCU joka istuu laajennuslevyssä. Tuo laajennuslevy on tuossa vain koska siinä on 12V->5DC hakkuri. NodeMCU vie lähettäessään vähän enemmän sähköä enkä halunnut kuormittaa Arduinon lineaari regulaattoria.
keskellä on sitten vähän sovittavaa elektroniikka ja tuon harmaan alumiinilevyn alla relekortti ja puolijohderelekortti.
Tuo NodeMCU toteuttaa simppelin web-sivun ja se myös tunkee ilmanvaihdon mittadataa 10min välein NASilla pyörivään tietokantaan.
Kuvassa ei näy ohjainpaneeli missä on oma Arduino Mega ohjaamassa näyttöä.
Tällä ei ole mitään tekemistä aurinkovoiman kanssa. mutta vastaavalla setupilla voisi jotain sellaistakin tehdä.
Arduino vaikuttaa paljon NodeMCUta ja linux (Raspi) luotettavammalta. Usean vuoden aikana ollut vani yksi tai kaksi jumia tämän edeltäjässä.
Tässä on moninkertainen rauta ja watchdog ynnä täysin analoginen nilkutusmoodi mihin mennään jos prossu kuolee tai softa sekoaa.
Jos tekee jotain todellista ohjausta näillä prossuilla niin varojärjestelmät on oltava moninkertaiset sekä turvallisuuden että luotetettavuuden vuoksi.

Möykkysähkön kanssa ei kannata huseerata jos ei tiedä mitä tekee. Tämä siis varoituksena ja vastuu vapautuksena koska kuvassa on möykkysähköön viittavaa kalustoakin kiskoon asennettuna.
Suosittelen käyttämään tehdastekoisia powereita, sulakkeita ja vikavirtasuojia varmuuden vuoksi ja tekemään kaikki möykkykytkennät teollisuus/ammattimaailman kalustuksella ja jos ei ole ennen tehnyt, jättämään tekemättä.

ohjain_s.jpg
 
Ylös