news 2026/6/10 1:13:31

ARM架构—— IMX6ULL芯片

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ARM架构—— IMX6ULL芯片

一、LED点灯相关寄存器配置

IMX6ULL 的 GPIO 属于 IOMUXC(输入输出复用控制器)和 GPIO 模块共同管理,点灯本质是将指定引脚配置为 GPIO 输出模式,并控制其高低电平。核心分为两大步骤:引脚复用配置GPIO 功能配置

1.IOMUXC 模块寄存器(引脚复用 / 电气属性配置)

寄存器类型作用
IOMUXC_SW_MUX_CTL_PAD_XXX引脚复用选择(MUX 寄存器):设置引脚功能为 GPIO
IOMUXC_SW_PAD_CTL_PAD_XXX引脚电气属性配置(PAD 寄存器):设置上下拉、驱动能力、速率、摆率等

2.GPIO模块寄存器

寄存器名称地址偏移作用
GPIOx_GDIR0x00方向寄存器:配置 GPIO 为输入(0)或输出(1)
GPIOx_DR0x04数据寄存器:写 1/0 控制输出高 / 低电平;读可获取输入电平

3.CCM时钟寄存器

寄存器名称地址偏移核心作用
CCM_CCGR0 ~ CCM_CCGR60x60 ~ 0x78时钟门控寄存器(最核心):控制各外设时钟的开启 / 关闭

二、.ELF文件格式

段名中文名称权限存储数据类型
.text代码段只读、可执行程序的可执行指令(函数、main、汇编指令、分支 / 跳转指令等)
.data数据段可读、可写已初始化的全局 / 静态变量(非 0 值)
.bss未初始化数据段可读、可写未初始化/初始化为0的全局/静态变量
.rodata只读数据段只读常量数据(字符串常量、const 修饰的全局变量、宏定义常量等)
.stack栈段可读、可写函数调用栈(局部变量、函数参数、返回地址、栈帧指针等)
.heap堆栈可读、可写动态内存分配区域(malloc/free、kmalloc/kfree 申请的内存)

三、链接脚本的作用

编译器编译出的目标文件(.o)只是零散的段,不知道自己该放在内存 / Flash 的哪个地址。链接脚本,解决两个核心问题:

1.地址映射:把 ELF 的逻辑段(.text/.data 等)绑定到物理存储地址;

2.内存布局:定义程序在存储介质(Flash/RAM)中的分布规则。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/9 21:24:38

Paraformer-large离线版部署教程:无需联网的语音识别方案

Paraformer-large离线版部署教程:无需联网的语音识别方案 1. 简介与核心价值 你是否遇到过这样的问题:需要将一段长达数小时的会议录音转成文字,但网上的语音识别服务要么按分钟收费、要么限制文件大小、还要求全程联网?更麻烦的…

作者头像 李华
网站建设 2026/6/9 22:37:12

单图+批量双模式!Unet人像卡通化完整功能解析

单图批量双模式!Unet人像卡通化完整功能解析 1. 功能亮点与核心价值 你有没有想过,一张普通的人像照片,只需要几秒钟,就能变成漫画风格的酷炫头像?现在,这个想法已经可以轻松实现。 今天要介绍的这款基于…

作者头像 李华
网站建设 2026/6/9 22:49:33

零基础玩转YOLOv13:官方镜像让学习更简单

零基础玩转YOLOv13:官方镜像让学习更简单 你是不是也曾经被复杂的环境配置、依赖冲突和版本问题劝退过?想学目标检测,却被“pip install 失败”、“CUDA 不兼容”、“找不到模块”这些报错搞得心力交瘁? 别担心,今天…

作者头像 李华
网站建设 2026/6/9 22:49:09

Flutter 简单的应用开发详解:从代码到页面的完整构建流程

Flutter 简单的应用开发详解:从代码到页面的完整构建流程 个人主页:晚霞的不甘 开源鸿蒙专栏:Flutter与开源鸿蒙实战开发 配置文章:详细讲述了环境的配置 本文将分步骤详细讲解一个简单 Web 页面的由来与实现过程。我们将从项目结…

作者头像 李华
网站建设 2026/6/9 23:36:05

RTX4090实测!Z-Image-ComfyUI本地运行速度惊人

RTX4090实测!Z-Image-ComfyUI本地运行速度惊人 你有没有想过,用一台普通电脑、一张消费级显卡,在几秒内生成一张细节丰富、语义精准的10241024高清图像?这不是科幻电影里的桥段,而是现在就能实现的真实体验。 就在最…

作者头像 李华
网站建设 2026/6/9 3:33:17

彻底搞懂size_t与ssize_t:从标准定义到实际应用场景

第一章:size_t与ssize_t的起源与标准定义 在C和C语言中,size_t 和 ssize_t 是用于表示内存大小和有符号尺寸的关键类型。它们的引入源于跨平台开发中对可移植性的需求。不同架构下的指针和整型长度存在差异,直接使用 int 或 long 可能导致不…

作者头像 李华