【开发日志1-3】java gpio

GPIO(英语:General-purpose input/output),通用型之输入输出的简称,功能类似8051的P0-P3,其接脚可以供使用者由程控自由使用,PIN脚依现实考量可作为通用输入(GPI)或通用输出(GPO)或通用输入与输出(GPIO),如当clk generator, chip select等。
既然一个引脚可以用于输入、输出或其他特殊功能,那么一定有寄存器用来选择这些功能。对于输入,一定可以通过读取某个寄存器来确定引脚电位的高低;对于输出,一定可以通过写入某个寄存器来让这个引脚输出高电位或者低电位;对于其他特殊功能,则有另外的寄存器来控制它们。

找了一圈还是用脚本来实现的;

io输出

java端
     String cmds[] = {"/bin/bash", "-c", "./iosc.sh "+ip+" "+端口};
  	 Runtime.getRuntime().exec(cmds);
脚本
#!/bin/sh
### BEGIN INIT INFO
# Provides:          autoJar.sh
# Required-start:    $local_fs $remote_fs $network $syslog
# Required-Stop:     $local_fs $remote_fs $network $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts the svnd.sh daemon
# Description:       starts svnd.sh using start-stop-daemon
### END INIT INFO
pz=$1
scz=$2
echo out > /sys/class/gpio/gpio${pz}/direction
echo ${scz} > /sys/class/gpio/gpio${pz}/value
exit

io输入

java端
             这个放在单独线程里面一直读取
String cmds[] = {"/bin/bash", "-c", "./iosr.sh "+端口};
Process exec = Runtime.getRuntime().exec(cmds);
脚本
#!/bin/sh
### BEGIN INIT INFO
# Provides:          autoJar.sh
# Required-start:    $local_fs $remote_fs $network $syslog
# Required-Stop:     $local_fs $remote_fs $network $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts the svnd.sh daemon
# Description:       starts svnd.sh using start-stop-daemon
### END INIT INFO
pz=$1
echo in > /sys/class/gpio/gpio${pz}/direction
cat /sys/class/gpio/gpio${pz}/value
exit

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值