ARM裸机:基础了解

ARM的几种版本号

ARM内核版本号 ARMv7
ARM SoC版本号 Cortex-A8
芯片型号 S5PV210

ARM型号的发展历程
在这里插入图片描述
m microcontroller微控制器 就是单片机
a application应用级处理器 就是手机、平板、电脑的CPU
r realtime实时处理器 响应速度快,主要用在工业、航天等领域

soc 、cpu、外设的概念

CPU(Central Processing Unit)是计算机系统中的核心组件,也被称为微处理器或中央处理器。它是执行计算机程序的“大脑”,负责执行指令、处理数据运算、控制内存访问以及协调各个硬件组件之间的通信。CPU的主要功能包括算术逻辑运算、数据处理、指令译码和执行,以及管理时间和并行任务调度。简单来说,CPU是计算机的核心运算单元,是所有计算机操作的基础。

SOC(System on Chip)是一种集成度极高的微电子技术,它将整个计算机系统,包括中央处理器(CPU)、内存、输入输出控制器、外设接口和有时还包括专用硬件如图像或音频处理单元,都集成在一个单个的芯片上。这样做的好处是能够大幅度减小体积、降低功耗、提高性能,并简化设计过程。SOC广泛应用于移动设备、消费电子、工业控制、物联网(IoT)等多个领域。它是现代电子系统的核心组成部分。

现在已经没有纯粹的CPU了,都是SoC

在这里插入图片描述

嵌入式系统

特点
专用、软硬件可裁剪可配置
低功耗、高可靠性、高稳定性
软件代码短小精悍
代码可固化
实时性
弱交互性
专用开发工具及开发环境
专业开发人员

组成
硬件
微处理器
存储器
I/O接口、输入输出设备等等
软件:
嵌入式操作系统
BSP board support package板级支持包,是介于主板硬件和操作系统之间的一层
应用软件

分层
在这里插入图片描述

发展和演进

  • 以单芯片为核心、可编程控制器存在形式
    没有操作系统支持
    软件以汇编为主
    功能单一、处理效率低、存储容器小、没有对外接口
    使用简单、价格低
  • 以嵌入式CPU为基础、简单操作系统为核心
    CPU种类多,通用性弱
    系统开销小,效率高
    达到一定兼容性,拓展性
    用户体验度不高,交互界面不够友好
  • 以嵌入式操作系统为标志
    兼容性好,适用于不同平台
    系统开销小,效率高,具有高度模块化及拓展性
    图形化界面,用户界面友好
    丰富的外部接口
  • 以物联网为标志
    将传感器技术、互联网技术及传统嵌入式技术综合联系
    小型化、智能化、网络化及可视化
    低功耗、绿色环保
    多核技术SMP、云计算技术及虚拟化技术

交叉编译

开发模式
非嵌入式开发,A(类)机编写(源代码)、编译得到可执行程序,发布给A(类)机运行。
嵌入式开发,A(类)机编写(源代码)、编译得到可执行程序,发布给B(类)机运行。

为何使用交叉编译
嵌入式开发的CPU比较简单,本身无法搭建开发环境,交叉编译可以用高性能机器为低性能机器开发软件(包括裸机软件、系统级和应用级软件)

交叉编译有什么特点

  • 专用的交叉编译工具链
  • 由于可执行程序不能本地运行调试,因此必须配合一定手段(专用调试器、JTAG调试器、USB下载、串口下载、SD启动、网络共享等)将可执行程序加载到目标嵌入式设备上运行及调试。

CPU的设计原理、数据总线和地址总线

在这里插入图片描述
CPU通过地址总线寻址,然后通过数据总线与外部设备互换信息
地址总线的位数决定CPU寻址范围,32位CPU寻址的范围是4G
CPU的位数指的是数据总线的位数,数据总线的位数决定CPU单次通信能交换的信息数量,总线的速度决定CPU和外设互换信息的速度

为何需要Jlink、SD卡等辅助设备

