WhyCan Forum

本站无需注册,无需积分,无需回复可下载所有资料,如果真的喜欢小站,请您注册之后请至少回复一个帖子激活Id,谢谢支持! 站长QQ: 516333132 (挖坑网/填坑网) admin@whycan.cn

您尚未登录。

#1 2019-05-20 00:23:55

kekemuyu
会员
注册时间: 2018-12-13
累计积分: 129

go语言开发f1c100s之点灯

用文件方式操作gpio,写了两种操作文件的方法,但是shell命令方式有点问题,os直接操作文件方式如下:

package main

import (
	"fmt"
	"os"
	"os/exec"
	"time"
)

const filename = "/sys/class/gpio/gpio131/value"

//调用shell写文件方式
func cmdRun(v byte) {
	command := "echo " + fmt.Sprintf("%d", v) + " > " + filename
	fmt.Println(command)
	cmd := exec.Command("/bin/sh", command)
	err := cmd.Run()
	if err != nil {
		fmt.Println(err)
	}
}

//os直接写文件方式
func osRun(v byte) {
	file, err := os.OpenFile(filename, os.O_WRONLY, 0666)
	if err != nil {
		fmt.Println(err)
		return
	}
	defer file.Close()

	_, err = file.WriteString(fmt.Sprintf("%d", v))
	if err != nil {
		fmt.Println(err)
	}
}

func pinSet(v byte) {
	// cmdRun(v)     暂时有问题,待调试
	osRun(v)
}

func main() {
	for {
		pinSet(1)
		time.Sleep(time.Second)
		pinSet(0)
		time.Sleep(time.Second)
	}
}

led.png

最近编辑记录 kekemuyu (2019-05-20 00:27:19)

离线

#2 2019-05-20 08:18:52

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 7,389

Re: go语言开发f1c100s之点灯

emmmm, 不错, 感谢分享!

离线

#3 2019-05-20 21:10:59

dycbaba
会员
注册时间: 2019-03-27
累计积分: 34

Re: go语言开发f1c100s之点灯

这也就能点灯吧,稍微复杂一点APP,内存就爆了吧

离线

#4 2019-05-21 03:34:27

kekemuyu
会员
注册时间: 2018-12-13
累计积分: 129

Re: go语言开发f1c100s之点灯

dycbaba 说:

这也就能点灯吧,稍微复杂一点APP,内存就爆了吧

请移步至
https://whycan.cn/t_2474.html

离线

页脚