ARM嵌入式学习--第十一天(中断处理 , ADC)

--中断的概念

    中断是指计算机运行过程中,出现某些意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理新情况的程序,处理完毕后又返回被暂停的程序继续运行

--CPU处理事情的方式

    -轮询方式

不断查询是否有事情需要处理,如果有则处理。由于需要不断的轮询,效率较低

    -中断方式

当需要CPU处理的时候,产生一个信号,打断CPU正在做的事情,让CPU处理另一件事情,等另一件事情处理完以后,回到打断之前的地方接着执行

    中断处理需要注意的地方:

        1.中断打断了其它程序的执行,所以中断处理的时候需要尽可能的快,不能再中断处理过程中做耗时很长的事情

        2.中断打断了其他程序的执行,所以在中断处理的时候,需要先保存现场(CPU的状态和CPU内部寄存器的值),在中断处理结束的时候,需要恢复现场

--ARM核中断处理过程

    在ARM核心中,中断也是一种异常,与处理异常的过程类似

-异常处理

-IRQ异常指令流水线

     IRQ异常举例

 --中断相关的概念

    1.中断源:产生中断的源头

    2.中断号:是SOC芯片厂家对SOC芯片内部中断源的编号

        (SOC芯片内部中断源表明芯片在设计中已经规定了产生中断的设备

    3,中断处理函数:中断产生之后,需要调用的函数

    4.中断控制器:控制中断的优先级,中断是否允许被处理

    5.内部中断:SOC芯片内部控制器产生的中断,例如:GPT计时器

    6.外部中断:SOC芯片外部管脚通过电平触发产生的中断

                        1>高电平触发

                        2>低电平触发

                        3>上升沿触发

                        4>下降沿触发

                        5>双边沿触发

--ADC

-简介

    ADC即模拟数字转换器(英语:Analog-to-converter)是用于将模拟形式的连续信号转换为数字形式的离散信号的一类设备

-基本原理

  采样

    这一步骤涉及到周期性地采取模拟信号的瞬时值,得到一系列的脉冲样值。采样周期的长短决定了转换结果的精确度。根据奈奎斯特采样定理,采样频率应大于或等于输入模拟信号屏谱中最高频率的俩倍以确保转换的准确性

  保持

    在连续采样俩次采样之间,为了使前一次采样所得信号保持不变,以便进行量化和编码。需要将其保存起来,这通常通过采样-保持电路实现,该电路有存储样值的电容、场效应管及电压跟随运算放大器组成,确保在采样停止期间电容的电压基本保持不变

  量化

    量化是将采样-保持电路的输出信号按照某种近似方式归并到相应的离散电平上,也就是将模拟信号在取值上离散化的过程。离散后的电平称为量化电平,量化误差的大小取决于ADC的分辨率

  编码

    编码是将量化后的结果(离散电平)用数字代码(如二进制数)来表示。编码的本质是输出一串数字代码,这个代码会尽可能地接近当前采样到的模拟值。不同的量化方式决定了编码的规则

A/D转换器的主要技术指标:

    1.测量范围:决定了外接的设备其信号输出电压范围

    2.分辨率:输出二进制的位数表示,位数越多,误差越小,转换精度越高

    3.转换速度:转换速度是指A/D转换器完成一次转换所需的时间

    4.采样时间:保持某一时刻的外部信号,保持时间就是采样时间 

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

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

相关文章

ARM嵌入式学习--第十天(UART)

--UART介绍 UART(Universal Asynchonous Receiver and Transmitter)通用异步接收器,是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输和接收。在嵌入式设计中,UART用来与PC进行通信,包括与监控…

socket实现HTTP请求,参考HttpURLConnection源码解析

背景 有台服务器,网卡绑定有2个ip地址,分别为: A:192.168.111.201 B:192.168.111.202 在这台服务器请求目标地址 C:192.168.111.203 时必须使用B作为源地址才能访问目标地址C,在这台服务器默认…

漏洞扫描工具之xray

下载地址:https://github.com/chaitin/xray/releases 1.9.11 使用文档:https://docs.xray.cool/tools/xray/Scanning 与burpsuite联动: https://xz.aliyun.com/news/7563 参考:https://blog.csdn.net/lza20001103/article/details…

正月初三特殊的一天

在我们河南豫东地区,初三这一天一般情况下可以在家休息,不需要串门走亲戚,给亲戚的长辈或比自己辈份长的拜年。 特殊的正月初三 还有两种情况,正月初三这一天必须去走亲戚。一种是有去世的亲戚没有过三周年,正月初三这…

强化学习笔记——4策略迭代、值迭代、TD算法

基于策略迭代的贝尔曼方程和基于值迭代的贝尔曼方程,关系还是不太理解 首先梳理一下: 通过贝尔曼方程将强化学习转化为值迭代和策略迭代两种问题 求解上述两种贝尔曼方程有三种方法:DP(有模型),MC&#xff…

HTTP协议和静态web服务器

一、HTTP协议 1 HTTP协议的定义 网络协议 网络协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则。HTTP协议 HTTP协议(超文本传输协议)是一种网络通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器。默认端口:80HTTPS协…

智能汽车网络安全威胁报告

近年来随着智能汽车技术的快速发展,针对智能汽车的攻击也逐渐从传统的针对单一车辆控制器的攻击转变为针对整车智能化服务的攻击,包括但不限于对远程控制应用程序的操控、云服务的渗透、智能座舱系统的破解以及对第三方应用和智能服务的攻击。随着WP.29 …

在虚拟机里运行frida-server以实现对虚拟机目标软件的监测和修改参数(一)(android Google Api 35高版本版)

frida-server下载路径 我这里选择较高版本的frida-server-16.6.6-android-x86_64 以root身份启动adb 或 直接在android studio中打开 adb root 如果使用android studio打开的话,最好选择google api的虚拟机,默认以root模式开启 跳转到下载的frida-se…

Node.js——body-parser、防盗链、路由模块化、express-generator应用生成器

个人简介 👀个人主页: 前端杂货铺 🙋‍♂️学习方向: 主攻前端方向,正逐渐往全干发展 📃个人状态: 研发工程师,现效力于中国工业软件事业 🚀人生格言: 积跬步…

【2024年华为OD机试】(C卷,200分)- 启动多任务排序 (JavaScriptJava PythonC/C++)

一、问题描述 题目解析 本题是一个典型的拓扑排序问题。拓扑排序用于解决有向无环图(DAG)中的节点排序问题,使得对于图中的每一条有向边 (u, v),u 在排序中总是位于 v 的前面。在本题中,任务之间的依赖关系可以看作是有向图中的边,而任务的执行顺序就是拓扑排序的结果。…

【NLP251】NLP RNN 系列网络

NLP251 系列主要记录从NLP基础网络结构到知识图谱的学习 1.原理及网络结构 1.1RNN 在Yoshua Bengio论文中( http://proceedings.mlr.press/v28/pascanu13.pdf )证明了梯度求导的一部分环节是一个指数模型…

Privacy Eraser,电脑隐私的终极清除者

Privacy Eraser 是一款专为保护用户隐私而设计的全能型软件,它不仅能够深度清理计算机中的各类隐私数据,还提供了多种系统优化工具,帮助用户提升设备的整体性能。通过这款软件,用户可以轻松清除浏览器历史记录、缓存文件、Cookie、…

数据分析常用的AI工具

数据分析领域中常用的AI工具种类繁多,涵盖了从数据处理、分析到可视化和预测的各个环节。以下是一些常见且广泛应用的AI数据分析工具及其特点: 1. 数据处理与清洗工具 Python库:如PandasAI,集成了生成式AI能力,支持自…

npm常见报错整理

npm install时报UNMET PEER DEPENDENCY 现象 npm install时报UNMET PEER DEPENDENCY,且执行npm install好几遍仍报这个。 原因 不是真的缺少某个包,而是安装的依赖版本不对,警告你应该安装某一个版本。 真的缺少某个包。 解决 看了下package.json文件,我的react是有的…

ARM内核:嵌入式时代的核心引擎

引言 在当今智能设备无处不在的时代,ARM(Advanced RISC Machines)处理器凭借其高性能、低功耗的特性,成为智能手机、物联网设备、汽车电子等领域的核心引擎。作为精简指令集(RISC)的典范,ARM核…

https数字签名手动验签

以bing.com 为例 1. CA 层级的基本概念 CA 层级是一种树状结构,由多个层级的 CA 组成。每个 CA 负责为其下一层级的实体(如子 CA 或终端实体)颁发证书。层级结构的顶端是 根 CA(Root CA),它是整个 PKI 体…

如何获取当前的位置信息

文章目录 1 概念介绍2 使用方法3 示例代码3 体验分享 我们在上一章回中介绍了如何实现滑动菜单相关的内容,本章回中将介绍如何获取位置信息.闲话休提,让我们一起Talk Flutter吧。 1 概念介绍 我们在这里说的获取位置信息本质上是获取当前手机所在位置的…

c++在线音乐播放器项目开发记录(2)

前言 因为放寒假了,时间比较短,想找实习也不好找,干脆在家加强一下技术栈,首先从c学起,最适合练手的就是qt的项目了,我是根据B站视频【5个C/C硬核简历项目实战,可直接写入简历,包含…

PyQt6医疗多模态大语言模型(MLLM)实用系统框架构建初探(下.代码部分)

医疗 MLLM 框架编程实现 本医疗 MLLM 框架结合 Python 与 PyQt6 构建,旨在实现多模态医疗数据融合分析并提供可视化界面。下面从数据预处理、模型构建与训练、可视化界面开发、模型 - 界面通信与部署这几个关键部分详细介绍编程实现。 6.1 数据预处理 在医疗 MLLM 框架中,多…

【项目初始化】

项目初始化 使用脚手架创建项目Vite创建项目推荐拓展 使用脚手架创建项目 Vite Vite 是一个现代的前端构建工具,它提供了极速的更新和开发体验,支持多种前端框架,如 Vue、React 等创建项目 pnpm create vuelatest推荐拓展