资源简介

1.搭建开发环境 2.下载编译openwrt 3.烧写openwrt固件 4.设置开发板的IP地址 5.WAN与LAN的切换 6.为OpenWrt配置支持Web界面 7.开发板做无线接入点 8.开发板做站点 9.开发板做中继功能 10.开发板与Windows共享文件 …… 19.OpenWrt串口的使用 …… 21.安卓通过开发板控制zigbee网络 …… 25.DS18B20温度传感器 …… openwrt非常系统的入门经典教程

资源截图

代码片段和文件信息

/***************************** 
*
*   驱动程序模板
*   版本:V1
*   使用方法(末行模式下):
*   :%s/xxx/“你的驱动名称“/g
*
*******************************/


#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 


/****************  基本定义 **********************/
//内核空间缓冲区定义
#if 0
#define KB_MAX_SIZE 20
#define kbuf[KB_MAX_SIZE];
#endif


//加密函数参数内容: _IOW(IOW_CHAR  IOW_NUMn  IOW_TYPE)
//加密函数用于xxx_ioctl函数中
//使用举例:ioctl(fd  _IOW(‘L‘0x80long)  0x1);
//#define NUMn xxx  if you need!
#define IOW_CHAR ‘L‘
#define IOW_TYPE  long
#define IOW_NUM1  0x80


//初始化函数必要资源定义
//用于初始化函数当中
//device number;
dev_t dev_num;
//struct dev
struct cdev xxx_cdev;
//auto “mknode /dev/xxx c dev_num minor_num“
struct class *xxx_class = NULL;
struct device *xxx_device = NULL;


/**************** 结构体 file_operations 成员函数 *****************/
//open
static int xxx_open(struct inode *inode struct file *file)
{
printk(“xxx drive open...\n“);


return 0;
}

//close
static int xxx_close(struct inode *inode  struct file *file)
{
printk(“xxx drive close...\n“);


return 0;
}

//read
static ssize_t xxx_read(struct file *file char __user *buffer
size_t len loff_t *pos)
{
int ret_v = 0;
printk(“xxx drive read...\n“);


return ret_v;
}

//write
static ssize_t xxx_write( struct file *file  const char __user *buffer
   size_t len  loff_t *offset )
{
int ret_v = 0;
printk(“xxx drive write...\n“);


return ret_v;
}

//unlocked_ioctl
static int xxx_ioctl (struct file *filp  unsigned int cmd  unsigned long arg)
{
int ret_v = 0;
printk(“xxx drive ioctl...\n“);

switch(cmd)
{
//常规:
//cmd值自行进行修改
case 0x1:
{
if(arg == 0x1) //第二条件;
{

}
}
break;

//带密码保护:
//请在“基本定义“进行必要的定义
case _IOW(IOW_CHARIOW_NUM1IOW_TYPE):
{
if(arg == 0x1) //第二条件
{

}

}
break;

default:
break;
}

return ret_v;
}


/***************** 结构体: file_operations ************************/
//struct
static const struct file_operations xxx_fops = {
.owner   = THIS_MODULE
.open  = xxx_open
.release = xxx_close
.read  = xxx_read
.write   = xxx_write
.unlocked_ioctl = xxx_ioctl
};


/*************  functions: init  exit*******************/
//条件值变量,用于指示资源是否正常使用
unsigned char init_flag = 0;
unsigned char add_code_flag = 0;

