当前位置:首页 > 心得体会 > 【StellarisTM微控制器用作,I/O,处理器】 I/O处理器
 

【StellarisTM微控制器用作,I/O,处理器】 I/O处理器

发布时间:2019-02-25 04:50:05 影响了:

  摘要:本文主要介绍I/O处理器的背景信息、体系结构因素和实际的实现实例。设计实例通过UART接口增加了一个PS/2键盘接口,I/O线和一个声音报警器(audio beeper),使用一个UART接口和基于ASCII的简单协议与主机通信。使用LM3S102器件取代微控制器将可以使能I2C与主机CPU通信。
  关键词:StellarisTM微控制器;集成开发环境;Cortex-M3微处理器;PS/2键盘接口
  中图分类号:TP335文献标识码:A
  前言
  尽管我们尽力在片内提供所有I/O功能,但是高端嵌入式微处理器在与外围电路接口时还是经常需要帮助。这些附加的接口电路已经要求包含可编程逻辑器件(PLD)、分立逻辑器件、专用功能集成电路(IC)和8位微控制器。群星(stellaris)微控制器为这些I/O解决方案提供了多个优势。
  现实中,用于设计中的高端微处理器可以完美地集成片内外设。外设可以与期望的管脚相连,并且不会存在系统延迟问题。而事实上,复杂的I/O实现方案还存在很多因素。
  1I/O处理器实例
  现实中,用于设计中的高端微处理器可以完美地集成片内外设。外设可以与期望的管脚相连,并且不会存在系统延迟问题。而事实上,复杂的I/O实现方案还存在很多因素。表1列出了系统增加I/O处理器的常见原因。
  1.1I/O系统选项
  群星(Stellaris)微控制器为经济解决方案和共同的工具链提供了主机CPU,从而使得微控制器成为最通用的解决方案。
  2主机CPU接口
  用户需要特别考虑的是I/O处理器与主机微处理器之间的接口的类型。群星(stellaris)微控制器为主机微控制器提供3类串行接口。表2列出了每条串行总线的属性。
  2.1开发和调试
  在一个包含其他ARM器件的系统中使用群星微控制器的最大好处就是可以使用共同的开发工具。系统中所有目标微控制器都可以使用相同的集成开发环境(IDE)和调试器硬件,因而可以减少开发时间和预算。
  3架构
  群星(Stellaris)微控制器使用ARM的Cortex-M3微处理器(ARMv7系列的一部分)。Thumb-2技术结合16位和32位指令,可供高性能处理器使用。
  与早期的ARM发生器相比,Cortex-M3提供了改良的中断处理能力,这对于注重时间的嵌入式控制应用非常重要。Cortex-M3的嵌套中断控制器(NVIC)将进入中断所需的时钟周期减少高达70%。I/O处理代码可以在多个优先中断源中快速有效地移动。
  对于整个灵活性来讲,群星(stellaris)微控制器还允许将任意的GPIO管脚配置成边沿和电平触发中断。
  3.1 I/O处理器的设计
  以下设计向低成本的高端嵌入式微处理器系统增加了以下3个接口:
  PS/2键盘接口
  8个通用输出管脚
  声音报警器(audio beeper)
  在将PS/2端口直接与一个嵌入式微处理器接口时存在几个挑战:
  主机微处理器不含片内PS/2接口;
  PS/2是一个5V接口;
  PS/2键盘以高于10kHz的速率为数据输出计时。该格式与SPI和I2C不兼容,因而接收该数据流时需要特定的硬件,或者每个时钟都带有中断。这一点可能大多数嵌入式操作系统都不能做到,也可能是对微处理器带宽的无效使用。
  通过将群星微控制器选作I/O处理器,这三个挑战都可以迎难而解。Luminary Micro公司的群星LM3S101微控制器通过使用留作将来扩展用的资源,只需一美元就可实现所有这3个功能。本实例使用一个UART接口和基于ASCII的简单协议与主机通信。使用LM3S102器件取代微控制器将可以使能I2C与主机CPU通信。
  4 功能描述
  键盘会以10-15kHz的速率向LM3S101微控制器产生同步的PS/2时钟和数据信号。LM3S101微控制器对数据流中的这些信号、时钟进行监控,并验证其奇偶性。PS/2接口实际上是一个双向接口,但本实例只演示了键盘发送的情形。
  一旦接收到字节并经过验证后,LM3S101微控制器软件将数据写入UART,并将它传输给主机微处理器。软件可以扩展成将PS/2扫描代码传送前转换至ASCII当量(equivalent)。
  整个I/O接口电路如图2所示。
  在I/O处理器实例源代码中列出的软件,使用群星(stellaris)系列驱动程序库DriverLib.来简化群星外设的访问过程。
  5协议
  本实例将一个非常简单的1字节ASCII协议用于主机微控制器的命令中:
  ・0..7控制数字输出0..7
  ・b和m控制报警器(beeper)
  ・与主机微处理器的通信完全包括扫描代码数据(这种情况下是指被称作Set 2的一系列代码)。键盘中的每个物理键在make(键按下)和break(键释放)时产生唯一的字节序列。例如,A键在make(键按下)时产生0x1C,在break(键释放)时产生0xF0 0x1C。
  6结语
  一个被设计成I/O处理器的群星微控制器,可以解决与高端嵌入式微处理器一起工作时出现的困难的接口问题。通过I/O微控制器,简单的串行接口可以支持丰富的I/O类型和进行预处理,从而进一步减少主机微处理器的开销。通过群星器件,在提供一种经济有效的系统解决方案的同时,开发人员还可以从公共工具链中获益。
  参考文献
  [1]王永宏,徐炜,郝立平. STM32系列ARM Cortex-M3微控制器原理与实践[M].北京:北京航空航天大学出版社,2008.
  [2]Sloss A N ,Symes D. ARM沈建华译.嵌入式系统开发――软件设计与优化[M].北京:北京航空航天大学出版社,2005.
  [3]郑扣根译.操作系统概念[M].北京:高等教育出版社,2004.
  [4]邵贝贝等译.嵌入式操作系统μC/OS-Ⅱ[M].第二版.北京:北京航空航天大学出版社,2005.
  [5]PHIL IPS 公司L PC2200 User Manaul [ R].PHILIPS公司,2004,5.
  [6]田泽等译.ARMSoC.体系结构[M].北京:北京航空航天大学外出版社,2002,10.
本文为全文原貌 未安装PDF浏览器用户请先下载安装 原版全文

猜你想看
相关文章

Copyright © 2008 - 2022 版权所有 职场范文网

工业和信息化部 备案号:沪ICP备18009755号-3