嵌入式(二)单片机基础 | 单片机特点 内部结构 最小系统 电源 晶振 复位

上一篇文章我们介绍了嵌入式系统

嵌入式系统(Embedded System)是一种特定用途的计算机系统,它通常嵌入在更大的产品或系统中,用于控制、监测或执行特定的任务。这些系统通常由硬件和软件组成,旨在满足特定的需求,如嵌入在家电、汽车、医疗设备、工业自动化、消费电子产品、通信设备等各种应用领域。

简单说嵌入式:就是嵌入到对象体中的专用计算机系统 三要素 嵌入 专用 计算机

嵌入式系统往往是一个较为复杂的系统,由单片机和硬件平台和嵌入式计算机系统等组成,其中的核心是嵌入式处理器

我们主要讲解单片机

文章目录

  • 1 单片机基本介绍
    • 1.1 单片机组成
    • 1.2 单片机特点
    • 1.3 单片机分类
    • 1.4 单片机内部结构
  • 2. 8051单片机内部结构
    • 2.1 CPU 核心
    • 2.2 ROM Flash 程序存储空间
    • 2.3 RAM 数据存储空间
    • 2.4 SFR 特殊功能寄存器
  • 3 CC2530芯片介绍
    • 3.1 组成
  • 4 单片机最小系统
    • 4.1 电源
    • 4.2 晶振
      • 4.2.1 定义种类
      • 4.2.2 基本时序周期
    • 4.3 复位
  • 5 编程

1 单片机基本介绍

1.1 单片机组成

单片机系统是经典的嵌入式系统

单片微型计算机简称单片机,他不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一块芯片上,往往集合了如下一些部分

​ (1)CPU中央处理器

​ (2)RAM 随机存取存储器

​ (3)ROM 只读存储器

​ (4)定时/计数器/ IO接口

采用哈佛结构 Harvard结构

将程序 指令储存和数据储存分开的存储器 结构。拥有独立的指令总线和数据 总线,可以让取指与数据访问分开 进行,提高了执行效率。

而不是传统我们熟悉的冯诺依曼结构

1.2 单片机特点

1)高集成度,体积小,高可靠性

2)控制功能强

3)低电压,低功耗,便于生产便携式产品

4)易扩展

5)优异的性能价格比

1.3 单片机分类

1 按数据处理位数来分

由于4位单片机性能比较低,目前已逐步退出市场。

而16位 和32位单片机虽然性能比8位的强得多,但由于成本和应用 场合的限制,尤其是近年来ARM嵌入式技术的发展,导致它 的应用空间也不如8位单片机广泛。而16位和32位单片机主 要应用于视频采集、图形处理等方面。

2 按内核分类

单片机按内核分为

51系列 爱特梅尔公司

ARM系列 安谋国际科技股份有限公司

PIC系列 美国微芯科技公司

AVR系列 爱特 梅尔公司

MSP430系列 德州 仪器公司

3 按指令类型分类 单片机按指令类型可以分为

精简指令集和复杂指令集。

1.4 单片机内部结构

1)中央处理器

运算器和控制器是核心,合称中央处理器或中央处理单元。

运算器执行所有的算术和逻辑运算;

控制器负责把指令逐 条从存储器中取出,经译码后向计算机发出各种控制命令;

而寄存器为处理单元提供操作所需要的数据。

2)存储器

存储器主要包括只读存储器和随机存储器。

3)输入设备和输出设备

输入设备和输出设备主要包括并行I/O端口串行接口等通 信方式。

并行I/O端口即输入/输出引脚,这是单片机与外部电路和 器件主要联系的端口,它既可以接收外界输入的电平信号, 也可以向外发送指定的电平信号

串行通信是一条信息的各位数据逐位按顺序传送的通信方 式。其数据传送按位顺序进行,最少只需要一根传输线即可。串行通信主要采用通用异步收发传输器(UART)实现。 其中,RxD表示接收数据端口,TxD表示发送数据端口

4)时钟电路

