当前位置: 首页 > news >正文

任经理 徐州网站建设微信扫码点餐小程序怎么做

任经理 徐州网站建设,微信扫码点餐小程序怎么做,手机网站商场建设,网络科技公司网站制作linux驱动开发与裸机开发的区别 裸机直接操作寄存器#xff0c;有些mcu提供了库#xff0c;但还是很底层 1、linux驱动开发直接操作寄存器很麻烦不现实#xff0c;主要是根据linux驱动框架进行开发#xff08;就是有很多操作都是一样的#xff0c;我们只需要对一个程序模… linux驱动开发与裸机开发的区别 裸机直接操作寄存器有些mcu提供了库但还是很底层 1、linux驱动开发直接操作寄存器很麻烦不现实主要是根据linux驱动框架进行开发就是有很多操作都是一样的我们只需要对一个程序模板进行一些修改就可以实现不同驱动的开发 2、驱动最终的表现就是/dev/xxx这样的一个文件应用程序打开驱动文件或者关闭驱动文件 3、内核支持设备树文件一个dts文件文件描述了板子的设备信息使用了哪些引脚引脚是高电平还是低电平地址是多少之类的 三大驱动分类 字符驱动 从最简单的点 灯到 I2C、SPI、音频等都属于字符设备驱动的类型 块驱动 所谓的块设备驱动就是存储器设备的驱动比如 EMMC、NAND、SD 卡和 U 盘等存储 设备因为这些存储设备的特点是以存储块为基础因此叫做块设备 网络设备驱动 就是网络驱动不管是有线的还是无线的都属于网络设备驱动的范畴。一个设备可以 属于多种设备驱动类型比如 USB WIFI其使用 USB 接口 字符设备驱动实验 在单片机中驱动与应用是在一个文件中但是linux中驱动与应用程序是分开的 驱动获得外设、或者传感器数据控制外设然后提交给应用程序 应用程序运行在用户空间驱动程序运行在内核空间用户空间的程序无法直接访问内核空间的数据一般有三种方法 1、系统调用比如应用函数使用一个open函数*c语言库函数然后open函数就会调用内核中的open驱动对应的函数 2、异常中断 3、陷入· 我的第一个linux驱动实验 字符设备驱动框架 字符设备驱动的编写主要就是驱动对应的open、close、read。。。其实就是 file_operations结构体的成员变量的实现 驱动模块的加载与卸载 Linux驱动程序可以编译到kernel里面也就是zImage也可以编译为模块.ko。测试的时候只需要加载.ko模块就可以 加载驱动会用到加载命令insmod移除驱动使用命令rmmod。 驱动模块加载成功以后可以使用lsmod查看一下。 三、字符设备的注册与注销 1、我们需要向系统注册一个字符设备使用函数register_chrdev。 2、卸载驱动的时候需要注销掉前面注册的字符设备使用函数unregister_chrdev注销字符设备。 四、设备号 1Linux内核使用dev_t。 typedef __kernel_dev_t       dev_t; typedef __u32 __kernel_dev_t; typedef unsigned int __u32; 2、Linux内核将设备号分为两部分主设备号和次设备号。主设备号占用前12位次设备号占用低20位。 主设备号表示某一个具体的驱动次设备号表示使用这个驱动的各个设备 3、设备号的操作函数或宏 从dev_t获取主设备号和次设备号MAJOR(dev_t)MINOR(dev_t)。也可以使用主设备号和次设备号构成dev_t通过MKDEV(majorminor) 五、file_operations的具体实现 file_operation就是驱动的操作函数 struct file_operations {struct module *owner;loff_t (*llseek) (struct file *, loff_t, int);ssize_t (*read) (struct file *, char __user *, size_t, loff_t *);ssize_t (*write) (struct file *, const char __user *, size_t, loff_t *);ssize_t (*read_iter) (struct kiocb *, struct iov_iter *);ssize_t (*write_iter) (struct kiocb *, struct iov_iter *);int (*iterate) (struct file *, struct dir_context *);unsigned int (*poll) (struct file *, struct poll_table_struct *);long (*unlocked_ioctl) (struct file *, unsigned int, unsigned long);long (*compat_ioctl) (struct file *, unsigned int, unsigned long);int (*mmap) (struct file *, struct vm_area_struct *);int (*mremap)(struct file *, struct vm_area_struct *);int (*open) (struct inode *, struct file *);int (*flush) (struct file *, fl_owner_t id);int (*release) (struct inode *, struct file *);int (*fsync) (struct file *, loff_t, loff_t, int datasync);int (*aio_fsync) (struct kiocb *, int datasync);int (*fasync) (int, struct file *, int);int (*lock) (struct file *, int, struct file_lock *);ssize_t (*sendpage) (struct file *, struct page *, int, size_t, loff_t *, int);unsigned long (*get_unmapped_area)(struct file *, unsigned long, unsigned long, unsigned long, unsigned long);int (*check_flags)(int);int (*flock) (struct file *, int, struct file_lock *); ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, loff_t *, size_t, unsigned int);ssize_t (*splice_read)(struct file *, loff_t *, struct pipe_inode_info *, size_t, unsigned int);int (*setlease)(struct file *, long, struct file_lock **, void **);long (*fallocate)(struct file *file, int mode, loff_t offset,loff_t len);void (*show_fdinfo)(struct seq_file *m, struct file *f); #ifndef CONFIG_MMUunsigned (*mmap_capabilities)(struct file *); #endif }; 六、字符设备驱动框架的搭建 七、chrdevbase虚拟设备驱动的完善
http://www.w-s-a.com/news/352609/

相关文章:

  • 训做网站的心得体会范文中山市 有限公司网站建设
  • 服装电子商务网站建设过程与实现两学一做学习教育网站
  • 住房和城建设网站怎么用源码建站
  • 监理工程师证查询网站百度关键词优化软件网站
  • 关于建筑建设的网站asp网站建设报告书
  • 服务二级公司网站建设平台销售模式有哪些
  • 南昌县建设局网站微信分销小程序开发
  • 网站设计师需要什么知识与技能wordpress个性
  • 做茶叶网站的目的和规划有什么做照片书的网站
  • 开福区城乡建设局门户网站关键词挖掘查询工具爱站网
  • 网站建设全国排名沈阳seo按天计费
  • 成都公司网站设计无锡seo网站推广费用
  • 建网站平台要多少钱购物网站界面设计策划
  • 学完js了可以做哪些网站长沙建站官网
  • 怎么样做问卷网站多少钱英语
  • 房产网站建设方案建筑公司是干什么的
  • wordpress建的大型网站柳州市网站建设
  • 石家庄做网站的公司有哪些微信自媒体网站建设
  • 池州哪里有做网站注册公司有哪些风险
  • 做古代风格头像的网站对网站政务建设的建议
  • 网站搜索栏怎么做设计个网站要多少钱
  • 阿里巴巴网站建设目标wamp wordpress
  • 自己做的网站怎么挂网上金蝶erp
  • 网站的页面由什么组成淘宝网网站建设的需求分析
  • 软文网站推广法dede5.7内核qq个性门户网站源码
  • 个人备案网站名称校园网站建设特色
  • vr超市门户网站建设班级网站怎么做ppt模板
  • 网站建设一般是用哪个软件刚开始做写手上什么网站
  • 用jsp做的网站源代码下载有哪些做红色旅游景点的网站
  • 网站开发的技术选型黄石市网站建设