//init
static __init int xxx_init(void)
{
int ret_v = 0;
printk(“xxx drive init...\n“);

//函数alloc_chrdev_region主要参数说明:
//参数2: 次设备号
//参数3: 创建多少个设备
if( ( ret_v = al

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-09-03 14:44  openwrt入门经典教程\
     文件          44  2015-11-24 11:31  openwrt入门经典教程\0.使用必读.txt
     目录           0  2015-11-24 11:28  openwrt入门经典教程\1.搭建开发环境\
     文件     2298700  2015-10-18 21:55  openwrt入门经典教程\1.搭建开发环境\1.搭建开发环境.pdf
     文件      372250  2015-10-18 21:53  openwrt入门经典教程\1.搭建开发环境\Linux常用命令大全.chm
     目录           0  2015-11-24 11:28  openwrt入门经典教程\10.开发板与Windows共享文件\
     文件      815663  2015-10-18 21:54  openwrt入门经典教程\10.开发板与Windows共享文件\10.开发板与Windows共享文件.pdf
     目录           0  2015-11-24 11:28  openwrt入门经典教程\10.开发板与Windows共享文件\附:工具安装\
     文件          48  2015-10-18 21:54  openwrt入门经典教程\10.开发板与Windows共享文件\附:工具安装\readme.txt
     文件     5376490  2015-10-18 21:57  openwrt入门经典教程\10.开发板与Windows共享文件\附:工具安装\SSHSecureShellClient-3.2.9.zip
     目录           0  2015-11-24 11:28  openwrt入门经典教程\11.开发板访问虚拟机ubuntu文件\
     文件      524424  2015-10-18 21:53  openwrt入门经典教程\11.开发板访问虚拟机ubuntu文件\11.开发板访问虚拟机ubuntu文件.pdf
     目录           0  2015-11-24 11:28  openwrt入门经典教程\12.添加OpenWrt软件包概述\
     文件      596727  2015-10-18 21:54  openwrt入门经典教程\12.添加OpenWrt软件包概述\12.添加OpenWrt软件包概述.pdf
     目录           0  2015-11-24 11:28  openwrt入门经典教程\12.添加OpenWrt软件包概述\附件:makefile学习\
     文件      309514  2015-10-18 21:54  openwrt入门经典教程\12.添加OpenWrt软件包概述\附件:makefile学习\Makefile规则的语法格式.pdf
     目录           0  2015-11-24 11:28  openwrt入门经典教程\13.字符设备驱动开发及相关概念\
     文件      770330  2015-10-18 21:53  openwrt入门经典教程\13.字符设备驱动开发及相关概念\13.字符设备驱动开发及相关概念.pdf
     目录           0  2015-11-24 11:28  openwrt入门经典教程\14.字符设备框架介绍与实现\
     文件      660601  2015-10-18 21:53  openwrt入门经典教程\14.字符设备框架介绍与实现\14.字符设备框架介绍与实现.pdf
     目录           0  2015-11-24 11:28  openwrt入门经典教程\14.字符设备框架介绍与实现\附件: 字符设备框架程序模板\
     文件         346  2015-10-18 21:54  openwrt入门经典教程\14.字符设备框架介绍与实现\附件: 字符设备框架程序模板\readme.txt
     目录           0  2015-11-24 11:28  openwrt入门经典教程\14.字符设备框架介绍与实现\附件: 字符设备框架程序模板\模板\
     文件        5852  2015-10-18 21:54  openwrt入门经典教程\14.字符设备框架介绍与实现\附件: 字符设备框架程序模板\模板\demo.c
     文件         768  2015-10-18 21:54  openwrt入门经典教程\14.字符设备框架介绍与实现\附件: 字符设备框架程序模板\模板\vii
     目录           0  2015-11-24 11:28  openwrt入门经典教程\15.字符设备驱动软件包测试\
     文件      707774  2015-10-18 21:53  openwrt入门经典教程\15.字符设备驱动软件包测试\15.字符设备驱动软件包测试.pdf
     目录           0  2015-11-24 11:28  openwrt入门经典教程\15.字符设备驱动软件包测试\附件: 字符设备驱动软件包模板\
     目录           0  2015-11-24 11:28  openwrt入门经典教程\15.字符设备驱动软件包测试\附件: 字符设备驱动软件包模板\mydrv\
     文件         633  2015-10-18 21:54  openwrt入门经典教程\15.字符设备驱动软件包测试\附件: 字符设备驱动软件包模板\mydrv\Makefile
     目录           0  2015-11-24 11:28  openwrt入门经典教程\15.字符设备驱动软件包测试\附件: 字符设备驱动软件包模板\mydrv\src\
............此处省略113个文件信息

评论

共有 条评论