驱动开发

ShiMetaPi14 小时前
驱动开发·开源·鸿蒙系统·openharmony·南向开发
【ShiMetaPi M4-R1】上手:RK3568B2 |开源鸿蒙(OpenHarmony) 开发板上手指南ShimetaPi M4-R1 V1.0 是一款高性能嵌入式主板,搭载 Rockchip RK3568B2 四核 Cortex-A55 处理器,主频最高 2.0GHz,支持 LPDDR4/LPDDR4X 内存,标配 4GB,并集成 ARM Mali-G52 2EE GPU,具备强大的图形处理与硬件解码能力。
滴滴滴嘟嘟嘟.1 天前
linux·运维·驱动开发
嵌入式Linux驱动开发:蜂鸣器驱动本文档详细记录了基于i.MX6ULL处理器的蜂鸣器驱动开发过程。内容涵盖驱动的理论基础、代码实现、设备树配置以及用户空间应用程序的编写。本文档严格遵循用户提供的代码和文档,确保理论与实践的紧密结合。本文档旨在为嵌入式Linux驱动开发者提供一份详尽的参考,帮助理解平台驱动模型、设备树的使用以及字符设备驱动的实现。
jz-炸芯片的zero1 天前
驱动开发·算法·iot·rtos·内存泄露·zephyr
【Zephyr炸裂知识系列】11_手撸内存泄露监测算法在嵌入式系统开发中,内存泄漏是一个常见且难以调试的问题。特别是在资源受限的物联网或单片机设备中,即使是微小的内存泄漏,长期运行后也可能导致系统崩溃。世面上有Valgrind、AddressSanitizer等强大的工具,但对于资源受限的嵌入式设备,这些工具往往过于庞大或无法使用,而手动检查又效率低下。 为此,我们本文将介绍一种轻量级的内存泄露检测算法,专为RTOS环境设计,它能够在资源受限的环境中实时监测内存使用情况,准确识别内存泄漏和错误操作。本文将详细介绍该检测器的核心架构、使用方法和实际测试效果。
滴滴滴嘟嘟嘟.2 天前
linux·驱动开发·嵌入式硬件
嵌入式Linux驱动开发:i.MX6ULL中断处理本文档基于提供的imx6uirq.c、tasklet.c、work.c源码以及imx6ull-alientek-emmc.dts设备树文件,详细解析了i.MX6ULL平台上的中断驱动开发。重点分析了中断处理的三种方式:直接处理、软中断(tasklet)和工作队列(workqueue),并结合设备树配置,全面阐述了中断驱动的理论基础和实现细节。
信工 18024 天前
linux·驱动开发
中断下文---linux驱动开发1、什么是tasklet tasklet是中断处理中断下文常用的一种方法,tasklet是一种特殊的软中断。处理中断下文的机制还有工作队列和软中断。 2、怎么使用tasklet来设计中断下文 框图: linux把中断分成两个部分,一个是上半部分,一个是下半部分。上半部分我们值处理紧急的事情;同时调用tasklet来启动中断下文,比较消耗事件的就要放到下文来处理。调用tasklet以后,tasklet绑定的函数并不会立马执行,而是出中断以后,经过一个很短的不确定时间在来执行。 3、tasklet定义 tas
花小璇学linux5 天前
linux·驱动开发·嵌入式软件
imx6ull-驱动开发篇42——Linux I2C 驱动框架简介目录I2C 总线驱动i2c_adapter结构体i2c_algorithm 结构体注册函数删除函数I2C 设备驱动
凌肖战5 天前
linux·驱动开发
编写Linux下设备驱动时两种方案:内核态驱动开发和用户态驱动开发本文简单来学习一下,编写Linux下设备驱动代码时,可以从两种实现方式实现:内核态驱动开发和用户态驱动开发。
猫猫的小茶馆6 天前
驱动开发·stm32·单片机·嵌入式硬件·mcu·智能硬件
【STM32】CubeMX(十二):FreeRTOS消息队列这篇文章主要介绍 使用 STM32 + HAL 库 + FreeRTOS 消息队列 实现任务间通信的完整过程。
路溪非溪6 天前
linux·运维·驱动开发
嵌入式Linux驱动开发杂项总结本文主要记录一些比较杂的内容进行Linux嵌入式开发时,移植uboot时要移植到什么程度,需要实现uboot的所有功能吗?
被遗忘的旋律.6 天前
linux·驱动开发·笔记
Linux驱动开发笔记(七)——并发与竞争(上)——原子操作视频:第10.1讲 Linux并发与竞争试验-并发与竞争基础概念与原子操作_哔哩哔哩_bilibili
花小璇学linux7 天前
linux·驱动开发·嵌入式软件
imx6ull-驱动开发篇41——Linux RTC 驱动实验目录I.MX6U 内部 RTC 驱动snvs_rtc 设备节点snvs_rtc_probe 函数snvs_rtc_ops操作集
程序员 _孜然8 天前
linux·运维·驱动开发·嵌入式硬件·ubuntu·debian
Ubuntu/Debian修改网卡名字enP3p49s0为eth0网卡3名字enP3p49s0想要修改为eth0,现在的网卡名是 systemd/udev 的可预测命名规则导致的,给网卡写 udev 规则即可改成eth0 方法一:永久改名
白书宇10 天前
linux·c语言·驱动开发·嵌入式硬件·microsoft·iot
12.从零开始写LINUX内核--控制台初始化在 Linux 0.12 内核的启动流程中,控制台初始化是连接硬件与用户的第一座桥梁。它通过识别显示器类型、配置显存映射和端口参数,为后续的内核信息输出与用户交互奠定基础。本文将基于完整源码,系统解析控制台初始化的核心逻辑与实现细节。
dujunqiu10 天前
arm开发·驱动开发·单片机
S32K328(Arm Cortex-M7)适配CmBacktrace错误追踪CmBacktrace 相当于重写了hard_fault函数,在hard_fault函数里面去分析SCB寄存器的信息和堆栈信息,然后把这些信息打印出来(或者写到flash);通过使用串口输出产生hard_fault的堆栈信息,然后利用addr2line工具反推出具体的代码执行函数,快速定位hard_fault问题;
花小璇学linux11 天前
linux·驱动开发·嵌入式软件
imx6ull-驱动开发篇31——Linux异步通知目录异步通知异步通知概念信号signal 函数驱动中的信号处理fasync_struct 结构体fasync 函数
sukalot13 天前
数据库·驱动开发·音视频
window显示驱动开发—在混合系统中使用跨适配器资源从 Windows 8.1 开始,Windows 显示驱动程序模型 (WDDM) 驱动程序可以支持混合系统,其中跨适配器资源在集成 GPU 和离散 GPU 之间共享,应用程序可以在任一 GPU 上运行,具体取决于应用程序的需求。 操作系统和驱动程序共同确定应用程序应在哪个 GPU 上运行。
花小璇学linux14 天前
linux·驱动开发·嵌入式软件
imx6ull-驱动开发篇24——Linux 中断API函数目录Linux 中断 API 函数中断号request_irq 函数函数参数独占中断(非共享)共享中断
花小璇学linux15 天前
linux·运维·驱动开发
imx6ull-驱动开发篇22——Linux 时间管理和内核定时器目录内核时间管理系统节拍率高/低节拍率的优缺点jiffies 节拍数时间绕回时间转换函数内核定时器timer_list 结构体
小狗爱吃黄桃罐头15 天前
linux·驱动开发·学习
正点原子【第四期】Linux之驱动开发篇学习笔记-1.1 Linux驱动开发与裸机开发的区别本文是根据哔哩哔哩网站上“正点原子【第四期】手把手教你学Linux系列课程之 Linux驱动开发篇”视频的学习笔记,该课程配套开发板为正点原子alpha/mini Linux开发板。在这里会记录下正点原子 I.MX6ULL 开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了正点原子教学视频和链接中的内容。
sukalot16 天前
驱动开发
window显示驱动开发—验证混合系统配置此过程从 Windows 8.1 开始用于验证显示适配器混合系统的配置:2.1 集成适配器驱动配置2.2 离散适配器驱动配置