自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 网络相关知识点(针对面试)

子网掩码用于划分IP地址为网络地址和主机地址。它是一个32位数字,定义了网络中哪些位用于网络地址,哪些位用于主机地址。滑动窗口是TCP用于控制发送和接收数据量的机制。它确定了在等待确认之前,可以发送多少数据段。负载均衡是一种技术,用于分发网络流量到多个服务器,确保每个服务器都不会过载。与TCP/IP的关系在于,负载均衡器会根据TCP/IP数据包的内容决定如何分发流量。HTTP协议。

2023-10-11 14:12:56 148

原创 网络设备驱动的一些分析

(1)

2023-10-11 12:57:20 116

原创 中断的上下半部

中断的上下半部

2023-09-15 19:42:25 89

原创 Linux驱动开发-------- 内核的同步与互斥

如果一个变量的操作是原子性的,即不能再被分割,类似于在汇编级代码上也只要一条汇编指令就能完成,那么对这样变量的访问就根本不需要考虑并发带来的影响。因此,内核专门提供了一种数据类型 atomic_t,用它来定义的变量为原子变量,其类型定义如下。

2023-09-15 16:30:38 236

原创 Linux驱动input子系统基础之按键

linux中管理所有的输入类设备的体系。(例如鼠标、触摸屏、按键、键盘等等)linux中输入设备的编程模型//时间(时刻)__u16 type;//类型的编号(以键盘为例)__u16 code;//编码值(那个按键)//操作值(谈起还是按下)用这个结构体描述一个输入类事件,例如按一下按键或者动一下鼠标就是一个事件将各种不同类型的输入设备、不同的寄存器、不同操作方法囊括起来(2)input子系统分4个部分。

2023-09-11 10:29:15 709

原创 framebuffer驱动详解

framebuffer帧缓冲(简称fb)是linux内核中虚拟出的一个设备,使用代码构建出的一个设备,具有设备文件可以去读写,代替LCD显示器这个硬件设施以及LCD显示器所需的软件设施和硬件设施,如显卡驱动和显卡。framebuffer可以进行不同的配置从而支持不同的接口如VGA、HDMI等等。很多人都会说操纵lcd显示就是操纵framebuffer,表面上来看是这样的。

2023-09-05 22:57:58 1281 1

原创 板载蜂鸣器驱动测试

misc类设备与蜂鸣器驱动

2023-08-27 20:05:01 36

原创 platform平台总线的LED驱动代码实践

1、检查mach-x210.c中是否有led 相关的 platform_device(1726行上下附近都是)注意:platform_device中的name要与platform_driver驱动中相同,否则无法匹配。可能三个led都会匹配上同一个驱动,使得probe函数被执行三次。这就使得每次申请使用后要及时释放,否则第二个设备就无法使用platform_driver了,会出现错误。2、参考mach-mini2440.c中添加led的platform_device定义在mach-x210.c文件中。

2023-08-17 18:54:46 142 1

原创 platform平台总线

platform平台总线详细讲解(下一篇文章讲实践)

2023-08-07 16:40:21 179 1

原创 linux设备驱动模型的底层架构与组织方式

详细分析Linux设备驱动模型

2023-08-06 19:39:34 416

转载 《二》海思HI3518E-----视频输入VI和视频输出VO

海思HI3518E-----视频输入VI和视频输出VO

2023-07-21 18:22:27 756 1

转载 《一》HI3518E视频处理基础知识----- 系统控制mpp

介绍海思提供的媒体处理软件平台(Media Process Platform,简称 MPP)

2023-07-17 18:24:13 250 1

原创 Linux驱动框架与LED实战

介绍驱动框架初步分析led驱动框架源码基于驱动框架写led驱动

2023-05-03 17:50:07 205

原创 动态映射结构体 与 内核提供的读写寄存器接口

动态映射结构体方式操作寄存器内核提供的读写寄存器接口writel和readl;iowrite32和ioread32

2023-04-29 22:48:38 103

原创 自动创建字符设备驱动的设备文件

使用udev自动生成和删除设备文件

2023-04-29 18:14:25 266

原创 注册字符设备驱动新接口

介绍内核中提供的字符设备驱动注册的新接口cdev,并且讲了相关的接口函数,最后实践编写代码。讲述新接口如何自动分配设备号,以及其他一些编程细节如错误的逐级处理技巧。讲述cdev_alloc和cdev_init这两个接口,同时引申讲解了C语言如何以面向对象的编程方式来实现linux内核。

2023-04-28 17:38:15 110

原创 驱动操控硬件(静态、动态控制LED)

驱动操控led与动静态映射

2023-04-25 23:18:21 167

原创 驱动的调用

读写回环测试

2023-04-25 13:13:01 530

原创 字符设备驱动实践

目录思路和框架开始:感受(1)目的:给空模块添加驱动壳子(2)核心工作量:file_operations及其元素填充、注册驱动(1)先定义file_operations结构体变量 其实直接看别人怎么写的,根据自己的需求去修改即可,下面给一个基础的模板:release:file_operations结构体中是没有close的,release实际上是我们理解的close关闭(2)open、release和close等等函数原型确定、内容填充(本例子只printk测试)(3)在module_

2023-04-22 23:21:28 53

原创 嵌入式Linux——字符设备驱动(偏原理)

应用层->API->->硬件应用层调用API:open、read、write、close等驱动源码中提供真正的open、read、write、close等函数实体去操控硬件。

2023-04-22 22:07:54 84 1

原创 Makefile的简单分析与模块的调试

最简单的makefile~~和一些开发板的调试

2023-04-22 15:34:29 221 1

原创 嵌入式Linux:简单的模块源码分析

当前操作系统中执行printk的时候会去对比printk中的打印级别和我的命令行中设置的打印级别,小于我的命令行设置级别的信息会被放行打印出来,大于的就被拦截的。譬如我的ubuntu中的打印级别默认是4,那么printk中设置的级别比4小的就能打印出来,比4大的就不能打印出来。应用编程中包含的头文件是应用层的头文件,是应用程序的编译器带来的(譬如gcc的头文件路径在 /usr/include下,这些东西是和操作系统无关的)。编译模块的内核源码树就是我们编译正在运行的这个内核的那个内核源码树即可。

2023-04-20 14:34:00 683

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除