主要为单片机提供运行所需要的节拍信号,每到 来一个节拍,单片机就执行一步操作,所以时钟电路提供 的信号频率越高,单片机的运行速度就越快,相应的功耗 也越大。

5)中断控制系统

中断的种类大体来说,主要包括硬体中断、软体中断两类。

硬体中断的形成,通常是外界的硬体装置利用由CPU拉出的 中断要求信号线来通知 CPU中断的请求。

软体中断,通 常是CPU自己引发的,比如说执行了不该执行的指令、计算 错误或者执行了某个用来产生软体中断的指令。

6)定时器/计数器

单片机将CPU、存储器、输入/输出设备、中断控制系统、 定时器/计数器和通信等多种功能部件集成到一块硅片上, 从而构成一个体积小但功能完善的微型计算机系统。

解下来我们重点介绍一款应用较多的单片机

2. 8051单片机内部结构

2.1 CPU 核心

以ALU为中心的运算器

还有以各种寄存器和译码器为核心的控制器

在这里插入图片描述

除了CPU以外,有名的是单片机的三大资源

FLASH(程序存储空间ROM)

RAM (数据存储空间)

SFR 特殊功能寄存器

2.2 ROM Flash 程序存储空间

FLASH 存储器是一种非易失性存储器,用于存储嵌入式系统的程序代码。它通常用于存储固件、操作系统、应用程序和其他必要的程序代码。与传统的RAM不同,FLASH 存储器的数据在断电后仍然保持,因此适用于存储长期保持的程序代码。

对于单片机来说Flash最大的意义是断电后 数据不丢失,

2.3 RAM 数据存储空间

RAM是单片机的数据存储空间,用来存储程序运 行过程中产生的和需要的数据

跟电脑的内存是 相似的概念,关电后数据丢失,所以我 们每次打开计算器,都是从归零开始计算。

它的优点,第一是读写速度非常快,第二是理论 上是可无限次写入的,即寿命无限,不管程序怎 么运行怎么读写它都不会坏。

2.4 SFR 特殊功能寄存器

特殊功能寄存器是嵌入式系统中的一类寄存器,用于控制和配置系统的特殊功能和硬件模块。这些寄存器通常包括控制寄存器、时钟寄存器、中断寄存器、输入/输出端口控制寄存器等。通过编写和读取这些寄存器的值,开发者可以配置和控制系统的各种功能。

SFR,特殊功能寄存器。这 个概念大家可能刚开始理解不了,但是一 定要记住。单片机有很多很多功能,每个 功能都会对应一个或多个SFR,我们就是 通过对SFR的读写来实现单片机的多种多 样的功能的。

3 CC2530芯片介绍

3.1 组成

(1)CPU和内存

CC2530芯片中使用的8051CPU内核是一个单周期的8051兼容内核。

它有3种不同的内存访问总线,分别用于访问特殊功 能寄存器、数据和代码/外部数据

此外,它还包括一个调试接口和一个18路输入扩展中断单元。

(2)时钟和电源管理

数字内核和外设由一个1.8V低压差稳压器供电。它提供了 电源管理功能,可以实现使用不同供电模式的长电池寿命 的低功耗运行。CC2530有5种不同的复位源来复位设备

(3)外设

调试接口执行一个专有的两线串行接口,用于内电路调试。 通过这个调试接口,可以执行整个闪存存储器的擦除、控 制振荡器、停止和开始执行用户程序、执行8051内核提供 的指令、设置代码断点,以及内核中全部指令的单步调试。 使用这些技术,可以很好地执行内电路的调试和外部闪存 的编程。

定时器1是一个16位定时器,具有定时器/PWM功能。的消费 型IR信号。

定时器2是专门为支持IEEE 802.15.4 MAC或软件中其他时 槽的协议设计的。该定时器有一个可配置的定时器周期和 一个8位溢出计数器

定时器3和定时器4是8位定时器,具有定时器/计数器/PWM功能。

