📝 嵌入式系统教程
18篇技术文档📅  最后修改于: 2021-01-07 05:42:02        🧑  作者: Mango
我们可以广泛地将嵌入式系统定义为基于微控制器,软件驱动,可靠,实时的控制系统,旨在执行特定任务。可以认为是其中嵌入了软件的计算机硬件系统。嵌入式系统可以是独立系统,也可以是大型系统的一部分。在本教程中,我们将说明设计和使用嵌入式系统所需的所有步骤。本教程旨在帮助电子学的学生学习嵌入式系统和8051单片机的基础到高级概念。先决条件在继续本教程之前,您应该对基本电子学的概念有很好的了解,例如电路,逻辑...
📅  最后修改于: 2021-01-07 05:42:32        🧑  作者: Mango
系统系统是一种安排,其中所有单元都按照一组规则组装在一起。也可以将其定义为根据固定计划工作,组织或执行一项或多项任务的方式。例如,手表是时间显示系统。它的组件遵循一组显示时间的规则。如果其部件之一发生故障,手表将停止工作。因此,可以说,在一个系统中,其所有子组件都相互依赖。嵌入式系统顾名思义,“嵌入式”是指与另一事物关联的事物。嵌入式系统可以被认为是其中嵌入有软件的计算机硬件系统。嵌入式系统可以是...
📅  最后修改于: 2021-01-07 05:42:58        🧑  作者: Mango
处理器是嵌入式系统的心脏。它是处理数据后接受输入并产生输出的基本单元。对于嵌入式系统设计人员来说,必须具有微处理器和微控制器的知识。系统中的处理器处理器具有两个基本单元-程序流控制单元(CU)执行单位(欧盟)CU包括用于从存储器中获取指令的获取单元。 EU具有执行与数据传输操作和从一种形式到另一种形式的数据转换有关的指令的电路。EU包括算术和逻辑单元(ALU),还包括执行程序控制指令(例如中断或跳...
📅  最后修改于: 2021-01-07 05:43:22        🧑  作者: Mango
8051微控制器使用8位数据总线。因此,它们最多可以支持高达64K的外部数据存储器和64k的外部程序存储器。总的来说,8051微控制器可以寻址128k的外部存储器。当数据和代码位于不同的存储块中时,该架构称为哈佛架构。如果数据和代码位于同一存储块中,则该架构称为Von Neumann架构。冯·诺依曼建筑冯·诺依曼架构最早是由计算机科学家约翰·冯·诺依曼提出的。在这种体系结构中,一条数据路径或总线用...
📅  最后修改于: 2021-01-07 05:43:59        🧑  作者: Mango
编译器和汇编器编译器编译器是一种计算机程序(或一组程序),可以将以编程语言(源语言)编写的源代码转换为另一种计算机语言(通常为二进制格式)。进行转换的最常见原因是创建一个可执行程序。名称“编译器”主要用于将源代码从高级编程语言转换为低级语言(例如,汇编语言或机器代码)的程序。交叉编译器如果编译后的程序可以在具有不同CPU或操作系统的计算机上运行,而不是在其上编译该程序的计算机,则该编译器称为交叉编...
📅  最后修改于: 2021-01-07 05:44:22        🧑  作者: Mango
8051的简要历史第一微处理器4004是由英特尔公司发明的。英特尔还发明了8085和8086微处理器。 1981年,英特尔推出了称为8051的8位微控制器。它之所以被称为片上系统,是因为它在单个芯片上具有128字节的RAM,4K字节的片上ROM,两个计时器,一个串行端口和4个端口(8位宽)。当它广泛流行时,英特尔允许其他制造商生产和销售与8051兼容的不同版本的8051。这意味着,如果您为8051...
📅  最后修改于: 2021-01-07 05:45:15        🧑  作者: Mango
在8051中,使用四个端口和40个引脚进行I / O操作。以下引脚图显示了40个引脚的详细信息。 I / O操作端口保留32个引脚,每个端口有8个引脚。其他8个引脚分别指定为Vcc,GND,XTAL1,XTAL2,RST,EA(bar),ALE / PROG(bar)和PSEN(bar)。它是40引脚PDIP(塑料双列直插式封装)注–在DIP封装中,您可以通过IC中间的切口来识别第一个引脚和最后一...
📅  最后修改于: 2021-01-07 05:45:41        🧑  作者: Mango
程序计数器程序计数器是一个16位或32位寄存器,其中包含要执行的下一条指令的地址。每次获取指令时,PC都会自动递增到下一个顺序存储器位置。分支,跳转和中断操作将使用下一个顺序位置以外的地址向程序计数器加载。激活上电复位将导致寄存器中的所有值丢失。这意味着复位后PC(程序计数器)的值为0,迫使CPU从ROM存储器0000中提取第一个操作码。这意味着我们必须将上码的第一个字节放入ROM 0000中,因...
📅  最后修改于: 2021-01-07 05:46:22        🧑  作者: Mango
开发了汇编语言来为机器级代码指令提供助记符或符号。汇编语言程序由助记符组成,因此应将其翻译为机器代码。负责此转换的程序称为汇编程序。汇编语言通常被称为低级语言,因为它直接与CPU的内部结构配合使用。要使用汇编语言进行编程,程序员必须知道CPU的所有寄存器。诸如C,C++,Java和其他各种语言之类的不同编程语言被称为高级语言,因为它们不处理CPU的内部细节。相反,汇编程序用于将汇编语言程序转换为机...
📅  最后修改于: 2021-01-07 05:47:16        🧑  作者: Mango
寄存器在CPU中用于临时存储信息,这些信息可以是要处理的数据,也可以是指向要获取的数据的地址。在8051中,有一种8位数据类型,从MSB(最高有效位)D7到LSB(最低有效位)D0。对于8位数据类型,任何大于8位的数据类型都必须分成8位的块,然后再进行处理。8051中使用最广泛的寄存器是A(累加器),B,R0-R7,DPTR(数据指针)和PC(程序计数器)。除DPTR和PC外,所有这些寄存器均为8...
📅  最后修改于: 2021-01-07 05:47:56        🧑  作者: Mango
8051微控制器总共有128个字节的RAM。我们将讨论这128个字节的RAM的分配,并检查它们作为堆栈和寄存器的用法。8051中的RAM内存空间分配8051内部的128个RAM字节分配了地址00到7FH。它们可以作为存储位置直接访问,并分为以下三个不同的组:从00H到1FH位置保留32个字节用于寄存器组和堆栈。从20H到2FH位置保留16个字节用于位可寻址的读/写存储器。从30H到7FH位置的80...
📅  最后修改于: 2021-01-07 05:48:38        🧑  作者: Mango
程序的流程从一个指令到下一条指令以顺序方式进行,除非执行了控制转移指令。汇编语言中的各种类型的控制转移指令包括有条件或无条件跳转和调用指令。循环和跳转指令循环进入8051重复执行一系列指令称为循环。指令DJNZ reg,label用于执行循环操作。在该指令中,寄存器减1;否则,寄存器减1。如果它不为零,则8051跳转到标签所指的目标地址。在循环开始之前,该寄存器已装载有用于重复次数的计数器。在该指...
📅  最后修改于: 2021-01-07 05:49:17        🧑  作者: Mango
寻址模式是指您如何寻址给定的内存位置。执行此指令有五种不同的方式或五种寻址模式,如下所示:立即寻址模式直接寻址模式注册直接寻址模式注册间接寻址模式索引寻址模式立即寻址模式让我们从一个例子开始。一般来说,我们可以写之所以称为立即数,是因为8位数据会立即传输到累加器(目标操作数)。下图说明了上述指令及其执行。操作码74H保存在0202地址。数据6AH保存在程序存储器中的0203地址处。读取操作码74H...
📅  最后修改于: 2021-01-07 05:49:52        🧑  作者: Mango
特殊功能寄存器(或特殊用途寄存器,或简称为特殊寄存器)是微处理器中用于控制或监视微处理器各种功能的寄存器。由于特殊寄存器与处理器的某些特殊函数或状态紧密相关,因此它们可能无法通过普通指令(如添加,移动等)直接写入。相反,某些处理器体系结构中的某些特殊寄存器需要特殊指令来对其进行修改。在8051中,寄存器A,B,DPTR和PSW是通常称为SFR(特殊函数寄存器)的一组寄存器的一部分。可以通过名称或地...
📅  最后修改于: 2021-01-07 05:50:40        🧑  作者: Mango
计时器是一种特殊的时钟,用于测量时间间隔。从零开始向上计数以测量经过的时间的计时器通常称为秒表。它是一种从指定时间间隔开始倒计时并用于产生时间延迟的设备,例如,沙漏是计时器。计数器是一种设备,用于存储(有时显示)特定事件或进程相对于时钟信号发生的次数。它用于计算微控制器外部发生的事件。在电子产品中,可以使用寄存器类型的电路(例如触发器)来轻松实现计数器。计时器和计数器之间的区别区分计时器和计数器的...