虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

中断处理

从查询式的传输过程可以看出,它的优点是硬件开销小,使用起来比较简单。但在此方式下,CPU要不断地查询外设的状态,当外设未准备好时,CPU就只能循环等待,不能执行其它程序,这样就浪费了CPU的大量时间,降低了主机的利用率。为了解决这个矛盾,我们提出了中断传送方式,即当CPU进行主程序操作时,外设的数据已存入输入端口的数据寄存器;或端口的数据输出寄存器已空,由外设通过接口电路向CPU发出中断请求信号,CPU在满足一定的条件下,暂停执行当前正在执行的主程序,转入执行相应能够进行输入/输出操作的子程序,待输入/输出操作执行完毕之后CPU即返回继续执行原来被中断的主程序。这样CPU就避免了把大量时间耗费在等待、查询状态信号的操作上,使其工作效率得以大大地提高。能够向CPU发出中断请求的设备或事件称为中断源。而对其的处理方式即中断处理.[1]
  • 基于ARM的轻量级TCPIP协议栈的移植及应用

    近年来,嵌入式技术发展迅速,已经渗透到工业控制、智能设备以及电子消费品等人们日常生活的各个领域,而Internet技术也取得了巨大的发展,为人们所广为接受,于是嵌入式技术和Internet技术相结合形成的嵌入式Internet技术适时地出现了,并且成为实现远程控制、信息共享的关键技术。 本文首先阐述了课题研究的背景、目的和意义,以及嵌入式TCP/IP协议栈研究的现状,然后分析了嵌入式操作系统μ C/OS-Ⅱ的工作原理并描述了把它移植到LPC2210上的过程,为嵌入式TCP/IP协议栈实现提供了操作系统支持。接着,针对嵌入式协议栈的特殊需求,详细分析并采用了零拷贝技术、跨层技术等对LwIP协议栈进行了有效的裁剪和优化,结合μ C/PS-Ⅱ设计了一种紧凑的协议栈工作模型和内存管理机制。并且结合μ C/OS-Ⅱ设计了协议栈的工作模型和内存管理机制。在驱动程序的基础上实现了对LwIP中的IP协议、ARP协议、ICMP协议、UDP协议和TCP协议等几个协议栈的裁剪和优化。并分析了它们的安全漏洞及基于这些漏洞的攻击方式,在这个基础上提出了如攻击检测算法等填补漏洞和抵抗攻击的一些技术和措施。最后在目标板上成功移植了优化后的LwIP。 本文同时还设计了一种能够提供足够多软定时器资源的算法。在不需要操作系统支持的情况下,软定时器可以给多任务的系统提供足够的定时服务,而且不影响中断处理时间。并且具有自动回调功能,启动一次以后就可自动调用定时器。此软定时器使用方便且易移植,大大方便了本课题多次使用定时器的需要。课题结合具体项目“蓄电池状态记录仪的设计”,分析了它的各个功能模块,设计了其系统结构。对各个功能模块的设计与实现进行了代码编写和测试,借助于TFTP服务器实现了基于协议的嵌入式目标板和PC机间的网络通信。 本课题经过几个月的软硬件设计和现场测试,已实现了最初的设计目标。构建出了实验硬件平台和一个多任务多协议的基本实时系统框架。以后的开发者可以不必深入了解μ C/OS-Ⅱ实时操作系统和嵌入式TCP/IP协议栈的情况下就可以方便的创建一个嵌入式网络控制系统,并能在平台上开发其它的应用任务,为以后的研究提供了参考并奠定了基础。

    标签: TCPIP ARM 轻量级 协议栈

    上传时间: 2013-04-24

    上传用户:www240697738

  • 基于ARM的Linux平台上USB驱动实现

    随着USB接口性能的不断增强,USB接口被广泛应用到各种硬件设备上。如今在Linux操作系统中,针对USB设备的驱动编程工作越来越受到重视。本课题在以S3C2410处理器为基础的硬件平台上,对Linux操作系统环境下USB设备驱动工作原理进行了研究。在理解USB协议的基础上完成了S3C2410处理器内置USB设备控制器固件和驱动程序的编写调试等方面的工作。 固件程序工作在硬件设备上,通过它控制设备的正常工作,负责与主机端的通信会话。由于本课题中的USB设备控制器是3C2410处理器的片内外设,因此固件程序要管理整个S3C2410处理器的工作。在处理器开机工作时,固件程序首先完成包括USB设备控制器在内的整个处理器的初始化,然后与主机共同进行USB设备的枚举,最后进入循环等待主机端发起通信。当主机发起通信时,处理器产生USB中断,固件程序调用中断处理函数。 在Linux操作系统中,内核通过调用驱动中提供的标准接口将应用程序中对设备的操作映射到具体的硬件设备。驱动程序中包括向驱动注册,驱动支持设备列表信息以及各种系统调用具体实现等方面。USB接口所支持的四种传输方式,根据S3C2410内置USB设备控制器的功能属性,在驱动中采用了块传输的传输方式,通过URB的方式实现对设备的读写操作。 最后设计一个简单文件传输系统对固件和驱动程序进行了测试。测试系统中主机端通过USB接口传输一个wav格式的音频文件,设备端接收到数据保存在内存中。

    标签: Linux ARM USB 驱动实现

    上传时间: 2013-04-24

    上传用户:liuchee

  • 基于ARM的PC104总线嵌入式工控机的研究和实现

    在特定的工业测控应用中对处理器的功耗有严格的要求,类似X86处理器芯片系列由于继承了原有8086的构架,功耗很大,不能满足要求。当前应用广泛的ARM系列处理器有低功耗、高处理器能力的优点,非常适合于此类应用。由于ARM处理器并没有对PC/104总线有支持,所以本设计使用CPLD可编程逻辑完成ARM本地总线与PC/104总线的转换。文章完成了以下工作: 1.介绍了工业控制计算机的发展情况和当前使用广泛的PC/104计算机,描述了嵌入式系统的发展历史和软硬件组成,分析了X86与ARM处理器构架的特点与优缺点; 2.从PC/104总线规范出发,对基于ARM处理器的PC/104工业控制嵌入式工控机进行了总体设计,软硬件选型部分对当前流行的软硬件系统进行了详细地描写,硬件处理器选用SAMSUNG公司的S3C2410,软件系统采用嵌入式Linux操作系统; 3.对系统硬件各个部分实现细节进行了描写,包括最小系统、CAN网络、以太网络和PC/104总线控制器;其中着重对PC/104总线控制器的实现方案进行了讨论,分析了ARM本地总线时序和PC/104总线时序,最后使用VHDL语言实现了了总线控制器逻辑; 4.移植了嵌入式Linux操作系统,Linux操作系统移植分为配置、编译和下载运行调试三个步骤;基于Linux操作系统编写了PC/104总线驱动,驱动完成映射PC/104地址到系统虚拟地址和中断绑定;编写了基于PC/104的CAN总线驱动,分析了驱动初始化、中断处理流程、数据缓冲区管理和文件操作接口,描写了驱动的编译和下载过程;最后给出了应用程序接口; 5.根据机车工业控制领域的具体要求,开发了实际系统,给出了系统主要参数指标;对系统的运算性能进行了测试,测试表明定点运算能力与X86相当,符合设计要求:系统通过铁标高低温测试和射频干扰测试,并进行了为期3个月的装车试运行,试运行过程中系统工作正常,完全能够满足设计要求。

    标签: ARM 104 PC 总线

    上传时间: 2013-07-10

    上传用户:520

  • ARM处理器和FPGA在数据传输中的应用与研究

    随着对高处理能力、网络通信、实时多任务,超低功耗这些需求的增长,传统8位处理器已经不能满足新产品的要求了,高端嵌入式处理器已经得到了普遍的重视和应用.ARM是目前嵌入式领域应用最广泛的RISC微处理器结构,该文研究了基于ARM处理器的嵌入式系统的开发,介绍了利用一款ARM微处理器和FPGA设计的四路E1中继板卡的硬件结构和工作原理,并在这个硬件平台上进行软件开发的过程.该四路E1收发器能够提供四条E1链路,把带宽从2Mbps提高到8Mbps,能够同时负载120个用户的通信,解决了数字环路系统中卡槽数目限制的问题.目前,建立在G. 703基础上的El接口在分组网、帧中继网、GSM移动基站及军事通信中得到广泛的应用,传送语音信号、数据、图像等业务.文中首先分析了当前数字环路系统的发展现状和趋势,随着网络通信的用户数目及信息量的猛增,拓宽数据传输的通道是一项研究热点,这是开发四路E1收发器的一个目的.接着叙述了数字环路系统的结构和工作原理,即四路E1收发器的应用环境,着重介绍了四路E1板卡在整个系统中所扮演的角色和嵌入式处理器ARM的体系结构和特点,鉴于数据传输中对时钟的要求比较严格,该文还介绍了FPGA技术,应用它主要是为系统提供各个精确的时钟.然后,在分析了四路E1收发器的工作原理和比较了各类处理器特点的基础上,提出了四路E1收发器的硬件设计,分别介绍了时钟模块、系统接口电路、存储系统模块、四通道E1合成器模块、CPU模块以及时隙交换模块.接着,在研究分析了G.703和G.704等通信协议后,再根据系统要求提出了四路E1收发器的软件设计.先介绍了实时操作系统RTXC,详细阐述了ARM处理器启动代码程序的设计,然后给出了在此操作系统下软件设计的整体结构,分四个任务分别阐述此软件功能,其中详细介绍了信令处理模块、接口中断处理模块、系统运行监测模块和RC消息LC消息处理模块.最后介绍了软件和硬件的调试方法以及设计过程中的调试开发过程,整个系统设计完成后,经过反复调试、测验已达到了预期的效果,现正投入使用中.

    标签: FPGA ARM 处理器 中的应用

    上传时间: 2013-04-24

    上传用户:梦雨轩膂

  • 基于FPGA的8051单片机IP核设计及应用

    单片微型计算机(单片机)是将微处理器CPU、程序存储器、数据存储器、定时/计数器、输入/输出并行接口等集成在一起。由于单片机具有专门为嵌入式系统设计的体系结构与指令系统,所以它最能满足嵌入式系统的应用要求。Intel公司生产的MCS-51系列单片机是我国目前应用最广的单片机之一。 随着可编程逻辑器件设计技术的发展,每个逻辑器件中门电路的数量越来越多,一个逻辑器件就可以完成本来要由很多分立逻辑器件和存储芯片完成的功能。这样做减少了系统的功耗和成本,提高了性能和可靠性。FPGA就是目前最受欢迎的可编程逻辑器件之一。IP核是将一些在数字电路中常用但比较复杂的功能块,设计成可修改参数的模块,让其他用户可以直接调用这些模块,这样就大大减轻了工程师的负担,避免重复劳动。随着FPGA的规模越来越大,设计越来越复杂,使用IP核是一个发展趋势。 本课题结合FPGA与8051单片机的优点,主要针对以下三个方面研究: (1)FPGA开发平台的硬件实现选用Xilinx公司的XC3S500E-PQ208-4-C作为核心器件,采用Intel公司的EEPROM芯片2816A和SRAM芯片6116作为片内程序存储器,搭建FPGA的硬件开发平台。 (2)用VHDL语言实现8051IP核分析研究8051系列单片机内部各模块结构以及各部分的连接关系,实现了基于FPGA的8051IP核。主要包括如下几个模块:CPU模块、片内数据存储器模块、定时/计数器模块、并行端口模块、串行端口模块、中断处理模块、同步复位模块等。 (3)基于FPGA的8051IP核应用用所设计的8051IP核,实现了对一个4×4键盘的监测扫描、键盘确认、按键识别等应用。

    标签: FPGA 8051 单片机 IP核

    上传时间: 2013-04-24

    上传用户:1417818867

  • 基于FPGA的Java虚拟机实现

    使用Java语言有非常多的好处,如安全的对象引用、语言级支持多线程和跨平台等特性。但是嵌入式系统中Java语言的应用却很少见,这是由于Java如下两方面的不足: (1)Java虚拟机实现需要大量的硬件资源;(2)Java语言的运行时间不可预测。 为此,本论文将实现一个能够应用在低端FPGA器件的实时Java虚拟机。论文的主要创新点如下: 1.使用基于堆栈的RISC模型处理器实现CISC模型的JVM; 2.处理器微指令无任何相关性; 3.所设计的JVM能使Java程序拥有足够的底层访问能力。 论文的主要内容和工作如下: 1.制定基于堆栈的RISC结构处理器各级结构。 2.设计简洁高效的处理器微指令,并且微指令能够满足字节码的需要。 3.制定Java字节码到处理器代码的转换关系和快速转换结构。 4.设计中使用高速缓存,提高运行速度。 5.优化堆栈的硬件结构,使得出栈入栈操作更加简洁快速。 6.设计一系列的本地方法,使得Java程序能够直接访问底层资源。 7.将Java类库使用本地方法实现。 8.自定义程序在内存中的结构,并使用装载工具实现。 9.制定处理外围数据处理机制,如IO和内存接口10.制定中断处理方式,并且实现软中断的机制。

    标签: FPGA Java 虚拟机

    上传时间: 2013-06-11

    上传用户:417313137

  • ARM嵌入式系统开发-软件设计与优化

    ·本书从软件设计的角度,全面、系统地介绍了ARM处理器的基本体系结构和软件设计与优化方法。内容包括:ARM处理器基础;ARM/Thumb指令集;C语言与汇编语言程序的设计与优化;基本运算、操作的优化;基于ARM的DSP;异常与中断处理;固件与嵌入式OS;cache与存储器管理;ARMv6体系结构的特点等。全书内容完整,针对各种不同的ARM内核系统结构都有详尽论述,并有大量的例子和源代码。附录给出了完

    标签: ARM 嵌入式 系统开发 软件设计

    上传时间: 2013-04-24

    上传用户:763274289

  • 从51到ARM—32位嵌入式系统入门

    ·内容简介     本书从51系列单片机的一般知识出发,将ARM处理器和51系列单片机进行对比,引导读者去理解和学习ARM处理器的知识。内容分为3部分:第1部分是前4章,从大家所熟悉的51系列单片机的基础知识开始,介绍ARM处理器的基本知识,包括ARM和51系列的对比、中断处理系统、寄存器和存储器结构等;第2部分是5~9章,详细比较ARM指令和51系列指令之间

    标签: ARM 嵌入式系统

    上传时间: 2013-07-21

    上传用户:WANGXIAN001

  • M68HC11单片机原理、应用及技术手册

    M68HC11单片机原理、应用及技术手册 【整理者】悠子 【提供者】drre 【详细说明】M68HC11单片机原理、应用及技术手册/MOTOROLA单片机开发应用丛书  书名: M68HC11单片机原理、应用及技术手册/MOTOROLA单片机开发应用丛书 作者: 涂时亮主编 出版社: 复旦大学出版社 出版日期: 1992-11-01 简介: 介绍了M68HC11单片机的系统结构、指令系统、程序设计方法和片内存贮器和它的定时系统、串行通讯口、串行外围接口、A/D、脉冲累加器、Watchdog等各种I/O功能的结构和使用方法等。 第一章 MOTOROLA单片机简介   1.1 发展概述   1.2 MOTOROLA单片机的结构特点     1.2.1 储存器组织     1.2.2 OPU结构     1.2.3 中断处理     1.2.4 并行I/O口     1.2.5 定时器系统     1.2.6 串行口     1.2.7 其他I/O功能    1.3MOTOROLA单片机系列     1.3.1抵挡 8 位单片机     1.3.2高档 8 位单片机 M68HO11     1.3.3MOTOROLA模块化单片机            ..............................            ................................  

    标签: M68 68 11 HC

    上传时间: 2014-12-25

    上传用户:hz07104032

  • MOTOROLA 8位增强型单片机M68HC11原理与应用

    本书分三部分介绍在美国广泛应用的、高功能的M68HC11系列单片机(8位机 ,Motorola公司)。内容包括M68HC11的结构与其基本原理、开发工具EVB(性能评估板)以及开发和应用技术。本书在介绍单片机硬、软件的基础上,进一步介绍了在美国实验室内,如何应用PC机及EVB来进行开发工作。通过本书的介绍,读者可了解这种单片机的原理并学会开发和应用方法。本书可作为大专院校单片机及其实验的教材(本科、短训班)。亦可供开发、应用单片机的各专业(计算机、机电、化工、纺织、冶金、自控、航空、航海……)有关技术人员参考。 第一部分 M68HC11 结构与原理Motorola单片机 1 Motorla单片机 1.1 概述 1.1.1 Motorola 单片机发展概况(3) 1.1.2 Motorola 单片机结构特点(4) 1.2 M68HC11系列单片机(5) 1.2.1 M68HC11产品系列(5) 1.2.2 MC68HC11E9特性(6) 1.2.3 MC68HC11E9单片机引脚说明(8) 1.3 Motorola 32位单片机(14) 1.3.1中央处理器(CPU32)(15) 1.3.2 定时处理器(TPU)(16) 1.3.3 串行队列模块(QSM)(16) 1.3.4 系统集成模块 (SIM)(16) 1.3.5 RAM(17) 2 系统配置与工作方式 2.1 系统配置(19) 2.1.1 配置寄存器CONFIG(19) 2.1.2 CONFIG寄存器的编程与擦除(20) 2?2 工作方式选择(21) 2.3 M68HC11的工作方式(23) 2.3.1 普通单片工作方式(23) 2.3.2 普通扩展工作方式(23) 2.3.3 特殊自举方式(27) 2.3.4 特殊测试方式(28) 3 中央处理器(CPU)与片上存储器 3.1 CPU寄存器(31) 3?1?1 累加器A、B和双累加器D(32) 3.1.2 变址寄存器X、Y(32) 3.1.3 栈指针SP(32) 3.1.4 程序计数器PC(33) 3.1.5 条件码寄存器CCR(33) 3.2 片上存储器(34) 3.2.1 存储器分布(34) 3.2.2 RAM和INIT寄存器(35) 3.2.3 ROM(37) 3.2.4 EEPROM(37) 3.3 M68HC11 CPU的低功耗方式(39) 3.3.1 WAIT方式(39) 3.3.2 STOP方式(40) 4 复位和中断 4.1 复位(41) 4.1.1 M68HC11的系统初始化条件(41) 4.1.2 复位形式(43) 4.2 中断(48) 4.2.1 条件码寄存器CCR中的中断屏蔽位(48) 4.2.2 中断优先级与中断矢量(49) 4.2.3 非屏蔽中断(52) 4.2.4 实时中断(53) 4.2.5 中断处理过程(56) 5 M68HC11指令系统 5.1 M68HC11寻址方式(59) 5.1.1 立即寻址(IMM)(59) 5.1.2 扩展寻址(EXT)(60) 5.1.3 直接寻址(DIR)(60) 5.1.4 变址寻址(INDX、INDY)(61) 5.1.5 固有寻址(INH)(62) 5.1.6 相对寻址(REL)(62) 5.1.7 前置字节(63) 5.2 M68HC11指令系统(63) 5.2.1 累加器和存储器指令(63) 5.2.2 栈和变址寄存器指令(68) 5.2.3 条件码寄存器指令(69) 5.2.4 程序控制指令(70) 6 输入与输出 6.1 概述(73) 6.2 并行I/O口(74) 6.2.1 并行I/O寄存器(74) 6.2.2 应答I/O子系统(76) 6?3 串行通信接口SCI(82) 6.3.1 基本特性(83) 6.3.2 数据格式(83) 6.3.3 SCI硬件结构(84) 6.3.4 SCI寄存器(86) 6.4 串行外围接口SPI(92) 6.4.1 SPI特性(92) 6.4.2 SPI引脚信号(92) 6.4.3 SPI结构(93) 6.4.4 SPI寄存器(95) 6.4.5 SPI系统与外部设备进行串行数据传输(99) 7 定时器系统与脉冲累加器 7.1 概述(105) 7.2 循环计数器(107) 7.2.1 时钟分频器(107) 7.2.2 计算机正常工作监视功能(110) 7.2.3 定时器标志的清除(110) 7.3 输入捕捉功能(111) 7.3.1 概述(111) 7.3.2 定时器输入捕捉锁存器(TIC1、TIC2、TIC3) 7.3.3 输入信号沿检测逻辑(113) 7.3.4 输入捕捉中断(113) 7.4 输出比较功能(114) 7.4.1 概述(114) 7.4.2 输出比较功能使用的寄存器(116) 7.4.3 输出比较示例(118) 7.5 脉冲累加器(119) 7.5.1 概述(119) 7.5.2 脉冲累加器控制和状态寄存器(121) 8 A/D转换系统 8.1 电荷重新分布技术与逐次逼近算法(125) 8.1.1 基本电路(125) 8.1.2 A/D转换逐次逼近算法原理(130) 8.2 M68HC11中A/D转换的实现方法(131) 8.2.1 逐次逼近A/D转换器(131) 8.2.2 控制寄存器(132) 8.2.3 系统控制逻辑(135)? 9 单片机的内部操作 9.1 用立即>    图书前言   美国Motorola公司从80年代中期开始推出的M68HC11系列单片机是当今功能最强、性能/价格比最好的八位单片微计算机之一。在美国,它已被广泛地应用于教学和各种工业控制系统中。?   该单片机有丰富的I/O功能,完善的系统保护功能和软件控制的节电工作方式 。它的指令系统与早期Motorola单片机MC6801等兼容,同时增加了91条新指令。其中包含16位乘法、除法运算指令等。   为便于用户开发和应用M68HC11单片机,Motorola公司提供了多种开发工具。M68HC11 EVB (Evaluation Board)性能评估板就是一种M68HC11系列单片机的廉价开发工具。它既可用来 调试用户程序,又可在仿真方式下运行。为方便用户,M68HC11 EVB可与IBM?PC连接 ,借助于交叉汇编、通信程序等软件,在IBM?PC上调试程序。?   本书分三部分(共15章)介绍了M68HC11的结构和基本原理、开发工具-EVB及开发应用实例等。第一部分(1~9章),介绍M68HC11的结构和基本原理。包括概述,系统配置与工作方式、CPU和存储器、复位和中断、指令系统、I/O、定时器系统和脉冲累加器、A/D转换系统、单片机的内部操作等。第二部分(10~11章),介绍M68HC11 EVB的原理和技术特性以及EVB的应用。第三部分(12~15章),介绍M68HC11的开发与应用技术。包括基本的编程练习、应用程序设计、接口实验、接口设计及应用等。   读者通过学习本书,不仅可了解M68HC11的硬件、软件,而且可了解使用EVB开发和应用M68HC11单片机的方法。在本书的第三部分专门提供了一部分实验和应用程序。?   本书系作者张宁作为高级访问学者,应邀在美国马萨诸塞州洛厄尔大学(University of Massachusetts Lowell)工作期间完成的。全书由张宁执笔。在编著过程中,美国洛厄尔大学的R·代克曼教授?(Professor Robert J. Dirkman)多次与张宁一起讨论、研究,并提供部分资料及实验数据。参加编写和审校等工作的还有王云霞、孙晓芳、刘安鲁、张籍、来安德、张杨等同志。?   为将M68HC11系列单片机尽快介绍给我国,美国Motorola公司的Terrence M.S.Heng先生曾大力支持本书的编著和出版。在此表示衷心感谢。    

    标签: MOTOROLA M68 68 11

    上传时间: 2013-10-27

    上传用户:rlgl123