睡眠定时器在除供电模式3之外的所有工作模式下不断运行。该定时器 的典型应用是作为实时计数器,或作为一个唤醒定时器跳出供电模式1 或2

ADC支持7~12位的分辨率,分别在30kHz或4kHz的带宽。DC和音频转换 可以使用高达8个输入通道(端口0),输入可以选择作为单端或差分。 参考电压可以是内部电压、AVDD或一个单端或差分外部信号。ADC还有 一个温度传感输入通道。ADC可以自动执行定期抽样或转换通道序列的 程序

串口1(USART 0)和串口2(USART 1)被配置为一个SPI主/从或一个 UART。它们为RX和TX提供双缓冲,以及硬件流控制。

4 单片机最小系统

单片机最小系统 ,也叫做单片机 最小应用系统, 是指用最少的原 件组成单片机可 以工作的系统。 单片机最小系统 的三要素就是电源、晶振、复位

4.1 电源

常用单片机的电源系统有5V系统 和3.3V系统这两种。

4.2 晶振

4.2.1 定义种类

晶振,又叫晶体振荡器,他起到的作用是 为单片机系统提供基准时钟信号。

单片机内部所有的工作都是以这个时钟信号为步调基准来进行工作的。

STC89C52单片机的18脚和19脚是晶振引 脚,我们接了一个11.0592M的晶振(它每 秒钟振荡11,059,200次),外加两个20pF 的电容,电容的作用是帮助晶振起振,并 维持振荡信号的稳定

电容分为不同种

晶振分为有源晶振和无源晶振

两种时钟产生方式

​ 内部振荡器方式

​ 外部时钟源方式

4.2.2 基本时序周期

CPU总是按照一定的时钟节拍与时序工作,时序 定时单位共有4个,从小到大依次是:

振荡周期/时钟周期:Tc=晶振频率fosc(或外加频率)的倒数 MCS-51单片机中最小的时序单位

状态周期:Ts=2个时钟周期(Tc)(很少用到此概念)

机器周期:CPU完成一个基本操作所需的时间称为机器周期

指令周期: 执行一条指令所需的机器周期™数,是MCS-51 单片机最大的时序单位。通常含有1~4个机器周期。

相互转换关系

振荡周期 = 晶振频率fosc的倒数;

1个状态周期= 2个振荡周期;

1个机器周期 = 12个振荡周期=6个状态周期;

1个指令周期 = 1、2、4个机器周

CC2530指令周期与标准51不同

标准51:1个机器周期为12个振荡周期 • CC2530包含一个单周期的增强51内核,不 同于标准51

CC2530

四个时钟源 两个内部振荡器,两个外部晶振

: 不做任何配置时,系统时钟 为16Mhz • 机器周期是多少? 1/16 us

4.3 复位

复位电路需要接到接到了单片机的RST(Reset)复位引脚 上。

单片机复位一般是3种情况:

上电复位、手动复位、程序 自动复位。

(1)上电复位:单片机上电后进行的一个内部的初始化过程。保证单 片机每次都从一个固定的相同的状态开始工作。

(2)手动复位: 遭受到意外干扰而导致程序死机,或 者程序跑飞的时候,我们就可以按下一个复位按键,让程序重新 初始化重新运行。

(3)自动复位 当程序死机或者跑飞的时候,单片机往往有一套自动复位机制, 比如看门狗。如果程序长时间失去响应,单片机看门狗模块会自 动复位重启单片机

电源、晶振、复位构成了单片机最小系统 的三要素,也就是说,一个单片机具备了 这三个条件,就可以运行我们下载的程序 了

而其他的比如LED小灯、数码管、液晶等设 备都是属于单片机的外部设备,即外设。

外设

通常红色贴片LED:靠电流驱动,电压 1.8V~2.2V,电流1到20mA,在1到 5mA亮度有所变化,5mA以上亮度基本 无变化

5 编程

嵌入编程中要注意数据类型,

char 8位 一般给寄存器赋值,因为寄存器一般是八位

需要考虑编程的取值范围

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Kafka(四)Broker

