挂接在/sys上的对LED灯控制的驱动

本文介绍如何在/Linux/power下挂接一个目录,用于控制开发板的LED灯。通过驱动源码编写,加载内核编译生成zImage,烧写后可通过执行"echo 1 >/sys/power/leds"使灯全亮,执行"echo 0 >/sys/power/leds"使灯全灭。
摘要由CSDN通过智能技术生成

在/sys/power下挂接一个目录进行开发板led灯的控制

1.驱动源码

#include <linux/kobject.h>
#include <linux/sysfs.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/platform_device.h>
#include <linux/device.h>
#include <linux/module.h>
#include <asm/uaccess.h>
#include <linux/gpio.h>
#include <mach/regs-gpio.h>
MODULE_LICENSE("Dual BSD/GPL");
static unsigned long led_table [] = 
{
		S3C2410_GPB(5),
		S3C2410_GPB(6),
		S3C2410_GPB(7),
		S3C2410_GPB(8),
};
static unsigned int led_cfg_table[] =
{ 
	    S3C2410_GPIO_OUTPUT, 
		S3C2410_GPIO_OUTPUT,
		S3C2410_GPIO_OUTPUT,
		S3C2410_GPIO_OUTPUT,
};
static ssize_t leds_store(struct kobject *kobj, struct kobj_attribute *attr, const char *buf, size_t len)
{
		int status = 0,i;
		sscanf(buf, "%d", &status);
		for(i=0;i<4;i++)
		{
			s3c2410_gpio_setpin(led_table[i],!status);	
		}
		//Todo.
		pr
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值