|
大量有关ST7系列单片机的应用笔记免费下载(续一)
AN1041 使用ST7 PWM(脉冲宽度调制)产生模拟输出(正弦波) 本文阐述怎样用ST7 PWM/BRM来产生平均值和幅度皆可调的50Hz正弦波。该实现基于ST72511R4微控制器。
AN1042 ST7的I2C从机模式例程 本文用一个实例介绍了如何使用ST7的I2C接口进行通信。作为从设备,ST7微控制器可以与任何I2C主设备通信。ST7的I2C接口实现了在接收数据时的出错处理并把错误结果返回主设备。文中的例子是在ST72E251上实现的,它使用了I2C的7位地址模式。
AN1044 ST7微控制器多中断源管理 本文以ST72251为例介绍了在ST7微控制器上对多个外部I/O中断进行管理的技术。
AN1045 用ST7的软件实现I2C主设备 本文以纯软件方式实现I2C主设备,它适合于任何不带I2C硬件的ST7微控制器。程序用C语言编写,它实现了I2C主设备的发送和接收功能。实例中,ST7作为主设备,通过I2C总线与作为从设备的EEPROM通信。
AN1046 ST7 UART仿真软件 所有ST7系列微控制器都有一个带输出比较和输入捕获功能的16位定时器。 本文介绍了如何用ST7定时器来仿真RS232UART(通用异步串行收发器)的技术,实现串行通信只需2个引脚而不需任何外加器件。 本文的第一部分解释了RS232串行通信协议及怎样针对ST7定时器进行一些调整。本文的其它部分更详细地讲述程序在发送和接收模式下是怎样工作的,并在一些要点上配有时序图。 UART仿真程序所需的代码量很小,读者可以容易地修改本文提供的例子应用到自己的项目中。 文中提供的代码已在ST72251上实现,并在各种可能的配置方式下通过了与PC机相连的测试。
AN1068 如何选择微控制器的ROM,FASTROM和FLASH 客户在开发基于单片机的应用的不同阶段,需要不同级别的修改器件中代码的能力;为了满足这些不同的需求,意法半导体公司提供了不同的器件类型: EPROM、OTP、FASTROM和ROM型; FLASH、FASTROM和ROM型; 本文将讨论第二种类型。如需要知道第一种类型的器件请参照应用笔记AN886。
AN1070 校验和自校验性能 该应用笔记是介绍一种软件技术,该技术用来决定是否在EPROM里的数据和程序已经被破坏,假如已被破坏的话就不再运行用户程序。在此笔记里描述的程序适用于ST7GP系列(ST72101G1和G2, ST72121J2, ST72212G2, ST72213G1, ST72251G1 and G2, ST72311N2 and ST72331N2)。在本文中,我们选择使用ST72251G2。
AN1071 使用带USB接口的ST72611开发半双工的USB-串口转换器 文本介绍了如何开发一个转换器使RS232接口的设备能通过USB接口连接到主机。与主机的通信建立在HID协议上,实现最大通信速率为800比特每秒的USB低速设备。 使用由操作系统提供的HID驱动和应用程序库使得开发主机应用程序更加简便。
AN1077 ST7和ST9系列单片机增加的CAN总线控制器的介绍 近年来由于OSEK系统的应用和ECU数量的增加,对于车身网络的需求有了显著的改变。在汽车电子的应用中,8位的微控制器已经并还将占据主要地位。然而当各种各样强大的CAN处理器开始应用于16位和32位的微控制器,8位的微控制器却仍然需要占用大量的CPU时间来管理CAN通信。本文介绍了一种全新的,专为汽车电子应用设计的,为8位微控制器优化的CAN处理器。
AN1078 ST7定时器实现PWM占空比0%到100%可变 本文讲述一个利用16位ST7定时器来实现PWM输出的程序,程序可灵活地调节占空比,程序工作在固定地周期下可实现真正的0%到100%的占空比可调.示例程序适用于所有ST7通用微控制器(ST72251G1和ST72251G2)
AN1082 ST72141马达控制外围模块特殊寄存器的说明 ST72141用于控制有位置传感器或无位置传感器的永磁直流无刷电机。 其电机控制功能由片内硬件的电机控制模块来实现,该模块分为4个部分,分别为: - 反电动势过零及退磁结束的检测器; - 过零与换流间的延时管理单元; - PWM 管理单元; - 通道管理单元。
AN1083 ST72141的BLDC电机控制程序及流程图 本文所介绍的软件程序是由ST7MTC1 KANDA套件产生,其中80%的代码是通用的,其余20%的代码是专门用于ST7MTC1 KANDA 套件的控制(用户界面及与PC机的通讯)。 文中给出了此程序的流程图,它解释了如何用电流和电压模式控制电机及其开环/闭环速度控制的方法。 本文所附的程序是一个以电流模式及闭环速度控制来驱动一个BLDC电机的实例。
AN1086 ST7和ST10系列用于多路汽车电路的带U435接口的CAN总线解决方案 由于使用多路网络技术取代了传统的信号处理方式,汽车电路变得更加容易布线和具有灵活性,从而提高了这些电路的竞争性。CAN总线由于其在速度和防噪声方面的优势而成为多路系统中具有优势的协议。然而,每个项目都在协议,价格和性能方面有特殊的要求。所以一个单一的构架不可能满足所有的需求。本文首先比较了主要的支持多路系统的协议,包括CAN, J1850和SCI/UART。文章的第二部分介绍了一种优化的构架,使用了内置FLASH和ROM的微控制器,如ST725x,ST92F120,和ST10F167,以及一个物理接口(U435)。 最后,介绍了MCU核的发展方向,即内置FLASH和高度集成。
AN1103 在低速和低压应用中使用ST72141增强的反电动式检测 ST72141是意法半导体专为驱动BLDC(直流无刷)电机而设计的微控制器。基于四重电压检测级别的反电动式过零检测,最适合于无传感器的电机控制。ST72141提供了完全的数字控制方案,电机的相线可以直接通过一个电阻联到微控制器的输入管脚。 在低速或低电压应用中,反电动式信号非常低,过零检测变得十分困难。本文介绍了一种在低速或低电压应用中,改进反电动式过零检测的方案。
AN1105 ST7的CAN总线驱动器 控制器区域网络(CAN)标准是一个快速且高可靠的串行总线协议,它适用于由微控制器、传感器、驱动器一类的智能设备所组成的局域网。现在它已经被广泛使用,尤其在汽车领域,以及家庭自动化和工业设备控制领域。 不少ST7的单片机中都内置了CAN模块,我们称之为pCAN,因此这些控制器可用作CAN网中的节点。ST提供了软件驱动程序以帮助用户使用pCAN单元进行设计应用。 本文介绍了如何使用此驱动器及它是如何工作的。用户可根据本文附带的文件建立自己的软件,或根据需要进行适当的修改。
AN1106 如何将HC05的汇编程序转换到ST7上 本文的目的是帮助客户将他们的HC05的汇编语言源程序翻译成ST7识别的源程序。即使这两种汇编语言再相似,整个体系和程序结构仍然是不同的。一个名为“migr2st7"的翻译软件由ST公司开发,并适用于CD上所列出的所有微控制器。如要了解更多的关于ST7汇编语言工具的信息,请参阅AN988”如何使用ST7的汇编工具“和ST网站(www.stmcu.com)上或ST7 CD上的软件程序库。
AN1129 使用ST72141驱动BLDC电机时的PWM管理 直流无刷电机(BLDC)具有效率高、运行噪音低且起动力矩大的特点,这部分归功于内置的永磁体。由于这些特性,它被越来越多地应用在很多领域,如:硬盘驱动器、风扇、泵、压缩机等。然而BLDC电机必须象同步电机一样运行,必须使用电路来驱动它,包括转子位置传感器、开关器件和控制单元。 在多数情况下,这些开关器件是MOSFET或IGBT,且并联了续流二极管组成3相桥臂。驱动电机的传统方法是通过HALL传感器检测转子的位置进而决定定子绕组的通电与否。 ST开发了一款ST72141单片机,它基于一个工业级的标准内核,专门用于BLDC电机的驱动。它的最大特点之一是不需传感器,只需通过读取反电动势来精确地驱动电机。用三个电阻来替代三个HALL传感器,把相电压经过电阻限流后直接输入到单片机的端口上,给单片机提供转子位置信号。此单片机取代了标准控制器及转子位置传感器。当然,它也可用传感器的方法来驱动电机。 尽管就成本和控制板尺寸来讲无传感器方法有很大的优势,但它的控制方法相对而言较复杂。本文介绍了何时能直接读取反电动势,及如何快速地设置各个控制寄存器以应用ST72141的各种先进的功能。
AN1130 使用ST72141进行BLDC电机驱动的介绍 电机是当今工业界的主要设备,每年全球生产不少于50亿台电机。 直流无刷电机(BLDC)已经用于硬盘驱动及许多工业应用领域,而且它们在汽车、家电及工业应用领域的市场占有率在不断地明显增长。 意法半导体开发的ST72141单片机可以控制同步马达,特别是控制三相BLDC电机。由于这类电机的高效率、低噪音、体积紧凑、高可靠及长寿命的特点,使其在工业控制、汽车设备、冰箱、空调、压缩机、风扇等领域得到广泛应用。 ST72141是ST7系列微控制器的一员,是专为马达控制应用而设计,且包含A/D转换器和SPI接口,它内置的BLDC电机控制模块可驱动有传感器或无传感器的电机。
AN1131 如何将基于ST72511/311/214/124的应用移植到ST72521/321/324上 本文提供了如何将基于ST72511/311R、314N、314/124J的应用移植到ST72521/321R、321/324J上去的一些信息。ST72521/321R、321/324J系列的芯片在设计和生产上使用了一些更先进的技术。
AN1148 用ST7263设计USB鼠标 本文讲述用ST7263微控制器来实现成本低廉的USB鼠标.其中第5部分详细描述了低功耗模式的实现.ST提供了完整的框架和固件库来帮助客户开发自己的具体应用.在本文的结尾,提供了参考文档的一个列表.本文假定读者熟悉ST7263和USB。
AN1149 处理USB鼠标的挂起模式 所有的USB设备都必须支持挂起模式,挂起模式使得USB总线上超过3毫秒没有活动时,让USB外设进入低功耗模式。象USB键盘和定位设备一样,USB鼠标在检测到键被按下或鼠标被移动时,必须能退出挂起模式。该特性叫远程唤醒模式。远程唤醒包括向USB线上发出恢复(重新开始)序列信号以及鼠标和主机间的通信恢复。本文描述用ST7263微控制器制作的USB鼠标对挂起和远程唤醒模式的实现。第1章主要谈到在进入挂起模式前应该如何处理的建议;接着详细讲述为了应对远程唤醒模式而对外围RC电路的选取,内容包括电源管理建议和RC参考值建议;第3章讲述唤醒模式;第4章和第5章讲述软件实现和程序流程。 本文假定读者熟悉ST7263和USB。
AN1150 用标准测试程序比较ST72和PIC16 本文介绍了ST公司的ST72254和Microchip公司的PIC16F876之间的比较结果。选择这两款微控制器进行比较的原因是它们具有相近的性能并且几乎同时面世。对这两款芯片的比较分为两个主要的部分。第一部分是内核,比较了芯片的系统结构,包括对一系列性能的标准测试。这些标准测试程序基于汇编和C语言,针对于微控制器的一些典型应用。第二部分测试了外围器件的功能,独立于内核的程度,和它们的驱动软件。在最后,有表格总结了这两种微控制器各自的优缺点。在ST公司的网站 (www.stmcu.com) 的应用参考手册栏目内可以找到与本文相关的两个文件,第一个的名字是“ST72254和PIC16F876性能的比较“,包括了本文的比较结果和对一些使用到的测试代码和编译选项的介绍。本文的目的是为了帮助用户更容易的重做一些标准测试。第二个文件则重组了一些使用到的源代码。有关PIC16F876的信息,请参考Microchip公司的数据手册(S30292A.PDF)。
AN1151 ST72254和PIC16F876的性能比较 ST公司开发了两套关于8位和低档的16位微控制器应用的测试程序,用来评估微控制器内核的处理性能。这些测试程序已经用于测试ST72254和PIC16F876这两款微控制器。其中的一套程序用汇编语言编写,使之能关注于内核性能并最优化的执行代码而不牵涉到编译器的转化能力。另一套程序则用来评估两款微控制器的性能和它们各自的C编译器的能力。这个标准测试程序由C语言编写,是典型的汽车电子的应用。分别用HIWARE编译ST72的C代码,用Hi-Tech编译PIC16的代码。这两款芯片的执行速度用以下两种方法进行比较,首先使用这两款芯片分别允许的最大运行频率,即对于ST72使用16MHz的外部时钟输入,对于PIC16使用20MHz的外部时钟输入。其次,使这两款芯片处于相同的电流消耗水平(10mA)(这个电流值是可以修改的)。我们可以看到,为了使这两款芯片都达到这样的电流消耗标准,PIC16的运行频率必须低于10MHz,而ST72仍然可以保持其最大运行频率即16MHz。
AN1179 用远程ISP模式对ST7 Flash微控制器编程 本文有两部分,第一部分介绍下列ST7器件的ISP和Flash编程:ST72C104、ST72C124、ST72C171、ST72C215、ST72C216、ST72C254、ST72C314、ST72C334、ST72C411。第二部分给出了如何用ISP协议使用另一个ST7,对Flash存储器和ST72C254的选择字节编程。
AN1180 用ST7263套件实现一个USB游戏手柄 本文所说的游戏手柄是低速自供电的设备,它包括X、Y轴控制,和10个按键以及2个振动器(振动马达)。为了演示对ST7263微控制器的使用,我们用ST7263演示套件来实现USB游戏手柄,并带有USB鼠标和热键功能。这个应用用到了ST7263微控制器的主要功能,包括A/D转换、3个USB端点(Endpoint)(控制端点、中断输入和中断输出端点)以及PortA的2个具有输出比较功能的PWM口。本文所述的软件源代码可从ST网站获得。与其它USB设备一样,端点0作为控制端点被用作设备枚举;端点1是中断输入端点,通过它设备可以把数据发送给PC,这个端点由HID(人机接口设备)类的reportID(报告ID)功能共享使用。在此例中,第1个发送给PC机的数据字节是reportID号。在该应用实例中,用了3个reportID: - reported 1用于游戏手柄数据 - reported 2用于鼠标数据 - reported 3用于热键功能 端点2是中断输出端点,用于接收PC机发给设备的数据,该端点被用作控制马达产生振动。
AN1181 静电放电灵敏度的测量 本文描述的是关于微控制器器件对静电放电导致受损感受度的流程。
AN1276 ST72141驱动BLDC电机时的起动程序 ST推出的ST72141用于控制BLDC电机,它具有有传感器或无传感器两种模式,使用ST的专利来检测反电动势的过零事件(详见AN1130)。 本文是对ST72141驱动BLDC电机时的起动程序的注释。
AN1278 LIN(LOCAL INTERCONNECT NETWORK)的解决方案 许多应用于汽车设计中的机械组成部分已经或正在被一种智能的电子机械化系统所取代。有许多的线路需要连接到这个系统中。为了降低这些线路的数量和控制这些系统结构相互间的通信,许多的汽车生产厂商开发了各种不同的彼此不兼容的总线系统。为了能有一个标准的总线结构,欧洲的汽车生产厂商组建了一个联盟来定义一种新的汽车电子模块的通信标准。这种新的总线标准被称为LIN总线,用于一些做简单切换的应用,如汽车坐垫,门锁,遮阳板,雨刷之类。
AN1321 使用ST72141在有传感器模式下的电机控制 ST72141K专门用于BLDC电机的控制,它具有以下特性: - 电机控制单元(MTC),它可被视作在6个输出通道上的PWM多路复用器。 - 反电动势过零检测器,它用于BLDC电机在无传感器模式下的控制。 MTC是为无传感器模式控制设计的,但它也非常容易支持有传感器(一般是HALL传感器)模式控制,尤其在低速或定位时非常有用。本文叙述了在有传感器模式下控制BLDC电机时初始化MTC单元的方法。 文章分成若干段,并附以汇编程序代码。
AN1322 如何将基于ST7263-B版的应用移植到ST7263B上 本文提供了如何将基于ST7263—B版的应用移植到新的ST7263B上的信息。这些信息包括了升级开发环境使之支持ST7263B的必要步骤,和开发固件时必须注意到的两款芯片的不同之处。
AN1324 使用电源校验ST7FLITE0 MCU的RC振荡器 该应用笔记的目的是介绍一种使用欧洲标准电源(220V/50Hz)作时基,来调整ST7FLITE0内部RC振荡器的精度达1%的软件方案。用同样的方法适用于US电源标准(110V/60Hz)。
AN1325 使用ST7低速USB固件V4.x 本文讲述如何使用ST7低速USB固件V4.x。该固件用C语言编写,适用于Cosmic C编译器,它为低速USB微控制器(包括ST7261, ST7262和ST7263)提供了完整的USB协议支持,ST免费向客户提供源代码。
待续。。。。 |
|