E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Linux驱动V2.0
Linux驱动
中断屏蔽
中断屏蔽在单CPU范围内避免竞态的一种简单而有效的方法是在进入临界区之前屏蔽系统的中断,但是在驱动编程中不值得推荐,驱动通常需要考虑跨平台特点而不假定自己在单核上运行。CPU一般都具备屏蔽中断和打开中断的功能,这项功能可以保证正在执行的内核执行路径不被中断处理程序所抢占,防止某些竞态条件的发生。具体而言,中断屏蔽将使得中断与进程之间的并发不再发生,而且,由于Linux内核的进程调度等操作都依赖中断
北地的树
·
2023-11-16 02:39
linux
Linux内核面试题(1)
整理了一些网上的
linux驱动
岗位相关面试题,如果错误,欢迎指正。1硬件中断号和Linux内核的IRQ号它们是如何映射的?
哆哆jarvis
·
2023-11-16 01:44
linux
面试
c语言
嵌入式
驱动开发
开发语言
[
Linux驱动
开发二]最简单的字符设备
目录一、基础知识1.1字符设备的定义1.2基本函数说明1.2.1MAJOR宏1.2.2MINOR宏1.2.3MKDEV宏1.2.4register_chrdev_region()1.2.5alloc_chrdev_region()1.2.6unregister_chrdev_region()二、字符设备设计流程2.1字符设备属性构建2.2字符设备方法构建2.3字符设备申请设备号2.4字符设备分配存
TD祥
·
2023-11-15 23:45
Linux驱动编程
c语言
linux
驱动开发
Linux驱动
开发之字符设备驱动
目录一,字符设备驱动开发框架二,申请设备号和创建文件结点1.申请设备号2.创建设备结点3.在驱动中实现文件IO的接口,让应用程序可以调用文件IO三,用户控制驱动和驱动控制硬件方式1.用户空间和内核空间的数据交互2.用户操作驱动与控制外设的关系四,编写字符设备驱动的步骤和规范1.驱动编写步骤2.驱动编写规范五,编写规范LED驱动实例一,字符设备驱动开发框架开发字符设备驱动的要素:必须有一个设备号,用
big__C
·
2023-11-15 23:13
#
创客学院Linux驱动开发
嵌入式
字符设备驱动
Linux驱动开发
驱动编写
树莓派基于Linux内核驱动开发详解
2、
Linux驱动
的体系架构分离、分层思想驱动的上面是系统调用API驱动的下面是硬件驱动本身的实现
星辰~念
·
2023-11-15 22:23
树莓派
linux
raspberry
pi
module_init和module_exit,init_module和cleanup_module
就像你写C程序需要包含C库的头文件那样,Linux内核编程也需要包含Kernel头文件,大多的
Linux驱动
程序需要包含下面三个头文件:#include#include#include其中,init.h
bytxl
·
2023-11-15 21:39
linux内核
Linux驱动
开发 / fbtft源码速读
二、
Linux驱动
开发/fbtft源码速读1.fbtft简介fb
嵌入式小傻瓜
·
2023-11-15 19:13
Linux
驱动开发
java
python
编程语言
linux
嵌入式
ROS stm32 CAN通信
)测试的ros-python包3)USB-CAN连接4)启动指令运行环境:ubuntu18.04.melodicSTM32:DJIRobomasterC板ROS:18.04硬件:USB-CAN(选支持
Linux
圆嘟嘟2019
·
2023-11-15 17:11
stm32
嵌入式硬件
单片机
linux驱动
程序设计21 Linux设备驱动的调试
本章导读“工欲善其事,必先利其器”,为了方便进行Linux设备驱动的开发和调试,建立良好的开发环境很重要,还要使用必要的工具软件以及掌握常用的调试技巧等。21.1节讲解了Linux下调试器GDB的基本用法和技巧。21.2节讲解了Linux内核的调试方法。21.3~21.10节对21.3节的概述展开了讲解,内容有:Linux内核调试用的printk()、BUG_ON()、WARN_ON()、/pro
oushaojun2
·
2023-11-15 15:14
linux
linux驱动
Linux4个led灯循环点亮程序,
linux驱动
学习笔记---点亮一个led灯(三)
led硬件地址映射和操作1.点亮s5pv210的led灯首先需要知道其所用引脚,以及引脚所对应的状态寄存器与数据寄存器根据外围电路图可知两个灯所用的引脚分别为gpc0_3与gpc0_4,找到其引脚所对应的寄存器状态寄存器5位的数据寄存器在驱动模块加载中做地址映射,映射的地址为8个字节64位(包括状态寄存器与数据寄存器)gpc0con+1(一个寄存器为4个字节32位,表示指向下一个寄存器0xE020
天海咲
·
2023-11-15 03:30
使用IDE(vs code)进行嵌入式
linux驱动
开发
工程的头文件查找路径及编译器路径4.IntelliSenseEngineFallback设置为ENABLE编辑驱动文件和Makefile背景早期的ubuntu版本上没有好的可用的IDE,那个时候嵌入式
linux
奇奇猴
·
2023-11-15 02:24
Linux驱动开发
IDE
vs
code
嵌入式linux驱动开发
20.1 platform 设备驱动
一、
Linux驱动
的分离与分层1.驱动的分隔和分离 现在有三个平台,A、B和C,这三个平台都有MPU6050设备。
职业法师头铁
·
2023-11-14 08:29
Linux
驱动开发
linux
驱动开发
分层与隔离
platform平台
rust_for_
linux驱动
完整版记录
文章目录[清华开源操作系统训练营]《RustfoxLinux》课程的练习1-2完整版记录。1.环境搭建2.编译rust内核2.1下载源代码2.2安装rust支持2.3检查linux内核是否支持rust2.4编译linux内核3.aarch64的qemu环境3.1.下载源代码3.2.解压编译安装3.3.配置环境变量3.4.验证4.准备debian文件系统4.1下载文件系统4.2解压缩4.3测试下载的
小坚学Linux
·
2023-11-14 07:40
rust
linux
学习
正点原子嵌入式
linux驱动
开发——Linux ADC驱动
在之前的笔记中,学习了如何给ICM20608编写IIO驱动,ICM20608本质就是ADC,因此纯粹的ADC驱动也是IIO驱动框架的。本章就学习一下如何使用STM32MP1内部的ADC,并且在学习巩固一下IIO驱动。ADC简介ADCADC,AnalogtoDigitalConverter的缩写,中文名称模数转换器。它可以将外部的模拟信号转化成数字信号。对于GPIO口来说高于某个电压值,它读出来的只
努力自学的小夏
·
2023-11-14 06:33
linux学习
linux
驱动开发
stm32
笔记
学习
正点原子嵌入式
linux驱动
开发——Linux IIO驱动
工业场合里面也有大量的模拟量和数字量之间的转换,也就是常说的ADC和DAC。而且随着手机、物联网、工业物联网和可穿戴设备的爆发,传感器的需求只持续增强。比如手机或者手环里面的加速度计、光传感器、陀螺仪、气压计、磁力计等,这些传感器本质上都是ADC,注意查看这些传感器的手册,会发现他们内部都会有个ADC,传感器对外提供IIC或者SPI接口,SOC可以通过IIC或者SPI接口来获取到传感器内部的ADC
努力自学的小夏
·
2023-11-14 06:33
linux学习
linux
驱动开发
stm32
学习
笔记
正点原子嵌入式
linux驱动
开发——Linux DAC驱动
上一篇笔记中学习了ADC驱动,STM32MP157也有DAC外设,DAC也使用的IIO驱动框架。本章就来学习一下如下在Linux下使用STM32MP157上的DAC。DAC简介ADC是模数转换器,负责将外界的模拟信号转换为数字信号。DAC刚好相反,是数模转换器,负责将SOC的数字信号转换为模拟信号。STM32MP157的DAC模块(数字/模拟转换模块)是12位数字输入,电压输出型的DAC。DAC可
努力自学的小夏
·
2023-11-14 06:00
linux学习
linux
驱动开发
学习
笔记
stm32
Linux驱动
入门(一)字符设备驱动基础
Linux驱动
入门系列
Linux驱动
入门(一)字符设备驱动基础
Linux驱动
入门(二)操作硬件
Linux驱动
入门(三)Led驱动
Linux驱动
入门(四)非阻塞方式实现按键驱动
Linux驱动
入门(五)阻塞方式实现按键驱动
JT同学
·
2023-11-13 23:58
Linux驱动
Linux驱动
字符设备
《
linux驱动
:字符设备驱动之一》
目录前言框架常用数据结构常用函数button字符设备驱动编译编译进内核编译成单独模块测试小结前言
LINUX驱动
针对的对象是存储器和外设,而不是针对cpu内核。
编程界的小学生、
·
2023-11-13 23:54
linux驱动笔记
嵌入式
linux
arm
物联网
petalinux添加AD9361驱动
文章目录一、准备工具二、步骤需要petalinux2016.2包含AD9361驱动的Linux内核(xcomm_zynq_4_4)一、准备工具ADI提供的AD9361
Linux驱动
:https://wiki.analog.com
行走的X君
·
2023-11-13 22:47
FPGA
软件无线电
linux驱动
AD9361
Linux驱动
应用层与内核层之间的数据传递
摘要本文将深入探讨在
Linux驱动
中,应用层与内核层之间数据传递的机制和优化策略。我们将详细解析这一过程中的各个步骤,包括数据从应用层到内核层的传输,以及从内核层返回应用层的过程。
我来挖坑啦
·
2023-11-13 22:51
linux
网络
运维
算法
驱动开发
linux驱动
之等待队列
阻塞和非阻塞IO是
Linux驱动
开发里面很常见的两种设备访问模式,在编写驱动的时候一定要考虑到阻塞和非阻塞。
我来挖坑啦
·
2023-11-13 22:51
java
开发语言
linux驱动
程序的好书,好书推荐----
Linux驱动
开发入门与实战
内容简介本书由浅入深,全面、系统地介绍了
linux驱动
开发技术,提供了大量实例供读者实战演练。另外,作者在实例讲解中详细分析了各种重要的理论知识,让读者能够举一反三。本书共分3篇。
AU茄子
·
2023-11-13 09:10
linux驱动程序的好书
并发与竞态(自旋锁&信号量)
(SMP)的多个CPU2、单CPU内进程间的抢占3、中断二、解决竞态的方法1.原子操作1)整型原子操作2)位原子操作2.自旋锁3、读写锁4、顺序锁5、信号量三、自旋锁vs信号量前言前几篇博客主要讲解了
Linux
qq_16177869
·
2023-11-13 09:08
多线程
linux
并发编程
Linux驱动
——PCI
Linux驱动
——PCI小狼@http://blog.csdn.net/xiaolangyangyangPCI设备枚举过程:(PC系统中BIOS和OS均实现了枚举过程,linux可通过内核PCIaccessmode
Hello Mr.Z
·
2023-11-13 04:55
Linux内核
linux
linux用户空间flash驱动,全面掌握
Linux驱动
框架——字符设备驱动、I2C驱动、总线设备驱动、NAND FLASH驱动...
原标题:全面掌握
Linux驱动
框架——字符设备驱动、I2C驱动、总线设备驱动、NANDFLASH驱动字符设备驱动哈~这几天都在发图,通过这种方式,我们希望能帮大家梳理学过的知识,全局的掌握
Linux驱动
框架
CRomputer-罗军
·
2023-11-13 04:25
linux驱动
开发—— 6、linux 设备驱动模型
来自朱有鹏老师的课堂笔记,如有侵权,马上删参考博文:设备驱动模型底层架构LINUX设备驱动模型底层架构及组织方式设备驱动模型一、linux设备驱动模型简介二、设备驱动模型的底层架构1、kobject结构体2、kobj_type结构体3、kset三、总线式设备驱动组织方式1、总线2、设备3、驱动4、类5、设备驱动模型和设备驱动框架的关系一、linux设备驱动模型简介1、什么是设备驱动模型设备驱动模型
想文艺一点的程序员
·
2023-11-13 04:55
#
5.linux驱动开发
内核
linux驱动
绑定设备 命令 bind,Linux设备驱动模型——驱动绑定
DriverBindingDriverbindingistheprocessofassociatingadevicewithadevicedriverthatcancontrolit.Busdrivershavetypicallyhandledthisbecausetherehavebeenbus-specificstructurestorepresentthedevicesandthedrive
金柔
·
2023-11-13 04:55
linux驱动绑定设备
命令
bind
Linux驱动
——设备模型
目录一、起源二、新方案2.1sysfs:2.2uevent三、代码中自动mknod四、实例一、起源仅devfs,导致开发不方便以及一些功能难以支持:(硬编)1.热插拔(插上usb设备就立马能安装驱动)2.不支持一些针对所有设备的统一操作(如电源管理)3.不能自动mknod4.用户查看不了设备信息5.设备信息硬编码,导致驱动代码通用性差,即没有分离设备和驱动内核2.6开始引入总线式开发解决这些问题。
宇努力学习
·
2023-11-13 04:54
驱动开发
linux
嵌入式
驱动开发
exynos_4412
Linux驱动
开发——PCI设备驱动
目录一、PCI协议简介二、PCI和PCI-e三、LinuxPCI驱动四、PCI设备驱动实例五、总线类设备驱动开发习题一、PCI协议简介PCI(PeripheralComponentInterconnect,外设部件互联)局部总线是由Intel公司联合其他几家公司一起开发的一种总线标准,最初是为了替代ISA之类的总线,用于解决当时的图形化界面显示器的带宽问题。相比于ISA总线,它最大的特点是高带宽、
宇努力学习
·
2023-11-13 03:23
驱动开发
linux
驱动开发
总线驱动开发
PCI
bootcmd 和 bootargs 环境变量
内容来自《【正点原子】I.MX6U嵌入式
Linux驱动
开发指南V1.5.2.pdf》uboot中有两个非常重要的环境变量bootcmd和bootargs,接下来看一下这两个环境变量。
【ql君】qlexcel
·
2023-11-12 17:05
嵌入式Linux
驱动开发
bootcmd
bootargs
uboot
U-Boot
linux驱动
开发篇(一)—— Linux 内核模块介绍
linux系列目录:linux基础篇(一)——GCC和Makefile编译过程linux基础篇(二)——静态和动态链接ARM裸机篇(一)——i.MX6ULL介绍ARM裸机篇(二)——i.MX6ULL启动过程ARM裸机篇(三)——i.MX6ULL第一个裸机程序ARM裸机篇(四)——重定位和地址无关码ARM裸机篇(五)——异常和中断linux系统移植篇(一)——linux系统组成linux系统移植篇(
Aladdin_KK
·
2023-11-12 12:09
linux
linux
驱动开发
arm开发
异步通知fasync
分类:
Linux驱动
2012-01-0722:33739人阅读评论(0)收藏举报linux设备驱动归纳总结(三):7.异步通知fasyncxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
mirkerson
·
2023-11-12 08:55
Linux
linux驱动
开发学习笔记二十一:异步通知
一、异步通知简介我们首先来回顾一下“中断”,中断是处理器提供的一种异步机制,我们配置好中断以后就可以让处理器去处理其他的事情了,当中断发生以后会触发我们事先设置好的中断服务函数,在中断服务函数中做具体的处理。比如我们在裸机篇里面编写的GPIO按键中断实验,我们通过按键去开关蜂鸣器,采用中断以后处理器就不需要时刻的去查看按键有没有被按下,因为按键按下以后会自动触发中断。同样的,Linux应用程序可以
耐心的小黑
·
2023-11-12 08:25
#
Linux驱动开发学习笔记
linux
嵌入式
CCIE讲师讲解思科认证网络认证CCNA
v2.0
网络工程师和网络安全课程-安德-专题视频课程...
CCIE讲师讲解思科认证网络认证CCNAv2.0网络工程师和网络安全课程—35850人已学习课程介绍本课程由乾颐堂安德老师,从专业级别讲解的CCNA新高清视频课程收益课程目标:CCNA认证标志着具备安装、配置、运行中型路由和交换网络,并进行故障排除的能力。获得CCNA认证的专业人士拥有相应的知识和技能,能够通过广域网与远程站点建立连接,消除基本的安全威胁,了解无线网络接入的要求。CCNA培训包括(
ender_joe
·
2023-11-11 22:39
视频教程
网络安全
思科认证
网络工程师
网络技术
系统/网络
《
Linux驱动
:Nor flash驱动看这一篇就够了》
文章目录一,前言二,硬件电路2.1脚位功能2.2地址移位三,NandFlash和NorFlash的区别四,NorflashCFI规范和JEDEC规范4.1JEDEC规范4.2CFI规范五,Norflash驱动框架六,NorFlash驱动分析6.1配置NorFlash驱动编译6.2NorFlash驱动入口函数6.3驱动probe函数分析6.4CFI规范Flash识别分析6.4.1CFI协议层6.4.
编程界的小学生、
·
2023-11-11 15:25
linux驱动笔记
linux
驱动开发
嵌入式硬件
linux 阻塞IO
1.阻塞和非阻塞IO是
Linux驱动
开发里面很常见的两种设备访问模式,在编写驱动的时候一定要考虑到阻塞和非阻塞。这里的“IO”并不是单片机的的“GPIO”(引脚)。
_十年饮冰难凉热血
·
2023-11-11 07:17
linux驱动
linux
驱动开发
运维
Linux之阻塞与非阻塞IO
①select②poll③epoll三、驱动程序阻塞与非阻塞1.等待队列(阻塞)①等待队列头②等待队列项③添加/删除队列④等待唤醒⑤等待事件2.poll(非阻塞)四、结尾一、阻塞与非阻塞IO简介阻塞和非阻塞IO是
Linux
风间琉璃•
·
2023-11-11 07:43
#
Linux驱动开发
驱动开发
linux adc命令测试,一文搞懂 ADC 裸机和基于 Linux 驱动编写方法
原标题:一文搞懂ADC裸机和基于
Linux驱动
编写方法作者:一口Linux/土豆居士(本文来自作者投稿)前言在嵌入式开发中,ADC应用比较频繁,本文主要讲解ADC的基本原理以及如何编写基于ARM的裸机程序和基于
Alex Cui
·
2023-11-11 06:33
linux
adc命令测试
RV1126 led驱动开发
一、前言如何VSCode搭建
Linux驱动
开发环境参考:VisualStudioCode搭建
linux驱动
开发环境_vscodelinuxdriver驱动配置-CSDN博客
Linux驱动
开发入门(二)VScode
ju太郎
·
2023-11-11 06:39
驱动开发
1024程序员节
Linux驱动
-第一个驱动hello world
目录第一个驱动helloworld把驱动编译成模块,然后加载到内核开发板系统移植把驱动编译到内核第一个驱动helloworld配置vscode的内核头文件路径编辑c_cpp_properties.json{"configurations":[{"name":"Linux","includePath":[//"${workspaceFolder}/**","I:/qqdownload/linux/l
JoYER_cc
·
2023-11-11 03:44
linux
C语言
linux
c语言
主线剧情07.2-
Linux驱动
编程-各种内核机制总结
Linux驱动
编程-各种内核机制总结本文系学习100ask手册而做的备查笔记,我优化了一些逻辑,循序渐进,并扩展了一些,适合复习、备查来看,而非新学来看。
Real-Staok
·
2023-11-10 18:46
【主线剧情】Linux
系列
linux
arm开发
驱动开发
经验分享
arm
linux驱动
之休眠与唤醒
休眠唤醒想要达到的效果:应用程序对设备文件进行read操作时,如果没有数据则程序休眠,直到有数据时程序被唤醒.休眠函数头文件include\linux\wait.h**wait_event_interruptible(wq,condition)**休眠,直到condition为真;休眠期间是可被打断的,可以被信号打断wq参数是wait_queue_head_tcondition作为一个判断条件语句
未燃机智鱼
·
2023-11-10 07:40
嵌入式
linux驱动
linux
c语言
驱动开发
关于整数正序分解和整数逆序
V2.0
对整数进行正序和逆序分解:#includeintCount(intn)//统计n是几位数字{inttemp=0;do{n/=10;temp++;}while(n!=0);returntemp;}voidPrintOrder(intn)//正序输出每个数字{intc=Count(n);intpower=1;for(inti=1;i0);printf("\n");}voidPrintReverse(i
zkk258369
·
2023-11-09 23:09
C语言
c
Git 操作指南 | 创建 tag 标签以及如何拉取指定版本代码
比较有代表性的是人们会使用这个功能来标记发布结点(v1.0、
v2.0
等等)。1.创建tag标签创建本地标签:gittag,如gittagv1.0。
`Eliauk
·
2023-11-09 23:02
Git
git
github
linux 串口对应设备,
Linux驱动
系列———USB转串口cp210x设备驱动
USB设备驱动程序用来驱动相应的USB设备,USB设备驱动用usb_driver表示,它主要用来将USB设备挂接到USB核心中,并启动USB设备,让其正常工作。对于USB设备的具体读写操作由放在usb_driver设备中的usb_class_drivers成员来实现,该成员定义了一个file_operations结构体,用来对设备进行读写操作。1.USB设备驱动模型设备需要驱动才能正常工作,所以当
三山卡夫卡
·
2023-11-09 20:35
linux
串口对应设备
正点原子嵌入式
linux驱动
开发——Linux Regmap驱动
在前面学习I2C和SPI驱动的时候,针对I2C和SPI设备寄存器的操作都是通过相关的API函数进行操作的。这样Linux内核中就会充斥着大量的重复、冗余代码,但是这些本质上都是对寄存器的操作,所以为了方便内核开发人员统一访问I2C/SPI设备的时候,为此引入了Regmap子系统,本章就来学习一下如何使用RegmapAPI函数来读写I2C/SPI设备寄存器。RegmapAPI简介RegmapLinu
努力自学的小夏
·
2023-11-09 19:31
linux学习
linux
驱动开发
stm32
学习
笔记
Linux驱动
开发——USB设备驱动
目录一、USB协议简介二、LinuxUSB驱动三、USB设备驱动实例一、USB协议简介USB(UniversalSerialBus,通用串行总线)正如它的名字一样,是用来连接PC外设的一种通用串行总线,即插即用和易扩展是它最大的特点。所谓即插即用,是PC不需要断电就可以连接外设,并且不需要在硬件上通过跳线来配置设备。易扩展则是它可以很容易扩展出更多的接口来连接更多的外设。USB的协议主要经过了US
宇努力学习
·
2023-11-09 19:01
驱动开发
linux
驱动开发
嵌入式
USB
cortex-A7核 中断实验(按键中断实验)
1.选择按键触发方式下降沿2.解决消抖的方法1)ARM中:延时消抖2)
linux驱动
开发:定时器函数3.框图内部流程框图:需要RCCGPIOEXTIGIC章节中断触发流程:4.RCC章节1)使能GPIOF
林黛玉倒拔垂杨柳~
·
2023-11-09 09:10
linux
ubuntu
单片机
linux驱动
开发接口
内核共提供了三个函数来注册一组字符设备编号,这三个函数分别是register_chrdev_region()、alloc_chrdev_region()和register_chrdev()。register_chrdev是老接口,动态注册和静态注册都是这一个接口,通过判断给定的主设备号是否为0来进行区别,0表示动态注册,否则静态注册register_chrdev_region/alloc_chrd
l-coder-dd
·
2023-11-08 17:46
linux
dnmp
v2.0
git项目地址https://github.com/Gekkoou/dnmpdocker+nginx+mysql+php7/5扩展redis+mongodb+swoole(更多扩展可编辑.env文件)使用安装docker和docker-composegitclone代码到本地$gitclonegit@github.com:Gekkoou/dnmp.git执行命令$cddnmp$docker-com
Gekkoou
·
2023-11-08 04:00
docker
php
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他