目录 1 配置Broker1.1 Broker的配置broker.id0listererszookeeper.connectlog.dirslog.dir/tmp/kafka-logsnum.recovery.threads.per.data.dir1auto.create.topics.enabletrueauto.leader.rebalance.enabletrue, leader.imbalance.check.interval.seconds300, leader.imbalance…

JAVA静态引擎企业网站源码带文档

JAVA静态引擎企业网站源码带文档 系统介绍: 1.网站后台采用主流的 SSM 框架 jsp JSTL,网站前台采用freemaker静态化模版引擎生成html5 2.因为是生成的html,无需重复读取数据库,所以访问速度快,轻便,对服务器…

家用洗地机怎么选?家用洗地机排名

现代很多年轻人常常为家庭卫生问题而感到头痛。一整天的工作之后,回到家中还得花费大量时间来处理地面的清理工作,包括吸尘和拖地等繁琐的任务。这些任务让人感到相当烦躁,尤其是对于有小孩的家庭来说,地板上的油污和食物残渣经常…

前端项目构建打包生成Git信息文件

系列文章目录 TypeScript 从入门到进阶专栏 文章目录 系列文章目录前言一、前端项目构建打包生成Git信息文件作用二、步骤1.引入相关的npm包1.1. **fs** 包1.2. **child_process** 包1.3. **os** 包 (非必须 如果你想生成的文件信息中包含当前电脑信息则可用)1.4. **path** 包…

[足式机器人]Part2 Dr. CAN学习笔记-动态系统建模与分析 Ch02-7二阶系统

本文仅供学习使用 本文参考: B站:DR_CAN Dr. CAN学习笔记-动态系统建模与分析 Ch02-7二阶系统 1. 二阶系统对初始条件的动态响应 Matlab/Simulink - 2nd Order Syetem Response to IC2. 二阶系统的单位阶跃响应 2nd Order System Unit Step Response3. 二…

UniRepLKNet实战:使用UniRepLKNet实现图像分类任务(一)

文章目录 摘要安装包安装timm 数据增强Cutout和MixupEMA项目结构计算mean和std生成数据集一些问题 摘要 大核卷积神经网络(ConvNets)近年来受到广泛关注,但仍存在两个关键问题需要进一步研究。首先,目前的大型卷积神经网络架构大…

C++枚举类型可以作为返回值类型吗

当然&#xff1a; #include <iostream> // 定义一个枚举类型 enum class Color { RED, GREEN, BLUE }; // 函数返回枚举类型 Color getRandomColor() { static int nextColorIndex 0; Color color Color(nextColorIndex); nextColorIndex; if (nextColor…

Vue入门三(表单控制|购物车案例|v-model进阶|与后端交互|计算属性|监听属性|Vue生命周期)

文章目录 一、表单控制二、购物车案例三、v-model进阶四、与后端交互跨域问题解决&#xff0c;三种交互方法跨域问题详解1-CORS&#xff1a;后端代码控制&#xff0c;上面案例采用的方式1) 方式一&#xff1a;后端添加请求头2) 方式二&#xff1a;编写中间件3) 方式三&#xff…

杨中科 .NET Core 第一部分.NET Standard

1)不讲C#基础语法和NET基础类库(不需要学过ASPNET等)。需要懂HTML、JavaScript、数据库等。后续会录制基础视频 2)使用Visual Studio 2019 .NET .NET Framework Windows 程序 .NET Core 跨平台程序 .NET Standard 上述两者 遵从的标准 .NET5 开始上述统称为 .NET 新建.NET Sta…

解决CDN的网站后台无法获取访客真实ip的问题

宝塔的面板&#xff0c;网站后台获取到的不是访客的真实 ip &#xff0c;而是 CDN 的 ip &#xff0c;这给站长造成了不少影响&#xff0c;例如通过ip地址判定的设置都不准确&#xff0c;甚至假如网站被攻击&#xff0c;对方的真实ip地址都记录不到。 这个问题如何解决&#xf…

