×
嵌入式开发 > 详情

正确理解微控制器的关键结构特性可以改善设计

发布时间:2020-06-17 发布时间:
|

分布通道用户在设计诸如无线网络应用等高性能、低成本和低功耗系统时,需要既能减少系统器件成本又适合其产品要求的集成微控制器。这些应用要求运行速度大于33MHz,既有片上Ram和Flash存储器,又有易于使用高级语言编程的先进外围设备阵列。
单芯片微控制器通常包括时钟和复位逻辑、处理器、存储器、处理器的中断控制器、外围设备和外部总线接口。由于各厂商定位的市场目标不同,外围设备的类型在控制器厂商中变化很大,但大部分都是通用I/O端口、定时器、串行接口和ADC。这些资源的整合减少了它们与处理器间操作可见度,所以在硬件/软件的集成过程中,需要一些调试钩来完成设计(见图1)。
主处理器控制程序流,它决定了计算速度、存储器存取的类型、开发方法以及是否适用于低功耗应用。还可以定义运算精度,存储临时变量的寄存器的数量决定C语言代码的编译效率。
嵌入式微控制器内含的存储器阵列可以减少系统器件数量、功耗以及触发电路板信号跟踪产生的电磁干扰,也就减少了整个系统的成本。当片上Flash用作永久性存储器时,Sram通常用于临时程序执行和变量存储。外围设备通常用于映射特定地址的存储器,存取指令系统中的指令代码。

接收和运行实时中断
高效地处理一个或多个中断是嵌入式微控制器的关键任务。中断可以来自多个中断源,从大于1s到小于10ms。所以,在一个中断服务延迟内,应估算最差中断请求条件、了解能够提供的中断服务数目,以及优先级排序情况等。
摩托罗拉32位MMC2107微控制器中,使用M-Core处理器和中断控制器的功能组合来完成有效的中断处理。使用32个唯一的可编程优先级可以向至少40个中断源提供服务,优先级对应于一个中断源。中断源可屏蔽,并且各个优先级能够被编程用于标准或快速的中断请求,快速中断请求的优先权高于标准中断请求。中断输入通过编程可以用于边沿触发或电平触发。
中断服务可以被中断请求自动向量化或者向量化,向量化中断基于优先级产生。对标准和快速的中断,分离向量编号可以实现对中断的快速处理。在中断等待过程中,软件能够自己安排中断进度表。中断控制器并不受低功耗模式影响。

与其它设备通讯
许多系统要求采用一种方法与一个或多个主计算机、终端和其他微控制器通讯,通讯时使用串行异步RS-232协议。该协议允许使用一种工业方式使信息通过,最少使用两线。
在实现特定功能的系统集成过程中,可以要求许多专门的电路。这些独立的外围设备包括ADC、DAC、串行Flash存储器、执行SPI协议的LCD阵列、带微控制器的全双工数据传输器。这些高速串行传输器基于多倍微控制器时钟。
实时系统使用专门的硬件计时器,用于保持时间、测量和创建事件及产生周期性中断。这些计时器用于计算和控制事件,例如发动机速度和加速度、波形产生、周期性中断产生、实时时钟、步进电动机控制器。这些应用要求计时器同样带计数器,用来测量和创建可变的脉冲宽度,以及减少微控制器的自动重新加载。
在嵌入式应用中,ADC用于许多不同的领域,包括音频滤波、噪声消除、频率平衡和波形分析等。在不同的技术中,ADC有不同的反应时间和精度,其所能监视的输入通道数量变化很大。
MMC2107的队列ADC(QADC)能够支持40个指令字和40个10位转换结果(见图2)。能够将操作排队,并且QADC有至少16个模拟输入通道,能够自动地转换多路模拟输入。借助外部多路复用器,QADC能够采样44个不同的模拟通道。通过外部触发器、QADC计时器或软件,可以设置触发采样。QADC能够同时采样两个通道,并且对每个队列或者子队列链产生一个中断。

系统特性加强应用
另外,还应考虑增加系统可靠性和电池寿命。尤其是在苛刻的环境中,代码可能周期性地收到高电压或机械震动,以致引起系统停机或死机,这就需要专门的计时器来确保应用程序的持续运行。系统复位、外部存储器接口和调试也是必要的功能。
对MMC2107来说,可以用有23位地址总线和4个片选信号的32位外部双向数据总线来处理外部存储器或电路的接口。如果不需要外部总线,引脚可以作为通用I/O线使用。内部总线的活动能够通过直接连接到逻辑分析仪的显示循环模式,内部总线的状态可以提供给外部接口总线。通过直接存取所有片内应用资源的JTAG/OnCE调试端口,可以方便地使用调试代码。■



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
发明专利在疫情影响下的逆势增长