微控制器的抗干扰软件编程方法

  • 名称:微控制器的抗干扰软件编程方法
  • 类型:电磁兼容
  • 授权方式:免费版
  • 更新时间:08-09 18:15:10
  • 下载要求:无需注册
  • 下载次数:6767
  • 语言简体中文
  • 大小:502 KB
  • 推荐度:4 星级
《微控制器的抗干扰软件编程方法》简介

标签:什么是电磁兼容,电磁兼容原理,
微控制器的抗干扰软件编程方法:微控制器越来越多地用于各种电子应用之中,例如自动化、工业控制和用户产品市场中。随着金属氧化物半导体的硅晶体管几何尺寸的不断下降,系统设计中的电磁兼容性(EMC)问题,成为采用小尺寸器件进行应用设计时必须考虑的主要问题。
在嵌入式微控制器内部,对于内部产生的电磁发射,采用软件措施的效果并不明显。因为发射主要是由于CPU中的内部时钟和噪声所引起,而且高速开关电流是由微控制器中的多种不同的门所形成。如果芯片版面设计没有考虑电磁兼容性,那么外部的PCB(印制电路板)将会大大的增强那些不必要的噪声信号。所以在很多设计中,采用软件很难消除这种固有的电子发射影响。但是,在控制器应用中,抑制外来干扰的效果却可采用软件的方式来加强。本文给出了探讨一些常用设计技巧和应用的探讨。
一、内嵌抗干扰软件
在很多的应用中,用简单的抗干扰设计,就可以将一个微控制器的干扰抑制效果大大提高。这种抗干扰设计的魅力就在于实现该设计的费用较低,还可以节省PCB板上硬件成本。
抗干扰设计的常用技巧如下:
1. 刷新端口引脚(Refreshing port pins):
抗干扰软件最简单的一个例子就是可以不断地更新I/O端口和一些重要的寄存器。在大多数微控制器的应用中,软件将会执行一个有规律的主循环。由于微控制器的I/O端口通常位于靠近连接焊点(bond pads),而这些焊点通常是位于芯片的边沿。当一个确定振幅的噪声施加到微控制器时,噪声将会从芯片的边沿向内传入硅晶体中。这意味着芯片边沿的逻辑电路最容易被外部噪声源所破坏,输入/输出电路就属于这种类型。因此有规律的更新数据寄存器和数据说明寄存器,就可以把这种故障的威胁降低。
2. 检测输入脚(Polling inputs):
另一个方法就是采用多次读输入脚数据,且取平均值作为该脚的正确数据方式。其典型应用就是用软件每隔10ms读一次键盘,以保证真实的键入发生。这种表决式做法被称作反弹跳保护。作为一种高频率检测某个端脚的HC05代码的实例如图1所示。
图1的程序可以很迅速的连续读出该端口,如果有3次读出结果相同,那么CPU将以进位标志的状态作为读结果返回(这是HC05 CPU的BRSET和BRCLR的一个固有特征)。这个程序的问题在于当输入引脚是处于很嘈杂的环境时,CPU将会按这个程序持续很长时间,这在那些对时间要求较苛刻的应用中是不实际的。更好的一个程序就是多次读出输入引脚,并使寄存器递增,如果结果小于某个数,那么就将它当作0;如果大于某个数,就作为1。这个程序通常会在有限时间内退出,以保证不会妨碍到该应用中所有其他的运行。
3. 标记通过(Token Passing):
在一些重要的处理中,标记通过以确认任务已进入受控方式而未失去控制。标记通过可以利用RAM里未用到的空间来完成。在应用的一段特定时间间隔里,该软件将通过许多未用的RAM空间循环一个1。在任何一个重要任务被执行之前,这种循环检查将会得出结果。如果检测通过,该任务将会被执行。如果没通过,则说明微控制器是从未指定的跳转进入该任务,那么就跳转去执行一个初始化程序。见图2。, 大小:502 KB
Tag:电磁兼容什么是电磁兼容,电磁兼容原理电磁兼容