logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

深入解析Linux内核Console框架及虚拟UART控制台的实现

本文深入探讨Linux内核的Console框架,解析其设计思路及作用,特别是在TTY框架基础上构建Console接口的意义。从内核日志输出与人机交互需求出发,剖析Console结构体的关键字段和功能。同时,结合具体代码实例,展示如何编写虚拟UART控制台驱动,包括控制台的初始化、日志写入、与TTY设备的绑定等过程。通过对驱动注册、命令行参数解析及设备关联的详细介绍。

文章图片
#嵌入式硬件#嵌入式#arm开发
Linux内核早期打印机制与RS485通信技术

本文围绕Linux内核早期打印机制和RS485通信技术展开,详细解析了early_printk和earlycon的实现与使用场景,以及RS485的基础原理和应用实践。在早期打印部分,阐明了early_printk和earlycon的区别:前者通过手动实现打印函数实现早期日志输出,后者则结合设备树实现灵活硬件映射,适用于现代系统。在RS485部分,介绍了其差分信号传输、抗干扰能力强等技术特点,并结合

文章图片
#嵌入式硬件#arm开发#嵌入式
Linux内核中IRQ Domain的结构、操作及映射机制详解

本文系统地介绍了Linux内核中IRQ(中断请求)Domain的基本概念、数据结构和使用方法。通过struct irq_domain结构体,内核管理HW interrupt ID和IRQ number之间的映射。不同映射类型如线性映射、树状映射和无映射,满足了各种硬件需求,适配从小型嵌入式系统到复杂的多级中断控制器架构。文中详细说明了irq_domain_ops回调函数、映射注册流程以及分配策略,

文章图片
#嵌入式#arm开发#嵌入式硬件
深入解析Linux内核中断管理:从IRQ描述符到irq domain的设计与实现

探讨了Linux内核中断管理的核心结构与流程,涵盖从IRQ编号到中断描述符(irq_desc)的构建,揭示了内核如何通过irq domain将硬件中断ID映射为逻辑IRQ编号,从而实现跨平台的灵活中断管理。介绍了IRQ number与HW interrupt ID的区别与映射关系,解析了irq_desc结构体的各个字段在中断处理中的作用,如高层中断处理函数(handle_irq)、中断操作链(ac

文章图片
#嵌入式#arm开发#嵌入式硬件
input子系统的框架和重要数据结构详解

回顾字符设备驱动程序框架的编写;讲解input子系统给的框架:涵盖了 Input 核心层、处理层与设备树集成等关键概念;讲解input子系统的相关重要结构体:input_dev、input_handler、input_handle、input_event、input_value

文章图片
#arm开发#嵌入式
stm32之DMA

详细讲解关于stm32f103的DMA直接存储器存取,包括存储器映射、DMA框图、基本结构体介绍、DMA请求内容、数据宽度与对齐、DMA如何进行工作(数据转运和ADC扫描模式)。以及介绍DMA相关的结构体和api函数,包括DMA转运和AD多通道讲解。

文章图片
#stm32#嵌入式硬件#单片机 +1
stm32之GPIO输入输出讲解

GPIO引脚可配置为数字输入或输出,也支持模拟信号输入。其工作模式包括浮空输入、上拉输入、下拉输入、模拟输入以及不同的输出模式,如开漏输出、推挽输出等。GPIO通过内置的寄存器控制引脚状态,提供了高效的电平控制功能。对于输入模式,GPIO能读取外部信号的电平,用于按钮、传感器等的状态监测;而在输出模式下,GPIO可以驱动LED、蜂鸣器等外部设备。

文章图片
#stm32#单片机#嵌入式
使用GPIO模拟I2C的驱动程序分析:i2c-gpio.c

GPIO模拟I2C是一种利用GPIO引脚模拟I2C总线的方法,适用于I2C接口不够用的场景。I2C协议通过SDA和SCL两根线实现双向数据传输,并通过开漏结构和上拉电阻实现设备间的通信。使用GPIO模拟时,需要将引脚设置为开漏输出并配置相应的时序。Linux内核提供了I2C-GPIO驱动,支持通过设备树或平台数据配置SDA和SCL引脚。驱动通过i2c_algo_bit_data结构体设置I2C的操

文章图片
#嵌入式#arm开发#c语言
libevent框架、带缓冲区事件bufferevent的使用

如何下载libevent库和如何去编写一个libevent框架,对其函数的相关介绍(event_base_new、event_add、event_base_dispatch等);未决和非未决事件的介绍;带缓冲区事件bufferevent的介绍(evconnlistener_new_bind、bufferevent_socket_new、bufferevent_setcb、bufferevent_s

文章图片
#linux#网络
stm32之IIC

万字讲解关于stm32f103的IIC,包括I2C的硬件电路、时序基本单位、时序实例。讲解IIC通信外设的框图、基本结构、主机发送和接收。同时讲解IIC相关的结构体和API函数,并采用硬件方式去使用MPU6050

文章图片
#stm32#嵌入式
    共 27 条
  • 1
  • 2
  • 3
  • 请选择