爬虫网易易盾滑块及轨迹算法案例:某乎

声明&#xff1a; 该文章为学习使用&#xff0c;严禁用于商业用途和非法用途&#xff0c;违者后果自负&#xff0c;由此产生的一切后果均与作者无关 一、滑块初步分析 js运行 atob(‘aHR0cHM6Ly93d3cuemhpaHUuY29tL3NpZ25pbg’) 拿到网址&#xff0c;浏览器打开网站&#xff0…

华云安攻击面发现及管理平台体验

省流&#xff1a; 无需【立即咨询】即可体验&#xff0c;开通即可查看演示数据&#xff0c;公开报价 界面&#xff1a; 界面简洁&#xff0c;要点清晰&#xff0c;可以清晰的看到暴露面及攻击面信息 功能&#xff1a; 资产发现&#xff1a;主域名发现、子域名发现、 IP 发现…

Qt 窗口阴影边框

环境&#xff1a;Qt 5.15 VS2019 方法一&#xff1a;QGraphicsDropShadowEffect 实现方法参考链接&#xff1a;https://blog.csdn.net/goforwardtostep/article/details/99549750 使用此方法添加窗口阴影&#xff0c;会出现警告信息&#xff1a; 且窗口最大化与还原切换时会…

Vue.js设计与实现阅读-3

Vue设计与实现阅读-3 1、声明式描述UI2、渲染器3、组件4、模板的工作原理5、Vue.js 是各个模块组成的有机整体 前言 前面一章我们了解了&#xff0c;开发体验是衡量一个框架的重要指标之一。提供友好的警告信息至关重要&#xff0c;但是越详细的警告信息&#xff0c;意味着框架…

【SpringCloud】之网关应用(进阶使用)

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是君易--鑨&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的博客专栏《SpringCloud开发之网关应用》。&#x1f3af;&a…

独立站上传产品的方式有哪些?如何快速上品?采集、同步、复制

简介&#xff1a; 搭建新独立站时&#xff0c;传统的复制粘贴将花费大量时间和精力且效率低下&#xff1b;而借助本应用&#xff0c;可有效地避免不必要的人力浪费。只需简单的几个步骤&#xff0c;加上少量的等待时间&#xff0c;即可轻松地将店铺数据从任何商店复制到您的商…

JAVA基础学习笔记-day16-网络编程

JAVA基础学习笔记-day16-网络编程 1. 网络编程概述1.1 软件架构1.2 网络基础 2. 网络通信要素2.1 如何实现网络中的主机互相通信2.2 通信要素一&#xff1a;IP地址和域名2.2.1 IP地址2.2.2 域名 2.3 通信要素二&#xff1a;端口号2.4 通信要素三&#xff1a;网络通信协议 3. 谈…

2024洗地机哪个牌子值得买?洗地机选购指南

在清洁家电的这个市场&#xff0c;洗地机可以说是勇往直前的&#xff0c;不仅在于它高效的深度清洁&#xff0c;还有要考虑它的时间&#xff0c;以及省力方面。在这个洗地机的市场不断地越做越大中&#xff0c;我们在考虑洗地机的配置以及性能上往往没有任何头绪。无线洗地机在…

全链路压力测试有哪些主要作用

全链路压力测试是在软件开发和维护过程中不可或缺的一环&#xff0c;尤其在复杂系统和高并发场景下显得尤为重要。下面将详细介绍全链路压力测试的主要作用。 一、全链路压力测试概述 全链路压力测试是指对软件系统的全部组件(包括前端、后端、数据库、网络、中间件等)在高负载…

redis的使用、打开、关闭的详细介绍

redis的使用、打开、关闭的详细介绍 1.安装redis cd / cd opt/ wget https://download.redis.io/releases/redis-5.0.5.tar.gz 2.解压redis tar xzf redis-5.0.5.tar.gz 3.执行make cd redis-5.0.5/ make 如果出现找不到make的情况就yum install -y make 如果没有gcc就…