摘要: Linux 中的设备驱动程序是连接硬件设备和操作系统之间的重要桥梁,确保硬件设备能够在操作系统控制下正常工作。在 Linux 中,设备驱动主要分为三大类:字符设备驱动、块设备驱动和网络设备驱动。下面我将详细解释这三类驱动的特点、用途和区别。 字符设备驱动 字符设备驱动程序主要用于那些按字符(byte 阅读全文
posted @ 2024-06-03 16:34 Bathwind_W 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 终于这几天把这个移植的流程过了一遍,所以特此回来总结。 U-boot移植 首先是U-boot移植。Linux 系统要启动就必须需要一个 bootloader 程序,也就说芯片上电以后先运行一段bootloader 程序。这段bootloader程序会先初始化DDR等外设,然后将Linux内核从fla 阅读全文
posted @ 2024-06-02 20:00 Bathwind_W 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 链接脚本 vmlinux.lds 示例代码 36.1.1 vmlinux.lds 链接脚本 492 OUTPUT_ARCH(arm) 493 ENTRY(stext) 494 jiffies = jiffies_64; 495 SECTIONS 496 { 497 /* 498 * XXX: The 阅读全文
posted @ 2024-05-30 10:15 Bathwind_W 阅读(4) 评论(0) 推荐(0) 编辑
摘要: makefile分析: 分析linux makefile文件时候我们需要在vscode下设置屏蔽下不用的文件夹。具体来说可以先建立一个.vscode文件夹和setting.json。具体内容为: {"search.exclude": { "**/node_modules": true, "**/bo 阅读全文
posted @ 2024-05-30 09:26 Bathwind_W 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 链接脚本 u-boot.lds 详解 要分析 uboot 的启动流程,首先要找到“入口”,找到第一行程序在哪里。程序的链接是由链接脚本来决定的,所以通过链接脚本可以找到程序的入口。如果没有编译过 uboot 的话链接脚本为 arch/arm/cpu/u-boot.lds。 打开u-boot.lds可 阅读全文
posted @ 2024-05-27 22:45 Bathwind_W 阅读(105) 评论(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 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 大部分情况下都是使用 C 语言去编写的。只是在开始部分用汇编来初始化一下 C 语言环境,比如初始化 DDR、设置堆栈指针 SP 等等,当这些工作都做完以后就可以进入 C 语言环境,也就是运行 C 语言代 码,一般都是进入 main 函数。所以我们有两部分文件要做: ①、汇编文件 汇编文件只是用来完成 阅读全文
posted @ 2024-05-10 10:40 Bathwind_W 阅读(4) 评论(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 阅读(1) 评论(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 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 今天学习linuxC编程。首先要熟悉linux下编写c程序的过程。 编写程序Hello World! 首先创建存放程序的文件夹,如下图所示: 接下来在创建一个文件夹来保存这节要编写的代码。指令:mkdir 3.1 接下来我们要设置VIM编辑器的一些配置,比如设置tab的字符数为4、以及设置VIM编辑 阅读全文
posted @ 2024-05-06 20:02 Bathwind_W 阅读(2) 评论(0) 推荐(0) 编辑