logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Vivado SDK 中 XScuGic(ARM Cortex-A9 SCU GIC 中断控制器)相关函数

摘要:本文介绍了Xilinx中断控制器(XScuGic)的关键API函数,包括初始化配置(XScuGic_CfgInitialize)、中断连接管理(Connect/Disconnect)、中断使能控制(Enable/Disable)、软件触发中断(SoftwareIntr)、优先级与触发类型设置(SetPriorityTriggerType)、多核中断映射(InterruptMaptoCpu等)

文章图片
#arm开发#嵌入式硬件
嵌入式Linux—点阵字符显示原理与代码实现(从困惑到通透)

本文解析了8x16点阵字符显示的两层坐标逻辑:屏幕全局坐标(x,y)和字符内部局部坐标(i,b)。详细说明了点阵数据的二进制映射原理,每个字符由16字节数据组成,每位对应一个像素点。提供了完整的字符显示函数实现,包括核心函数lcd_put_ascii、像素绘制函数lcd_put_pixel和字库数据定义。重点强调了坐标转换关系、字库匹配、坐标越界检查和颜色格式适配等关键注意事项。该方案可直接应用于

文章图片
#linux
嵌入式开发基础知识补充—内存的种类和C语言变量的存储位置(非易失性存储和易失性存储)

这篇文章通过“开公司”的比喻,生动解释了MCU中Flash和SRAM的区别与联系: 硬件基础 Flash(仓库):非易失性存储,存放程序代码和常量数据,容量大但读写慢,适合长期存储。 SRAM(办公室):易失性存储,存放变量和运行时数据,速度快但容量小,适合频繁读写。 C语言映射 SRAM分为.data(已初始化变量)、.bss(未初始化变量)、堆(动态内存)和栈(函数局部变量)。

#c语言#嵌入式
嵌入式 Linux 字符设备驱动编写:从原理到实战

本文详细介绍了嵌入式Linux字符设备驱动的开发流程,通过一个完整的hello字符设备驱动案例,解析了驱动开发的核心步骤和关键知识点。主要内容包括:驱动层实现设备注册、文件操作接口定义和自动创建设备节点;应用层通过标准文件IO接口验证驱动功能。重点阐述了file_operations结构体的作用、内核与应用层的数据交互机制(copy_to/from_user)、驱动入口/出口函数实现,以及自动创建

文章图片
#linux
STM32F103C8T6学习——直接存储器访问(DMA)标准库实战1(入门级 - “解放CPU的直观展示”)

本项目演示了在STM32F103C8T6微控制器上,如何利用直接内存访问(DMA)技术实现高效的串口(UART)数据传输。核心程序在主循环中周期性地调用函数,以非阻塞方式启动DMA传输。CPU仅需下达该指令,便可从繁琐的数据搬运任务中解放出来,转而处理其他逻辑。DMA控制器则在后台自主完成内存到UART外设的数据传送。最终,PC串口助手成功接收到开发板循环发送的信息,验证了CPU主程序与DMA数据

文章图片
#stm32#学习#嵌入式硬件
STM32F103C8T6学习——直接存储器访问(DMA)标准库实战3(ADC数据采集+DMA回传)

本文介绍了一个基于STM32F103C8T6微控制器的双通道模拟信号采集系统。系统采用ADC1(光敏和红外传感器输入)、DMA1(双通道数据自动传输)和USART1(串口通信)等外设,构建了高效的数据采集流水线。通过DMA实现ADC数据自动搬运至内存数组,CPU仅需定期格式化数据并通过DMA发送至上位机,显著降低了CPU占用率。重点阐述了ADC连续扫描模式配置、DMA循环传输机制及volatile

文章图片
#stm32#学习#嵌入式硬件
兴趣爱好——虾哥开源小智AI机器人搭建(丐版—最低成本)ESP32开发板 MicroPython V1.0.0 Rev1

本文介绍了ESP32在VSCode+ESP-IDF环境下的丐版搭建教程,重点解决烧录成功后无现象的常见问题。主要原因是ESP32处于下载模式而非运行模式,表现为rst:0x1和boot:0x7的启动状态。提供了三种解决方案:硬件复位操作、检查GPIO0连接状态以及强制退出下载模式。特别提醒初学者在前期测试阶段不要过早引出GPIO0作为唤醒开关,建议先确保OLED正常显示后再进行相关操作。文中还提供

文章图片
到底了