交叉编译,不便于本机运行调试程序,需要调试工具
Jlink的作用:下载程序,可单步调试
SD卡的作用:启动介质,
USB转串口线的作用:调试

总结

了解ARM型号进化历程
注意区分CPU和SOC的概念
了解嵌入式特点、组成、发展情况
了解交叉编译的概念
理解数据总线和地址总线的不同和作用
了解Jlink、SD卡等辅助设备

学习记录,侵权联系删除。
来源:朱老师物联网大课堂

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/32346.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ubutu 18.04源码编译安装freeswitch 1.10.7支持视频通话——筑梦之路

软件版本说明 ubuntu版本18.04:https://releases.ubuntu.com/18.04.6/ubuntu-18.04.6-live-server-amd64.iso freeswitch 版本1.10.7:https://files.freeswitch.org/freeswitch-releases/freeswitch-1.10.7.-release.tar.gz spandsp包:https:…

VB计算圆柱体积和表面积

已知圆半径和圆柱的高,计算圆柱体积和表面积。 Public Class Form1Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.ClickConst PI 3.14159Dim r As Integer, h As IntegerDim t As Single, s As Singler Val(TextBox1.Text)h V…

免杀笔记 ---> C语言

这次的更新可能有点慢,因为这段时间也比较忙,加上C语言还得和汇编结合,导致小编一个知识点总是得反复揣摩(太菜了),所以免杀的更新篇幅长度可能会达到两个月和三个月,但是小编能保证&#xff0c…

动手学深度学习(Pytorch版)代码实践 -卷积神经网络-24深度卷积神经网络AlexNet

24深度卷积神经网络AlexNet import torch from torch import nn import liliPytorch as lp import liliPytorch as lp import matplotlib.pyplot as pltdropout1 0.5 #Alexnet架构 net nn.Sequential(nn.Conv2d(1, 96, kernel_size11, stride4, padding1),nn.ReLU(),nn.MaxPo…

智慧校园综合管理系统的优点有哪些

在当今这个信息化飞速发展的时代,智慧校园综合管理系统正逐步成为教育领域的一股革新力量,它悄然改变着我们对传统校园管理的认知。这套系统如同一个无形的桥梁,将先进的信息技术与学校的日常运作紧密相连,展现出多维度的优势。 …

训练营第四十五天 | 435. 无重叠区间763.划分字母区间56. 合并区间738.单调递增的数字968.监控二叉树

435. 无重叠区间 力扣题目链接(opens new window) 给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。 注意: 可以认为区间的终点总是大于它的起点。 区间 [1,2] 和 [2,3] 的边界相互“接触”,但没有相互重叠。 示例 1…

6/22 第四周 python操作word

学习到了word有四个段落,都可以通过python来操作。 并且课程的体系,只是一个启蒙,需要在公司的项目中熟悉,从而具备专项测试的能力。 后续每天的学习笔记也需要侧重于理解的部分。

【CPP】归并排序

目录 1.归并排序简介代码分析归并的非递归形式 1.归并排序 归并排序(MERGE-SORT) 是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide andConquer)的一个非常典型的应用。 将已有序的子序列合并,得到…

NXP实战笔记(十四):32K3xx基于RTD-SDK在S32DS实现HSE的安装。

目录 1、概述 1.1、什么是HSE? 1.2、如何实现HSE的OTA功能 1.3、S32K3放置HSE的地址 2、通过调试器安装HSE 3、通过IVT方式安装HSE 4、坑点慎重踩 4.1、优化等级 4.2、Flash放RAM 4.3、C40_Ip配置更改 4.4、程序烧录 5、测试结果 6、代码链接 1、概述 首…

“论SOA在企业集成架构设计中的应用”必过模板,软考高级,系统架构设计师论文

论文真题 企业应用集成(Enterprise Application Integration, EAI)是每个企业都必须要面对的实际问题。面向服务的企业应用集成是一种基于面向服务体系结构(Service-OrientedArchitecture,SOA)的新型企业应用集成技术,强调将企业和组织内部的资源和业务功能暴露为服务,实现…

