- 2
- 0
- 约8.1千字
- 约 14页
- 2020-12-30 发布于浙江
- 举报
led驱动详解
__________________________________________________
__________________________________________________
__________________________________________________
__________________________________________________
__________________________________________________
__________________________________________________
#include linux/module.h
#include linux/init.h//头文件:module_init、module_exit等宏定义。
#include linux/fs.h////struct file_operations
#include asm/irq.h
#include mach/regs-gpio.h// S3C2410 GPIO寄存器定义
#include mach/hardware.h// s3c2410_gpio_setpin, s3c2410_gpio_cfgpin等
#include linux/device.h//class_create device_create(注意,有些2.6.27以前是的可能是class_device_create,如果出现implicate 错误时,看一下这个头问题里边是哪一个),udev,自动在/dev下创建设备节点
#include linux/cdev.h//字符设备节点注册,函数有cdev_init,cdev_add,cdev_del等早期的办法是register_chrdev,unregister_chrdev这种方法应避免使用。
#define DEVICE_NAME leds
#define LED_MAJOR 231
#define IOCTL_LED_ON 1#define IOCTL_LED_OFF 0
static unsigned long led_table [] ={S3C2410_GPB5, S3C2410_GPB6, S3C2410_GPB7, S3C2410_GPB8,}
static unsigned int led_cfg_table [] ={ S3C2410_GPB5_OUTP,S3C2410_GPB6_OUTP,S3C2410_GPB7_OUTP,
S3C2410_GPB8_OUTP,};
struct leds_type
{
struct cdev cdev;
};
struct leds_type *my_leds_dev;
static int EmbedSky_leds_open(struct inode *inode, struct file *file)
{
int i;
for (i = 0; i 4; i++)
{ // 设置GPIO引脚的功能:本驱动中LED所涉及的GPIO引脚设为输出功能 s3c2410_gpio_cfgpin(led_table[i], led_cfg_table[i]);
}
return 0;}
static int EmbedSky_leds_ioctl( struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg)
{
if (arg 4)
{
return -EINVAL;
}
switch(cmd)
{
case IOCTL_LED_ON:// 设置指定引脚的输出电平为0 s3c2410_gpio_setpin(led_table[arg], 0);
return 0;
case IOCTL_LED_OFF: // 设置指定引脚的输出电平为1 s3c2410_gpio_setpin(led_table[arg],1); return 0;
defa
您可能关注的文档
- ip地址与mac地址绑定电子教案.doc
- ip防护等级介绍复习课程.doc
- iq智商测试题讲解学习.doc
- isight集成catia和abaqus,nastran流程详解培训讲学.doc
- it+...+that主语从句讲课稿.doc
- itest词汇测试unit1复习过程.doc
- it’s time后后的从句用虚拟语气教学资料.doc
- it服务管理体系介绍教学文案.doc
- it职业素质训练考查试卷a说课材料.doc
- iuml和copiesml之间单位换算关系?教案资料.doc
- 2026届河南省郑州市高三上学期一模政治(解析版).docx
- 2026届河南省郑州市高三上学期第一次质量预测历史(原卷版).docx
- 2026届河北省名校联合体高三上学期一模政治(原卷版).docx
- 广东省茂名市信宜市2025-2026学年高二上学期11月期中考试政治(原卷版).docx
- 2026年高一上学期语文期末考试压轴卷含答案.docx
- 河北省部分示范性高中2025-2026学年高一12月考试语文试题含答案.docx
- 考研真题 首都师范大学历史学院776历史学基础综合历年考研真题汇编(含部分答案).pdf
- 考研真题 首都师范大学文学院445汉语国际教育基础[专业硕士]历年考研真题汇编(含部分答案).pdf
- 《护士条例》 辅导讲座.pptx
- 牙科医师质控的年度工作述职.pptx
最近下载
- 2023-2024学年江苏省南京市鼓楼区六年级上学期期末英语试卷(含答案).doc VIP
- 东北大学《数值分析》2017-2018期末试卷A卷.pdf VIP
- KA 27.5-2025 煤矿水害防治 第5部分:老空水害防治.docx VIP
- KA 27.1-2025 煤矿水害防治 第1部分:顶板水害防治.docx VIP
- 基于机器学习的入侵检测系统的设计.docx VIP
- 2025年度安全知识考试(安规考试试题)).docx VIP
- 20米预制T梁施工方案.doc VIP
- 地震救援木支撑技术培训.pptx
- 中外学前教育名著选读.pptx VIP
- 精品解析:2024-2025学年浙江省杭州市临安区人教版六年级上册期末测试数学试卷(原卷版).docx VIP
原创力文档

文档评论(0)