Stránka 1 z 1

Lazarus - linux - jak na expandérem MCP23017

Napsal: 13 led 2015, 23:11
od Le_Ze
Zdravím.

Mam doma Raspberry s připojeným expandérem MCP23017 a zkouším ovládat jeho GPO piny.
Přes terminal jsem to dal.
Přes sh skript take.
Přes python to také jde.

Rad bych ještě vyzkoušel Lazarus.
Neví někdo jak na to?

Napsal: 15 led 2015, 17:59
od hakamusai
Stejným způsobem jak v těch předešlých to nejde ?

Napsal: 15 led 2015, 18:35
od Le_Ze
hakamusai píše:Stejným způsobem jak v těch předešlých to nejde ?

:wink:
Tak tento dotaz jsem nepochopíl.

Napsal: 15 led 2015, 18:46
od hakamusai
Píšeš že přes python to jde. Z toho by mělo jít vyčíst jak je to řešený.nejde to použít i v Lazarusu ?

Napsal: 15 led 2015, 20:42
od Le_Ze
Ono se to da ovladat přimo přes terminal
sudo i2cset -y 1 0x20 0x00 0x00

To same v sh
sudo i2cset -y 1 0x20 0x00 0x00

V PHP
system ('sudo i2cset -y -m 0x01 1 0x20 0x12 0x00');
Tim padem to mužeš ovladat přes net a mobil s androidev přes widgets

A na python je na to knihovna WiringPi2.
http://raspi.tv/2013/how-to-use-wiringpi2-for-python-with-pull-ups-or-pull-downs-and-pwm

Pro C a Lazarus je take knihovna.

http://wiringpi.com/download-and-install/
https://projects.drogon.net/raspberry-p ... c-library/

http://raspi.eanet.cz/?p=130
http://www.kdosiodjinud.cz/raspberry-pi ... ml?addpost

V delphi umim.
Lazarus take dam, ale pod Windows.
Chtělo by to tučňáka :wink:

Napsal: 16 led 2015, 12:16
od Jeejda_teda_puvodne

Napsal: 16 led 2015, 20:46
od Le_Ze
Jeejda píše:Já tomu teda moc nerozumím, ale Lazarus je i pro tučňáka a Freepascal, kterým kompiluje, taky... když to rozjedeš pod Win, tak pod Lin je nějakej problém a nefunguje to, nebo co vlastně přesně řešíme? Co máš za distribuci?


No Delphi jse měl ve škole a pak ještě par roku mně to drželo.
To co udělám v delphí, tak zvládnu i přes lazarus.

Ale s lazarusem pod linuxem?
Třeba nainstalovat knihovny pro ovladaní a to je problém.
Záležitost linuxu.
Také ovadaní těch GPO je zasah do registru linux a u toho je vždy problém s pravy.

https://projects.drogon.net/raspberry-p ... c-library/

sudo apt-get install libi2c-dev
gpio load i2c

pi@raspberrypi ~ $ gpio load i2c
gpio: Warning: File not present: /dev/i2c-0

Když se kouknu do dev, ten soubor tam fyzický je a prava ma na 777

Ty jsí tučnak :wink:

Napsal: 17 led 2015, 09:54
od Jeejda_teda_puvodne

Napsal: 17 led 2015, 12:37
od Le_Ze

Kód: Vybrat vše

root@raspberrypi:/home/pi# pi@raspberrypi:~/$ ls -l /dev/i2c*
bash: pi@raspberrypi:~/$: No such file or directory
root@raspberrypi:/home/pi#

Já uvažují zkusíte toto
http://www.freepascal.org/docs-html/rtl/unix/shell.html

Kód: Vybrat vše

begin
  Writeln ('Output of ls -l *.pp');
  S:=Shell ('ls -l *.pp');
  Writeln (S);
end.

ls -l je systémový příkaz linuxu.

Zapnout 1 GPO se da přes terminal takto
sudo i2cset -y 1 0x20 0x00 0x00

Takže Shell ('sudo i2cset -y 1 0x20 0x00 0x00*.pp');

Aktuální hodnota celeho portu GPB se čte takto:
sudo i2cget -y 0 0x20 0x13

Kód: Vybrat vše

 S:=Shell ('sudo i2cget -y 0 0x20 0x13 *.pp');
 Writeln (S);


Nejsem tučnak, takže jen takový odhad.
A njsem doma, tak vyzkouším až v pondělí.

Napsal: 22 led 2015, 21:50
od Le_Ze
Tak už jsem to dal :D