【复习资料】单片机与嵌入式系统原理及应用_第1页
【复习资料】单片机与嵌入式系统原理及应用_第2页
【复习资料】单片机与嵌入式系统原理及应用_第3页
【复习资料】单片机与嵌入式系统原理及应用_第4页
【复习资料】单片机与嵌入式系统原理及应用_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

【复习资料】单⽚机与嵌⼊式系统原理及应⽤嵌⼊式系统的概念1.第⼀种定义:嵌⼊式系统是以应⽤为中⼼、计算机技术为基础,软硬件可裁剪,适应应⽤系统对功能、可靠性、成本、体积、功耗严格要求的专⽤计算机系统。2.第⼆种定义:把基于处理器(通⽤处理器和嵌⼊式处理器)的设备成为计算机,把计算机分为两⼤部分,即通⽤计算机和嵌⼊式计算机。嵌⼊式系统也被成为嵌⼊式计算机,因此嵌⼊式系统被定义为⾮通⽤计算机系统。3.嵌⼊式系统应定义为:嵌⼊到对象体系中的专⽤计算机系统,“嵌⼊式”、“专⽤性”与“计算机系统”是嵌⼊式系统的三个基本要素,对象系统则是指嵌⼊式系统所嵌⼊的宿主系统。嵌⼊式系统的分类1.按嵌⼊式微处理器的位数分类:8位、16位、32位和64位。2.按实时性分类:嵌⼊式实时系统(硬实时系统和软实时系统)、嵌⼊式⾮实时系统。3.按嵌⼊式软件结构分类:1.循环轮询系统。2.前后台系统:中断驱动机制。3.多任务系统:降低系统复杂度,保证系统的实时性和可维护性。4.按应⽤领域分类:信息家电类、汽车电⼦类、航空电⼦类、军事电⼦类等。按软件结构分三种系统的优缺点系统分类优点缺点循环轮询系统编程简单,没有中断,不会出现随机问题。应⽤领域有限,不适合有⼤量输⼊输出的服务,软件规模增⼤后不便于调试。前后台系统可并发处理不同的异步事件,设计简单,⽆须学习操作系统的相关知识。对于复杂系统,其主程序设计复杂,可靠性降低。实时性只能通过中断来保证,⼀旦主程序介⼊处理事件,其实时性难以保证。中断服务程序与主程序之间共享、互斥的问题需要⾃⾝解决。多任务系统复杂的系统被分解成相对独⽴的多个任务,降低了系统的复杂度。可以保证系统的实时性。系统模块化,可维护性⾼。需要引⼊新的软件设计⽅法。需要对每个共享资源进⾏互斥。任务间存在竞争。嵌⼊式操作系统的使⽤将会增加系统开销。嵌⼊式系统的组成1.嵌⼊式处理器:嵌⼊式系统的核⼼部件。2.外围设备:⽤于完成存储、通信、调试、显⽰灯辅助功能。3.嵌⼊式操作系统:软件模块的集合。4.应⽤软件:完成⽤户预期任务的计算机软件。嵌⼊式操作系统的概念:嵌⼊式操作系统是⽤以完成任务调度、任务间通信与同步、任务管理、时间管理、内存管理等的软件模块集合。嵌⼊式操作系统的引⼊⼤⼤提⾼了嵌⼊式系统的性能、⽅便了应⽤软件的设计、但同时也占⽤了嵌⼊式系统的资源。嵌⼊式操作系统的分类:1.按源代码类型:可分为商⽤型和开源型。2.按实时性能:可分为强实时型和普通实时型。3.按内核结构:单内核型(串⾏)和微内核型(并列式)。嵌⼊式操作系统的优点1.提⾼了嵌⼊式系统的性能。2.⽅便了应⽤软件的设计。3.可裁剪和可移植性强,⽀持开放性和可伸缩性的体系结构。4.内核精简,占⽤空间⼩,内核⽐传统的操作系统⼩很多。5.⾼实时性,可⽤于各种设备控制中。6.为设备提供统⼀的驱动接⼝。7.⾼可靠性,嵌⼊式操作系统可长期稳定运⾏。使⽤嵌⼊式操作系统的必要性:1.⾸先,嵌⼊式实时操作系统提⾼了系统的可靠性。2.其次,提⾼了开发效率,缩短了开发周期。3.再次,嵌⼊式实时操作系统充分发挥了32位CPU的多任务潜⼒。A/D转换:定义:A/D转换是将模拟量转换成数字量的器件。模拟量可以是电压、电流等电信号,也可以是声、光、压⼒和温度等随时间连续变化的⾮电物理量。转换⽅法:1.电压频率式:精度⾼、价格低,但转换速度不⾼。2.积分式:抗⼲扰能⼒好,转换速度低。3.逐次逼近式:转换速度较快。4.并⾏转换。5.串⾏转换。D/A转换:定义:D/A转换器是实现数模转换功能的部件。衡量D/A转换器性能的主要参数有:1.分辨率:即输出的模拟量的最⼩变化量。2.满刻度误差:即输⼊为全1时输出电压与理想值之间的误差。3.输出范围。4.转换时间:指从转换器的输⼊改变到输出稳点的时间间隔。5.是否容易和CPU接⼝。ARM的概念1.ARM是AdvancedRISCMachines公司的缩写。各半导体公司根据ARM内核技术开发出ARM内核的嵌⼊式SOC系统的系列芯⽚。2.从编程⾓度来看,ARM处理器的⼯作状态⼀般有两种:ARM状态和Thumb状态。处理器⼯作状态的转变不影响处理器的⼯作模式和相应寄存器中的内容。1.ARM状态:处理器执⾏32位的字对齐的ARM指令。2.Thumb状态:处理器执⾏16位的半字对齐的Thumb指令。ARM的运⾏模式⽤户模式、系统模式、管理模式、未定义模式、快速中断模式、外部中断模式、数据访问中⽌模式。任务的定义1.在嵌⼊式系统中,⼀个任务也称作⼀个线程,即为⼀个程序。线程分为⽤户级线程和内核级线程。2.该程序在运⾏时可以认为CPU完全属于⾃⼰。3.在实时应⽤程序的设计过程中,要考虑如何将应⽤功能合理地划分为多个任务,让每个任务完成⼀定的功能,成为整个应⽤的⼀部分。4.每个任务都被赋予⼀定的优先级,有⼀套CPU存储器和栈空间。5.任务越重要,赋予的优先级越⾼。就⼤多数内核⽽⾔,任务的优先级由⽤户决定。任务的分类:1.按照到达情况的可预测性,任务可划分为周期任务和⾮周期任务。周期任务每隔⼀个固定的时间间隔就会执⾏⼀次,⾮周期任务执⾏的间隔时间不确定。2.按照重要程度,可分为关键任务和⾮关键任务。关键任务为需要得到及时执⾏的任务,否则将可能出现灾难性的后果,⾮关键任务如果没有及时执⾏,不会产⽣严重的后果,拥有关键任务的实时系统⼜被称为强实时系统,否则称为弱实时系统。任务的调度是内核的主要职责之⼀,就是决定该轮到哪个任务运⾏。任务调度器从当前就绪的所有任务中依照任务调度算法选择⼀个最符合算法要求的任务,使其获得CPU的使⽤权,从就绪态进⼊运⾏态。通常,基于优先级调度法的内核有两种:抢占式内核和⾮抢占式内核。在多任务系统中,都会提供⼀个系统函数来进⾏进程(任务)间的切换。1.由进程(任务)本⾝直接调⽤任务切换函数进⾏进程(任务)切换。2.延迟调⽤任务切换函数进⾏进程(任务)切换。任务的5种状态1.休眠态(Dormant):任务驻留在内存的程序空间中,并未被多内核所调度。2.就绪态(Ready):任务已经准备好,可以运⾏,但是由于该任务的优先级⽐正在运⾏的任务的优先级低,暂时还不能运⾏。3.运⾏态(Running):任务获得了CPU的控制权,正在运⾏中。基于优先级调度的实时内核总是让处于就绪态的优先级最⾼的任务运⾏。4.挂起态(Pending):也叫等待事件态(waiting),是指任务在等待某⼀事件的发⽣(如等待某外设的IO操作、等待定时脉冲的到来、等待超时信号的到来)。正在运⾏的任务由于调⽤了延时函数或等待某事件发⽣⽽将⾃⾝挂起,就转变成了挂起态。5.被中断态(Intermpt):是指发⽣中断时,CPU提供相应的中断服务,原来正在运⾏的任务暂时不能运⾏,⽽进⼊了被中断态。任务切换1.概念:任务转换是指CPU寄存器内容切换。2.过程:1.当多任务内核决定运⾏另外的任务时,它保存正在运⾏的任务的当前状态,即当前CPU寄存器中的全部内容。2.内核将这些内容保存在该任务的当前状态保存区,也就是该任务⾃⼰的栈区中(这个过程称为“⼊栈”)。3.把将要运⾏的任务的当前状态从该任务的栈中装⼊CPU寄存器(这个过程称为“出栈”),并开始这个任务的运⾏。3.特点:任务切换过程增加了应⽤程序的额外负荷,CPU的内部寄存器越多,额外负荷就越重。任务切换所需要的时间取决于CPU有多少寄存器要⼊栈。单⽚机应⽤系统单⽚机的应⽤系统由硬件和软件所组成。1.硬件指单⽚机、扩展的存储器、扩展的输⼊输出设备。2.软件是各种⼯作程序的总称。硬件和软件只有紧密配合、协调⼀致,才能提⾼系统的性能。3.单⽚机应⽤系统的研制过程包括总体设计、硬件设计与加⼯、软件设计、联机调试、产品定型等⼏个阶段,但它们不是绝对分开的,有时是交叉进⾏的。P17重点SPISPI实际上是⼀种串⾏总线接⼝标准。SPI⽅式可允许同时同步传送和接受8位数据,他的⼯作时传输速率最⾼可达到⼏⼗兆位/秒。SPI⽤以下3个引脚来完成通信:*串⾏数据输出SDO(SerialDataOut)。*串⾏数据输⼊SDI(SerialDataIn)。*串⾏时钟SCK(SerialClock)。主机、从机之间SPI总线连接⽰意图SPI通讯的时序图I2C也是⼀种串⾏总线的外设接⼝,它采⽤同步⽅式串⾏接收或发送信息,两个设备在同⼀个时钟下⼯作。与SPI不同的是I2C只⽤两根线:*串⾏数据SDA(SerialData)。*串⾏时钟SCL(SerialClock)。由于I2C只有⼀根数据线,因此其发送信息和接收信息不能同时进⾏。信息的发送接收只能分时进⾏,I2C串⾏总线⼯作时传输速率最⾼位400K位/秒。计算题⼀、轮询⽅式得到键值(独⽴键盘实验)实验现象:下载程序后按下K1按键可以对D1⼩灯状态取反。注意事项:⽆。#include"reg52.h"//此⽂件中定义了单⽚机的⼀些特殊功能寄存器typedefunsignedintu16;//对数据类型进⾏声明定义typedefunsignedcharu8;sbitk1=P3^1;//定义P31⼝是k1sbitled=P2^0;//定义P20⼝是led//函数名:delay:延时函数,i=1时,⼤约延时10ms//函数功能voiddelay(u16i){while(i--);}//函数名:keypros:按键处理函数,判断按键K1是否按下//函数功能voidkeypros(){if(k1==0){delay(1000);if(k1==0){led=~led;}//检测按键K1是否按下//消除抖动⼀般⼤约10ms//再次判断按键是否按下//led状态取反while(!k1);}//检测按键是否松开}voidmain(){while(1){keypros();//按键处理函数}}⼆、中断⽅法(1、2⼆选⼀)2.LED灯闪烁(T0)定时器0实验实现现象:下载程序后D1⼩灯循环点亮1秒,熄灭1秒。使⽤单⽚机内部定时器可以实现准确延时。注意事项:⽆。#include"reg52.h"//此⽂件中定义了单⽚机的⼀些特殊功能寄存器typedefunsignedintu16;//对数据类型进⾏声明定义typedefunsignedcharu8;sbitled=P2^0;//定义P20⼝是led//*函数名:Timer0Init//*函数功能:定时器0初始化voidTimer0Init(){TMOD|=0X01;//选择为定时器0模式,⼯作⽅式1,仅⽤TR0打开启动。TH0=0XFC;//给定时器赋初值,定时1msTL0=0X18;ET0=1;//打开定时器0中断允许EA=1;//打开总中断TR0=1;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论