vue-json-viewer组件 copyable失效,页面并不现实copy按钮

<json-viewer :value"props.row.param_detail.query" :expand-depth"10" copyable> </json-viewer> 官方文档中&#xff0c;说明&#xff0c;只要在json-viewer中加入 copyable属性&#xff0c;即可实现copy功能&#xff0c;如下图&#xff1…

yolov8环境搭建+训练自己数据集

一、yolov8环境搭建 1. 安装miniconda环境 地址&#xff1a;https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda 选择Python3.8版本 最好安装在C盘 勾选自动添加环境变量 ***以下操作安装过程中关闭代理软件 *** 2. 创建虚拟环境 conda create -n yolov8 python3…

vue自建h5应用,接入企业微信JDK(WECOM-JSSDK),实现跳转添加好友功能

一、项目场景&#xff1a; 1、使用vue开发了一套h5页面的项目 2、这个h5链接是在企业微信里某个地方打开的 3、打开页面的时候有一个好友列表&#xff0c;点击好友列表某一条复制手机号跳转到企业微信添加好友页面 二、实现的效果图 博客只允许上传gif图&#xff0c;所以我只…

浙江工商大学24计算机考研数据,好几个专业都接收调剂,计专复试线284分!

浙江工商大学&#xff08;Zhejiang Gongshang University&#xff09;&#xff0c;简称“浙商大”&#xff08;ZJSU&#xff09;&#xff0c;坐落于浙江省杭州市&#xff0c;是中华人民共和国教育部、中华人民共和国商务部和浙江省人民政府共建的浙江省重点建设高校&#xff0c…

C#调用OpenCvSharp计算并显示带掩膜的图像直方图

之前的文章简要测试了调用OpenCvSharp的Cv2.CalcHist函数计算直方图的用法&#xff0c;不过使用过程中参数mask的值始终为null&#xff0c;也就是计算的整幅图像的直方图&#xff0c;如果mask不为空&#xff0c;则可以计算图像指定区域的直方图&#xff0c;本文学习掩膜的创建方…

css grid实现九宫格布局

常见的九宫格布局可以使用flex布局实现&#xff0c;但是flex布局有个致命的缺陷&#xff0c;比如3行3列的布局&#xff0c;当第不足3个元素的时候&#xff0c;元素依然是平局平铺的&#xff0c;这样就不满足九宫格的效果&#xff0c;这种情况&#xff0c;使用grid布局可以轻松搞…

Zigbee协议详解:低功耗无线通信的理想选择

什么是Zigbee协议 Zigbee是一种基于IEEE 802.15.4标准的无线通信协议&#xff0c;专为低功耗、低数据速率和短距离通信设计。它广泛应用于物联网&#xff08;IoT&#xff09;设备&#xff0c;如智能家居、工业自动化和健康监测等领域。Zigbee协议由Zigbee联盟维护和推广&#x…

Antd Table 表格 拖拽列宽

antd 的表格组件的列宽&#xff0c;是通过width属性去初始化的&#xff0c;有时候渲染的内容不固定&#xff0c;这个宽做不到通用所以研究怎么实现表格列宽拖动&#xff0c;主要的实现步骤如下&#xff1a; 使用table的components API修改表格头部为 react-resizable提供的组件…

C#事件详解及应用示例

简介 事件是使类具备向其它类通知发生的相关事情的能力。事件被分成两部分&#xff1a;一、引发或发送事件的类&#xff08;称发布者&#xff09;&#xff1b;二、处理或接收事件的类&#xff08;称订阅者&#xff09;。事件也是类型的成员。在 .NET 的桌面应用程序中&#xff…

Netty 入门实例

文章目录 1. 概述2. 代码实例2.1 服务端2.2 客户端2.3 运行截图 3. 整体结构4. 重要组件4.1 EventLoopGroup、EventLoop4.2 Handler & Pipeline4.3 ByteBuf 参考文献 1. 概述 Netty 是一款用于高效开发网络应用的 NIO 网络框架&#xff0c;它大大简化了网络应用的开发过程…