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
tiny4412驱动开发
树莓派基于Linux内核
驱动开发
详解
一、驱动认知首先理解Linux内核框图文件系统认知,Linux内核框图1、什么是驱动linux内核驱动。软件层面上的驱动广义上是指:这一段代码操作了硬件去动,所以这一段代码就叫硬件的驱动程序。狭义上驱动程序就是专指操作系统中用来操控硬件的逻辑方法的部分代码。而我们这里讲的驱动就指的是这个狭义上的驱动。2、Linux驱动的体系架构分离、分层思想驱动的上面是系统调用API驱动的下面是硬件驱动本身的实现
星辰~念
·
2023-11-15 22:23
树莓派
linux
raspberry
pi
Linux内核
驱动开发
(一)
Linux内核初探linux操作系统历史开发模式git分布式管理gitclone获取gitpush提交gitpull更新邮件组mailinglistpatch内核代码组成Makfilearch体系系统架构相关block块设备crypto加密算法drivers驱动(85%)atm通信bluetooth蓝牙firmware:外设fs文件系统include头文件init启动代码ipc进程通信代码kern
温逗死
·
2023-11-15 22:49
linux
驱动开发
运维
基于linux内核的
驱动开发
1字符设备驱动框架1.1字符设备定义:只能以一个字节一个字节的方式读写的设备,不能随机的读取设备中中的某一段数据,读取数据需要按照先后顺序。(字符设备是面向字节流的)常见的字符设备:鼠标键盘串口控制台块设备:可以从设备的任意位置读取一定长度数据的设备。常见的块设备:硬盘磁盘光盘U盘SD卡tf卡。。1.2字符设备驱动框架init流程:--》HelloModule{1申请设备号(静态申请动态申请)2创
谷谷呀~
·
2023-11-15 22:16
驱动开发
Linux
linux内核
驱动开发
系列文章目录主要介绍linux系统下的
驱动开发
文章目录系列文章目录文章目录前言一、驱动是什么?二、主要分类2.读入数据3.代码示例总结前言对设备驱动最通俗的解释就是“驱使硬件设备行动”。
第二层皮-合肥
·
2023-11-15 22:13
驱动开发
fpga开发
Linux
驱动开发
/ fbtft源码速读
二、Linux
驱动开发
/fbtft源码速读1.fbtft简介fb
嵌入式小傻瓜
·
2023-11-15 19:13
Linux
驱动开发
java
python
编程语言
linux
嵌入式
写出高质量代码的秘诀:Golang中的测试
驱动开发
(TDD)
测试
驱动开发
(TDD)是一种广受欢迎的方法论,它有着充分的理由。本文将探讨TDD是什么,为什么它是必要的,以及如何在Golang中应用TDD,Golang是一门以效率和简洁著称的编程语言。
Go中国
·
2023-11-15 16:52
golang
驱动开发
tdd
开发语言
后端
Linux字符
驱动开发
__点亮多个LED
环境:ubuntu20.04、sourceinsight4.0、secureCRT内核版本:Linux-3.14-fs4412开发板:fs4412(ARM)1、字符驱动代码//头文件#include#include#include#include#include#include#include#include#include#include"comm.h"//定义全局结构体structglobal
嵌入式DZC
·
2023-11-15 02:24
Linux驱动开发
linux
arm开发
使用IDE(vs code)进行嵌入式linux
驱动开发
工程的头文件查找路径及编译器路径4.IntelliSenseEngineFallback设置为ENABLE编辑驱动文件和Makefile背景早期的ubuntu版本上没有好的可用的IDE,那个时候嵌入式linux
驱动开发
人员多使用
奇奇猴
·
2023-11-15 02:24
Linux驱动开发
IDE
vs
code
嵌入式linux驱动开发
如何测试前端代码? 知道 BDD, TDD, Unit Test 么? 知道怎么测试你的前端工程么(mocha, sinon, jasmin, qUnit..)?
.测试的类型1.1单元测试(UnitTesting)优缺点:优点:缺点:1.2集成测试(IntegrationTesting)优点:缺点:1.3端到端测试(End-to-EndTesting)2.测试
驱动开发
冰海恋雨.
·
2023-11-14 23:27
前端
tdd
2023软件测试必问的100个面试题【含答案】
2.测试
驱动开发
(TDD)是什么?答:测试
驱动开发
是一种开发方法,它要求在编写代码之前编写测试用例。这些测试用例定义了应用程序应该实现的功能,并且确保所有功能都能按照预期工作。3.什么是黑盒测试?
bug捕手
·
2023-11-14 21:17
postman
git
jenkins
pytest-bdd快速示例和问题解决
BDD与pytest-bddBDD即Behavior-drivendevelopment,行为
驱动开发
。BDD行为驱动是一种敏捷开发模式,重点在于消除开发/测试对需求了解的歧义及用户场景的验证。
oscar999
·
2023-11-14 17:33
pytest
pytest-bdd
行为驱动开发
字符设备
驱动开发
在Linux系统中,用户空间和内核空间之间是相互隔离开的。驱动程序运行在内核空间中,给出的地址也是在内核空间中的地址,运行在用户空间下的用户程序即使拿到这个地址,也不能访问内核空间。这时,我们需要使用到copy_to_user()函数,将要传递的内容从内核空间拷贝到用户空间,用户程序再访问用户空间中的该内容即可。copy_to_user函数的原型如下。unsignedlongcopy_to_use
一技旁身
·
2023-11-14 11:27
驱动开发
2.4 Windows
驱动开发
:内核字符串拷贝与比较
在上一篇文章《内核字符串转换方法》中简单介绍了内核是如何使用字符串以及字符串之间的转换方法,本章将继续探索字符串的拷贝与比较,与应用层不同内核字符串拷贝与比较也需要使用内核专用的API函数,字符串的拷贝往往伴随有内核内存分配,我们将首先简单介绍内核如何分配堆空间,然后再以此为契机简介字符串的拷贝与比较。2.4.1内核中的空间分配首先内核中的堆栈分配可以使用ExAllocatePool()这个内核函
微软技术分享
·
2023-11-14 10:38
《灰帽黑客:攻守道》
windows
驱动开发
字符串拷贝
字符串比较
正点原子嵌入式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
64位
驱动开发
中结构体8字节对齐
在写枚举文件驱动的过程发现获取到的系统句柄总数是正确的,但是在判断句柄类型为28,即文件句柄的时候发生了严重的错误,导致很多进程中的打开的句柄无法获取,找了很多原因,最后发现是因为驱动在定义结构体的时候按1字节对齐,导致发生了错误。驱动中的结构在64位WIN7下应该是8字节对齐,32位下为4字节对齐。切记!status=ZwQuerySystemInformation(SystemHandleIn
yufengly1984
·
2023-11-14 02:38
嵌入式(
驱动开发
)(I2C总线式
驱动开发
)
一、I2C总线背景知识SOC芯片平台的外设分为:一级外设:外设控制器集成在SOC芯片内部二级外设:外设控制器由另一块芯片负责,通过一些通讯总线与SOC芯片相连Inter-IntegratedCircuit:字面意思是用于“集成电路之间”的通信总线,简写:IIC(或者I2C)i2c传输的要点就是:传输一个字节后面必然紧跟一个"响应"信号----应答信号.这个响应信号可能来自主机,或者是从机,具体是谁
嵌入式学习者。
·
2023-11-13 22:12
Linux
驱动以及裸机
驱动开发
单片机
嵌入式硬件
linux驱动之等待队列
阻塞和非阻塞IO是Linux
驱动开发
里面很常见的两种设备访问模式,在编写驱动的时候一定要考虑到阻塞和非阻塞。
我来挖坑啦
·
2023-11-13 22:51
java
开发语言
2.1 Windows
驱动开发
:内核链表与结构体
在Windows内核中,为了实现高效的数据结构操作,通常会使用链表和结构体相结合的方式进行数据存储和操作。内核提供了一个专门用于链表操作的数据结构LIST_ENTRY,可以用来描述一个链表中的每一个节点。使用链表来存储结构体时,需要在结构体中嵌入一个LIST_ENTRY类型的成员变量,用来连接相邻的节点。通过一些列链表操作函数,如InitializeListHead、InsertHeadList、
微软技术分享
·
2023-11-13 18:25
《灰帽黑客:攻守道》
windows
驱动开发
链表
2.2 Windows
驱动开发
:内核自旋锁结构
提到自旋锁那就必须要说链表,在上一篇《内核中的链表与结构体》文章中简单实用链表结构来存储进程信息列表,相信读者应该已经理解了内核链表的基本使用,本篇文章将讲解自旋锁的简单应用,自旋锁是为了解决内核链表读写时存在线程同步问题,解决多线程同步问题必须要用锁,通常使用自旋锁,自旋锁是内核中提供的一种高IRQL锁,用同步以及独占的方式访问某个资源。在了解自旋锁之前需简单介绍一下内核中如何分配内存,一般而言
微软技术分享
·
2023-11-13 17:35
《灰帽黑客:攻守道》
windows
驱动开发
linux驱动程序的好书,好书推荐----Linux
驱动开发
入门与实战
内容简介本书由浅入深,全面、系统地介绍了linux
驱动开发
技术,提供了大量实例供读者实战演练。另外,作者在实例讲解中详细分析了各种重要的理论知识,让读者能够举一反三。本书共分3篇。
AU茄子
·
2023-11-13 09:10
linux驱动程序的好书
Linux内核驱动的学习方法
学习方法学习Linux内核
驱动开发
需要掌握一定的操作系统和编程知识,以及深入了解Linux内核的工作原理。
代码改变世界ctw
·
2023-11-13 07:43
学习方法
linux
内核
驱动
嵌入式
arm
001-从LINUX系统开发转为内核开发的思想转变
工作思路上的差异系统开发:理解业务抽象业务逻辑和对象设计程序流程和算法编码:基本上业务逻辑代码需要从0开始构建内核
驱动开发
理解硬件原理图(硬件的数量和连接方式)必要时需要了解芯片手册和各种bus协议(如
EniacCheng
·
2023-11-13 05:01
linux
《linux设备
驱动开发
详解》插图汇总
目录说明:第一章linux设备驱动概述及开发环境构建图1.1无操作系统时硬件、设备驱动和应用软件的关系图1.4硬件、驱动、操作系统和应用程序的关系图1.5Linux设备驱动与整个软硬件系统的关系第二章驱动设计的硬件基础图2.2冯·诺依曼结构与哈佛结构编辑图2.3改进的哈佛结构图2.4处理器分类图2.5典型的类SRAM接口图2.6双端口RAM图2.8存储器分类图2.9RS-232C串口电路原理图2.
小可嵌入式
·
2023-11-13 04:55
Linux驱动编程
驱动开发
linux
网络协议
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
驱动开发
——PCI设备驱动
目录一、PCI协议简介二、PCI和PCI-e三、LinuxPCI驱动四、PCI设备驱动实例五、总线类设备
驱动开发
习题一、PCI协议简介PCI(PeripheralComponentInterconnect
宇努力学习
·
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开发
Linux 嵌入式
驱动开发
异步通知
文章目录1.概念2.通知流程3.驱动4.APP1.概念信号类似于硬件层面的中断,相当于软件层次上的中断不同的信号相当于中断号,分别需要实现一个信号处理函数不可被忽略信号:SIGKILL(9)和SIGSTOP(19)2.通知流程应用程序实现并注册一个信号处理函数应用程序将current进程号告知内核应用程序获取当前进程状态并开启当前进程异步通知驱动程序初始化fasync结构体满足通知条件,如:中断发
Embd点灯小萌新_tao
·
2023-11-12 08:55
arm
嵌入式硬件
stm32
c语言
linux
驱动开发
学习笔记二十一:异步通知
一、异步通知简介我们首先来回顾一下“中断”,中断是处理器提供的一种异步机制,我们配置好中断以后就可以让处理器去处理其他的事情了,当中断发生以后会触发我们事先设置好的中断服务函数,在中断服务函数中做具体的处理。比如我们在裸机篇里面编写的GPIO按键中断实验,我们通过按键去开关蜂鸣器,采用中断以后处理器就不需要时刻的去查看按键有没有被按下,因为按键按下以后会自动触发中断。同样的,Linux应用程序可以
耐心的小黑
·
2023-11-12 08:25
#
Linux驱动开发学习笔记
linux
嵌入式
DevOps:定义汽车软件新开发模式
汽车的系统开发以模型
驱动开发
为主(Model-basedsystemsengi
迪捷软件
·
2023-11-12 07:41
SkyEye
devops
汽车
敏捷开发实践经验分享
目录敏捷开发是什么敏捷开发是什么-核心思想敏捷开发怎么做敏捷开发怎么做——Scrum敏捷开发怎么做——用户故事(需求表示方法)敏捷开发怎么做——测试
驱动开发
敏捷开发怎么做——Backlog(任务板)敏捷开发怎么做
chenxy02
·
2023-11-12 03:42
项目管理
scrum
经验分享
驱动开发
uboot -
驱动开发
- dw watchdog
说明公司SOC使用的watchdog模块是新思(Synopsys)的IP。需求用户有时会在uboot/kernel中做些开发,新增一些功能(OTA升级等),可能会出现uboot/kernel启动崩溃甚至设备死机等问题,需要在uboot启动阶段开启watchdog监控设备运行实现异常后复位。实现前提:dtswatchdog节点配置ok。由于历史原因,根据是否支持DM(Drivermodel),ubo
leon.liao
·
2023-11-11 08:09
uboot
驱动开发
uboot
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驱动开发
驱动开发
RV1126 led
驱动开发
一、前言如何VSCode搭建Linux
驱动开发
环境参考:VisualStudioCode搭建linux
驱动开发
环境_vscodelinuxdriver驱动配置-CSDN博客Linux
驱动开发
入门(二)VScode
ju太郎
·
2023-11-11 06:39
驱动开发
1024程序员节
UVC
驱动开发
目录什么是UVCUVC规范UVC设备的枚举过程什么是UVCUSBVIDEOCLASS现在即插即用,不需要安装驱动的usb摄像头,基本上都符合这个标准。windowslinuxandroid主流系统都包含了对UVC的支持。UVC规范是USB规范的一部分。目前USB文档网站上是1,5https://www.usb.org/documents?search=uvc&type%5B%5D=55&items
内归因
·
2023-11-11 02:45
uvc
libusb移植到Android开发板
这是我在简书上的第一篇文章,就以迁移libusb到Android开发板为例,整理出本人遇到的问题及解决方法,希望对有需要的朋友有所帮助:使用环境环境:Ubuntu14.04,
tiny4412
(Android
zzkzsmj
·
2023-11-11 00:18
交叉编译
Android
usb
交叉编译
arm
.so
驱动开发
基础
1、Hello驱动我们应用程序使用open函数的时候,会调用内核的sys_open函数,然后接下来1、然后打开普通文件的话会使用文件系统操作硬件,2、要是打开驱动文件,会使用驱动程序对应的drv_open函数怎么写驱动程序我们驱动对应的drv_open等函数写好了,存放在file_operation结构体中将结构体告诉内核,也就是将结构体通过一个函数注册到内核中(注册的时候会设定主设备号,可自己设
(ノへ ̄、)。
·
2023-11-10 18:55
linux驱动开发
物联网
【I.mx6ull】之-----代码的编译过程
本博文记录【I.mx6ull】之-----代码的编译过程文章目录1.I.mx6ull启动分析2.汇编语言
驱动开发
板代码编译过程2.1将汇编语言依次编译为.bin文件的过程2.2Makefile文件的必要性
Intoxicated_Rookie
·
2023-11-10 10:20
STM系列
嵌入式C
单片机
c语言
【软件测试】自动化测试战零基础教程——Python自动化从入门到实战(完结)
整理不易,希望对各位学习软件测试能带来帮助软件测试知识持续更新第十章行为
驱动开发
BDD框架lettuce入门第一节、安装与例子安装例子(阶乘)第二节、lettuce解析第三节、添加测试场景第四节、lettuce
测试-码
·
2023-11-10 01:47
自动化测试
基础
软件测试
python
自动化
ruby
selenium
功能测试
正点原子嵌入式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
vue-cli 项目集成 Jest 单元测试
②、Jasmine是Jest的底层库,助攻BDD(即行为
驱动开发
)断言库与异步测试的自动化测试框架,没有外部依赖。运行在node.js上,没有外部库,所以可以兼容所有的框架和库,但配置过程更加繁琐,使
倔强的小绵羊
·
2023-11-09 14:08
Jest
单元测试
Vue
Test
Utils
cortex-A7核 中断实验(按键中断实验)
1.选择按键触发方式下降沿2.解决消抖的方法1)ARM中:延时消抖2)linux
驱动开发
:定时器函数3.框图内部流程框图:需要RCCGPIOEXTIGIC章节中断触发流程:4.RCC章节1)使能GPIOF
林黛玉倒拔垂杨柳~
·
2023-11-09 09:10
linux
ubuntu
单片机
关于“tdd”和“bdd”
一.定义TDD(Test-DrivenDevelopment):测试
驱动开发
是敏捷开发中一项核心的实践和技术,是一种设计方法论。
网友小宋
·
2023-11-09 00:10
TDD 与 BDD 仅仅是语言描述上的区别么?
ATDD:AcceptanceTestDrivenDevelopment(验收测试
驱动开发
)这是一种在编码开始之前将客户带入测试设计过程的技术。
weixin_34010949
·
2023-11-09 00:38
测试
驱动开发
对ATDD的理解
对ATDD的理解ATDD:英文全称是:AcceptanceTestDrivenDevelopment,也就是常常听到的验收测试
驱动开发
。那么,究竟什么才是ATDD呢?
uestcylg
·
2023-11-09 00:07
浅谈TDD、BDD、ATDD、DDD的区别
四个开发模式意思:TDD:测试
驱动开发
(Test-DrivenDevelopment)BDD:行为
驱动开发
(BehaviorDrivenDevelopment)ATDD:验收测试
驱动开发
(AcceptanceTestDrivenDevelopment
人生苦短,python陪伴
·
2023-11-09 00:00
框架和设计模式
TDD
BDD
ATDD
DDD
上一页
5
6
7
8
9
10
11
12
下一页
按字母分类:
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
其他