logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Linux内核链表

***/list_is_last 用于检测一个节点 list 是否为链表 head 中的最后一个节点。换句话说,它检查指定的节点的下一个节点是否指向链表头,从而确定该节点是否是链表中的最后一个有效节点。如果节点 list 是链表中的最后一个节点,则返回 true(非零值),否则返回 false(0)。

文章图片
#linux#链表
Linux设备模型(七) - Netlink

Netlink套接字是用以实现用户进程与内核进程通信的一种特殊的进程间通信(IPC) ,也是网络应用程序与内核通信的最常用的接口。Netlink 是一种特殊的 socket,它是 Linux 所特有的。Netlink 是一种在内核与用户应用间进行双向数据传输的非常好的方式,用户态应用使用标准的 socket API 就可以使用 netlink 提供的强大功能,内核态需要使用专门的内核 API 来使

文章图片
stm32使用PWM波中断的方式精确的控制波的个数

1,假如想要得到如下的波形:每一个波的周期为25us,一组波的频率为10HZ实现思路:实现的时候使用TIM1的CH1和TIM2的CH1,使用TIM15的中断,每100个ms来一次中断,在中断服务函数中以中断的方式打开PWM波的输出,在输出一个PWM波之后会进入PWM的中断服务函数,在中断服务函数中计数PWM波的个数,当达到8个的时候关闭PWM波的中断输出。中断优先级的安排:

使用stm32主从门控模式精确控制脉冲个数

1,主从门控模式的介绍STM32的每个定时器都可以由另一个定时器触发启动定时器一般是通过软件设置而启动,STM32的每个定时器也可以通过外部信号触发而启动,还可以通过另外一个定时器的某一个条件被触发而启动.这里所谓某一个条件可以是定时到时、定时器超时、比较成功等许多条件.这种通过一个定时器触发另一个定时器的工作方式称为定时器的同步,发出触发信号的定时器工作于主模式,接受触发信号而启动的定时器工

stm32的I2C主从模式

1,stm32的I2C总线既可以作为主模式也可以作为从模式作为主模式和作为从模式在CUBE中的配置是一样的,只是i2c设备的地址不一样Timing是时序,是在配置的时候生成的,不需要修改当总线的频率设置为100KHZ的时候,rise time 和fall time 要设置为100nsownAddress就是指的i2c总线的设备地址,该地址可以选择7b

stm32的互补输出和死区插入

1,简介死区,简单解释:通常,大功率电机、变频器等,末端都是由大功率管、IGBT等元件组成的H桥或3相桥。每个桥的上半桥和下半桥是是绝对不能同时导通的,但高速的PWM驱动信号在达到功率元件的控制极时,往往会由于各种各样的原因产生延迟的效果,造成某个半桥元件在应该关断时没有关断,造成功率元件烧毁。死区就是在上半桥关断后,延迟一段时间再打开下半桥或在下半桥关断后,延迟一段时间再打开上半桥,从而避免

4G网络架构

1,4G是第四代移动通信技术,该技术包括TD-LTE和FDD-LTE两种制式,严格意义上来讲LTE只是3.9G,只有升级版的LTEAdvanced才满足国际电信联盟对4G的要求。4G是集3G与WLAN于一体,并能够快速传输数据、高质量、音频、视频和图像等。4G能够以100Mbps以上的速度下载,比目前的家用宽带ADSL(4兆)快25倍,并能够满足几乎所有用户对于无线服务的要求。

input subsystem (四) 内核中的多点触摸协议文档 Multi-touch (MT) Protocol

zh] [1]通过扩展的 ABS_MT_APPROACH_X 和 ABS_MT_APPROACH_Y 消息,可以传递 触摸工具的坐标位置信息。[zh] 最小的组合是ABS_MT_POSITION_X和ABS_MT_POSITION_Y消息,用于跟踪多个触摸点的位置。[zh] ABS_MT_TOUCH_MAJOR / ABS_MT_WIDTH_MAJOR 的比值用来估计压力的大小。[zh] ABS_

文章图片
(八)- mipi dsi

MIPI DSI 屏幕目前广泛应用于手机、平板等产品中,尤其是高清屏幕基本都是采用 MIPI DSI 接口,比如 1080P、2K 级的屏幕。一般低端 ARM 芯片,会提供 RGB 接口来驱动 LCD,中高端 ARM 芯片会提供 MIPI DSI 接口。DSI 全称是 Display Serial InterfaceMIPI:Mobile Industry Processor Interface,

文章图片
(一)- DRM架构

但是 connector 初始化时需要 attach 上一个 encoder object,而这个 encoder object 往往是在另一个硬件驱动中生成的,为了访问该 encoder object,势必会产生一部分耦合的代码。于是,原来的 Encoder 驱动和 LCD 驱动之间的耦合,就转变成了上图中 Encoder 驱动与 drm_panel、drm_panel 与 LCD 驱动之间的“

文章图片
到底了