浅析嵌入式系统
文章平均质量分 94
分享学习嵌入式系统过程中学到的知识,并将工作中的实际运用或练习进行分享
ʚ兔子的先森ɞ
一只立志于养老婆的程序猿。
展开
-
浅析嵌入式系统之uboot详解(7)—初始化SDRAM
uboot详解—初始化SDRAM1. 前言2. SDRAM内存工作原理3. SDRAM连线方式4. SDRAM的读操作5. SDRAM预充电操作6. SDRAM突发操作7. SDRAM写操作8. SDRAM的刷新9. 相关寄存器的配置9.1 BWSCON寄存器(BUS WIDTH & WAIT CONTROL REGISTER)9.2 BANKCON0~BANKCON5 (BANK CONTROL REGISTER)9.3 BANKCON6~BANKCON7 (BANK CONTROL REGIST原创 2022-01-13 11:35:45 · 1577 阅读 · 0 评论 -
浅析嵌入式系统之uboot详解(6)—关闭缓存和mmu
uboot详解—关闭缓存和mmu1. 引言2. 缓存和mmu2.1 缓存及mmu概述2.2 为什么关闭缓存和mmu?3. 分析1. 引言 写了几篇番外,介绍一些uboot相关的知识,稍微有点跑题,但问题不大,我们能hold住,让我们回归uboot启动流程,当设置完时钟分频以后,uboot就会执行cpu_init_crit汇编函数,这个函数的主要作用就是关闭缓存和mmu,然后调用lowlevel_init函数进行系统总线的初始化。 为什么启动的时候,需要关闭缓存和mmu呢?我们先了解一下他们的作用。原创 2022-01-12 20:51:22 · 1627 阅读 · 0 评论 -
浅析嵌入式系统之uboot详解(5.3)—PWM定时器(番外)
uboot详解—PWM定时器(番外)1. 前言2. PWM定时器2.1 概述2.2 实例3. 小结1. 前言 这篇文章是一些拓展内容,如果想了解uboot的启动过程,可以先跳过本章,如果需要掌握一些编写裸机程序或者内核与计时器相关的驱动的知识,可以了解一下。2. PWM定时器2.1 概述 脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在测量、通信到功率控制与变换的许多原创 2022-01-12 14:20:17 · 1107 阅读 · 0 评论 -
【每日闲聊】--- 中间件到底是什么?
♠每日闲聊♣—中间件到底是什么1. 前言2. 中间件的职能和作用3. 中间件的概念4. 中间件的应用1. 前言 我最近在工作中听到很多同事在谈论中间件,但是中间件的确切定义是什么?当我研究中间件时,我发现了很多信息和一些定义,但是在阅读这些信息和定义时,似乎大多数 wares 都处于某种事物的中间,起到连接作用。2. 中间件的职能和作用 而在软件领域,中间件的主要职能和作用是:它使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。原创 2021-12-22 15:03:30 · 649 阅读 · 0 评论 -
浅析嵌入式系统之uboot详解(5.2)—省电模式(番外)
uboot详解—省电模式(番外)1. 前言2. 省电模式1. 前言 可以看到标题出现了特殊的字眼—番外,原因是本篇文章的内容与uboot启动关系并不大,这篇文章将对uboot的省电模式进行分析,如果关心uboot的启动过程,可以跳过这节以及后面的小节,直接到第6章。2. 省电模式 省电模式和cpu的工作模式(异常)其实关系也不大,省电模式主要是依靠时钟来分类的,因为外设的工作必须要时钟,当停止给外设提供时钟的时候,相应的外设也会停止工作,所以省电管理就是根据控制是否给相应的设备提供时钟或电源来达原创 2021-12-08 20:00:30 · 539 阅读 · 0 评论 -
浅析嵌入式系统之uboot详解(5.1)—时钟分频
uboot详解—时钟分频1. 前言2. 时钟分频2.1 怎么产生这些不同的频率?2.2 处理器怎么与自己不同频率的外设实现交互?2.3 设置时钟分频2.4 补充:锁相环的工作原理3. 总结1. 前言 如果cpu是计算机的大脑,电流是计算机的血液,那么时钟则是计算机的心脏,时钟频率决定了处理器运算的快慢,它的每一次“跳动”都驱动着处理器不停的执行命令。不同的是,人的各个部位心率是一样的,但计算机却有多个频率,而且每个部位可能有不同的频率,比如“大脑”有一个频率,“手“有一个频率,“脚”使用的是另外一个频原创 2021-12-07 17:50:36 · 1619 阅读 · 0 评论 -
浅析嵌入式系统之uboot详解(4.3)—异常和异常向量
uboot详解—异常和异常向量1. 前言2. 处理器异常模式3. 异常的处理过程4. 总结1. 前言 中断是一个较难掌握知识,因为它是一个过程,而不是一个结果,其中的步骤都建立在理论的层面上,需要理解。比如按下按键1会使led1亮,这个“起因-结果”的操作我想小孩子也能掌握,因为它是一个现象,但是要掌握“起因-过程-结果”却需要花一些功夫,因为这个过程需要理解。如果你认真的了解了前面两节的内容,那么现在就该到了实现“过程”的时候了。 前面两节分析了外部中断和内部中断相关的内容,这篇文章将对处理器的原创 2021-12-02 19:52:07 · 1246 阅读 · 1 评论 -
浅析嵌入式系统之uboot详解(4.2)—外部中断(GPIO)
uboot详解—外部中断 GPIO1. 前言2. 外部中断3. 总结1. 前言 上一篇我们介绍了内部中断相关的寄存器,从内部中断源的产生到触发cpu处理的过程,这一篇我们要介绍外部中断。 外部中断一般是指由计算机外设发出的中断请求,如:键盘中断、打印机中断、定时器中断等。外部中断是可以屏蔽的中断,也就是说,利用中断控制器可以屏蔽这些外部设备 的中断请求。2. 外部中断 由ARM 处理器的芯片原理图,可以看出除了一些特殊的外接功能引脚外,GPIO引脚占了绝大部分。GPIO是General Pu原创 2021-11-26 16:04:00 · 1073 阅读 · 0 评论 -
浅析嵌入式系统之uboot详解(4.1)—内部中断
uboot详解—内部中断1. 前言2. 中断处理流程3. 总结1. 前言 中断这个概念相信都不会陌生,它就是一个信号,告诉cpu先将当前的任务放一放,先去处理一下别的紧急事情。比如自己在家里打扫卫生,这时有客人来了,客人就会按一下门铃,然后自己马上放下当前的事情,去给客人开门,然后继续打扫卫生。这个过程就是一个中断处理过程,门铃声就是一个信号,告诉你有更重要的事情发生了,然后你停下做当前的事情,去处理突发的事情,这个处理突发事情的过程叫中断处理过程。 当然也有可能多个中断信号同时发生的情况,比如门原创 2021-11-25 15:41:18 · 1373 阅读 · 0 评论 -
浅析嵌入式系统之uboot详解(3)—看门狗
uboot详解—看门狗1. 前言2. 看门狗的种类3. 总结1. 前言 uboot启动时,当将cpu运行模式设置为管理模式后,就要关闭看门狗了,那么看门狗是干什么的呢? 狗狗是我们的好朋友,有时候,一条好狗狗能够救主人的性命,”看门狗“是cpu的“好朋友”,它也能够在cpu出状况的时候把它救活。 看门狗其实就是一个可以在一定时间内被复位的计数器,当看门狗启动后,计数器开始自动计数,经过一定时间,cpu就会将这个计数器复位,如果没有被复位,计数器溢出就会对CPU产生一个复位信号使系统重启,这个复原创 2021-11-24 17:15:40 · 2991 阅读 · 0 评论 -
浅析嵌入式系统之uboot详解(2)—CPU工作模式
uboot详解—CPU工作模式原创 2021-11-24 14:08:30 · 1265 阅读 · 1 评论 -
浅析嵌入式系统之uboot详解(1)—板子上电后uboot做了什么
uboot详解—板子上电后uboot做了什么原创 2021-11-03 14:46:57 · 2291 阅读 · 0 评论 -
浅析嵌入式系统之Linux内核架构和工作原理
浅析嵌入式系统 Linux内核架构和工作原理1. 学习Linux内核预备工作Linux内核:作用是将应用层序的请求传递给硬件,并充当底层驱动程序,对系统中的各种设备和组件进行寻址。目前支持模块的动态装卸(裁剪)。Linux内核就是基于这个策略实现的。Linux进程1.采用层次结构,每个进程都依赖于一个父进程。内核启动init程序作为第一个进程。该进程负责进一步的系统初始化操作。init进程是进程树的根,所有的进程都直接或者间接起源于该进程。virt/ ---- 提供虚拟机技术的支持。1. 学习Linux原创 2021-11-02 13:44:57 · 4075 阅读 · 0 评论 -
浅析嵌入式系统之OS与kernel
浅析嵌入式系统 kernel1. 内核的基本介绍2. 内核的分类2.1 单内核2.2 微内核2.3 混合内核2.4 外内核3. 单内核与微内核的比较kernel(内核)是操作系统最基本的部分。它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并且内核决定一个程序在什么时候对某部分硬件操作多长时间。内核的分类可分为单内核和双内核以及微内核。严格地说,内核并不是计算机系统中必要的组成部分。1. 内核的基本介绍内核,是一个操作系统的核心。是基于硬件的第一层软件扩充,提供操作系统的最原创 2021-10-29 16:35:15 · 2423 阅读 · 0 评论 -
浅析嵌入式系统之uboot常用命令
浅析嵌入式系统 uboot常用命令uboot常用命令11.1 类似linux终端的行缓冲命令行1.2 命令中的特殊符号(如单引号)1.3 有些命令是一个命令族(如movi)1.4 第一个命令:printenv/printuboot常用命令22.1 设置(添加/更改)环境变量:setenv/set2.2 保存环境变量的更改:saveenv/save2.3 网络测试指令:pinguboot常用命令33.1 tftp下载指令:tftpuboot常用命令44.1 SD卡/iNand操作指令movi4.2 NandF原创 2021-10-28 20:26:43 · 315 阅读 · 1 评论 -
浅析嵌入式系统之uboot概述
浅析嵌入式系统 ubootuboot1. 相关基础介绍1.1 计算机系统的主要部件1.2 PC机的启动过程1.3 典型嵌入式linux系统启动过程1.4 android系统启动过程1.5 总结2. uboot 的来源2.1 uboot 从哪里来的2.2 uboot 的发展历程2.3 uboot 的版本号问题2.4 uboot 的可移植性的正确理解3. uboot 必须解决哪些问题4. uboot 的工作方式4.1 从裸机程序镜像 uboot.bin 说起4.2 uboot 的命令式shell界面4.3 掌握原创 2021-10-28 17:20:03 · 1243 阅读 · 0 评论 -
浅析嵌入式系统之bootloader
浅析嵌入式系统 bootloaderBootLoaderBootloader 的作用主要功能Bootloader 在嵌入式系统中的角色操作模式启动过程对于计算机系统来说,从开机上电到操作系统启动需要一个引导过程。嵌入式Linux系统同样离不开引导程序,这个引导程序就叫作Bootloader。BootLoader在嵌入式操作系统中,BootLoader是在操作系统内核运行之前运行。可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境。原创 2021-10-28 14:43:43 · 3895 阅读 · 0 评论