摘要: 链接脚本 u-boot.lds 详解 要分析 uboot 的启动流程,首先要找到“入口”,找到第一行程序在哪里。程序的链接是由链接脚本来决定的,所以通过链接脚本可以找到程序的入口。如果没有编译过 uboot 的话链接脚本为 arch/arm/cpu/u-boot.lds。 打开u-boot.lds可 阅读全文
posted @ 2024-05-27 22:45 Bathwind_W 阅读(563) 评论(0) 推荐(0) 编辑
摘要: 当我们拿到开发板以后,是有三种 uboot 的,这三种 uboot的区别如表所示: U-Boot 初次编译 首先在 Ubuntu 中安装 ncurses 库, 否则编译会报错: sudo apt-get install libncurses5-dev 将正点原子提供的uboot-imx-2016.0 阅读全文
posted @ 2024-05-25 23:34 Bathwind_W 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 大部分情况下都是使用 C 语言去编写的。只是在开始部分用汇编来初始化一下 C 语言环境,比如初始化 DDR、设置堆栈指针 SP 等等,当这些工作都做完以后就可以进入 C 语言环境,也就是运行 C 语言代 码,一般都是进入 main 函数。所以我们有两部分文件要做: ①、汇编文件 汇编文件只是用来完成 阅读全文
posted @ 2024-05-10 10:40 Bathwind_W 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 嵌入式Linux学习第四天 今天学习I.MX6U 启动方式详解。I.MX6U有多种启动方式,可以从 SD/EMMC、NAND Flash、QSPI Flash等启动。 启动方式选择 BOOT 的处理过程是发生在 I.MX6U 芯片上电以后,芯片会根据 BOOT_MODE[1:0]的设置来选择 BOO 阅读全文
posted @ 2024-05-08 20:58 Bathwind_W 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 嵌入式linux学习第三天汇编语言点灯 今天学习如何在linux板子上点灯。 I.MX6U GPIO 详解 我们发现I.MX6U GPIO是分为两类的,:SNVS 域的和通用的。在讨论i.MX6U或类似的复杂微处理器时,了解其GPIO(通用输入输出)引脚的不同分类是很重要的。i.MX6U的GPIO引 阅读全文
posted @ 2024-05-07 22:21 Bathwind_W 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 今天学习linuxC编程。首先要熟悉linux下编写c程序的过程。 编写程序Hello World! 首先创建存放程序的文件夹,如下图所示: 接下来在创建一个文件夹来保存这节要编写的代码。指令:mkdir 3.1 接下来我们要设置VIM编辑器的一些配置,比如设置tab的字符数为4、以及设置VIM编辑 阅读全文
posted @ 2024-05-06 20:02 Bathwind_W 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 参考正点原子Linux开发文档。记录下知识点。 Shell 基本操作 前面我们说 Shell 就是“敲命令”,那么既然是命令,那肯定是有格式的,Shell 命令的格式 如下: command -options [argument] command: Shell 命令名称。 options:选项,同一 阅读全文
posted @ 2024-05-06 09:45 Bathwind_W 阅读(13) 评论(0) 推荐(0) 编辑
摘要: FreeRTOS 软件定时器 FreeRTOS 也提供了定时器功能,不过是软件定时器,软件定时器的精度肯定没有硬件定时器那么高,但是对于普通的精度要求不高的周期性处理的任务来说够了。当 MCU 的硬件定时器不够的时候就可以考虑使用 FreeRTOS 的软件定时器 软件定时器简介 软件定时器允许设置一 阅读全文
posted @ 2024-05-04 15:00 Bathwind_W 阅读(207) 评论(0) 推荐(0) 编辑
摘要: FreeRTOS任务通知 FreeRTOS 新增了任务通知(Task Notifictions)这个功能,可以使用任务通知来代替信号量、消息队列、事件标志组等这些东西。使用任务通知的话效率会更高,任务通知在 FreeRTOS 中是一个可选的功能, 使用队列、信号量、事件标志组时都需另外创建一个结构体 阅读全文
posted @ 2024-05-03 20:13 Bathwind_W 阅读(57) 评论(0) 推荐(0) 编辑
摘要: FreeRTOS 事件标志组 使用信号量来完成同步,但是使用信号量来同步的话任务只能与单个的事件或任务进行同步。有时候某个任务可能会需要与多个事件或任务进行同步,此时信号量就无能为力了。 事件位用来表明某个事件是否发生,事件位通常用作事件标志,事件标志组是一组事件标志位的集合, 可以简单的理解事件标 阅读全文
posted @ 2024-05-03 10:42 Bathwind_W 阅读(49) 评论(0) 推荐(0) 编辑