看门狗cop模块

合集下载

AN3476_基于MCF56F8013的洗衣机的三相交流感应电机直接矢量控制方案(中文)

AN3476_基于MCF56F8013的洗衣机的三相交流感应电机直接矢量控制方案(中文)

飞思卡尔应用笔记AN3476洗衣机的三相交流感应电机直接矢量控制方案——基于MCF56F8013文件编号:AN3476版本:1,08/2007苏州大学飞思卡尔嵌入式教学与应用培训中心译2008年5月目录1 应用特性 (1)1.1 Freescale控制器的优势和特点 (3)2 交流感应电机的矢量控制 (4)3 矢量控制算法概述 (7)3.1 转子磁通的估算 (9)3.2 自适应电路 (10)3.3 定子电压的解耦 (11)3.4 空间矢量调制 (12)3.5 电流控制回路 (14)3.6 三相电流的重构 (15)3.7 弱磁控制模块 (17)3.8 利用转速传感器的速度感应 (17)3.8.1 利用转速传感器和外部硬件比较器的速度感应 (17)3.8.2 利用转速传感器和软件比较器的速度感应 (18)3.9 速度控制回路 (19)4 洗衣机算法 (20)4.1滚动洗涤循环 (21)4.2 失衡检测 (21)4.3 脱水循环 (21)5 软件设计 (22)5.1 应用程序流程图 (22)5.2 应用程序状态图 (23)6 用户控制接口 (24)6.1 FreeMaster控制界面 (24)7 洗衣机驱动参数的调整 (26)8 飞思卡尔半导体公司的技术支持 (27)9 参考文献 (27)10 术语表 (28)洗衣机的三相交流感应电机直接矢量控制方案——基于MCF56F8013Pavel Sustek, Petr SteklFreescale半导体公司洗衣机设计上的最新趋势是用新型的、电子控制的无刷驱动器取代传统的驱动系统。

过去,洗衣机的设计主要借助于两个广泛应用的驱动系统。

较早的设计采用机电控制的双速单相交流感应电机。

这种驱动系统在新的机器中已经不再使用,而仅在最廉价的机型中还有些应用。

之后,绝大多数洗衣机都采用晶闸管(TRIAC)控制的通用型有刷电机。

然而,随着新电子器件的出现,这些驱动系统正在逐渐被淘汰。

基于DSP实现可并机的逆变电源

基于DSP实现可并机的逆变电源
6)采用独特调控原理,“均流不平衡度”≤2%;
7)可带电热更换,操作维护方便;
8)输出电压精度高,为220(1±1%)V;
9)输出频率精度高,为50±0.001Hz;
10)全LCD数字显示、测量,菜单控制操作,便于对系统状态进行在线实时监测;
为了提高逆变单元的可靠性和负载适用性,在50HzIGBT逆变桥前增加补偿器及损耗器。
DA2000HP逆变单元采用的算法是模糊控制算法,把电压误差和电流作为输入模糊变量,实现逆变单元模糊控制。
2.3 DSP56F805简介
Motorola公司开发的数字信号处理器DSP56F805具有16位高速定点运算能力,既有单片机(MCU)灵活控制功能和丰富的外设,又有DSP高速运算能力,非常适合电源控制、电机控制、工业控制、仪表制造等领域。这种型号的数字信号处理芯片具有如下优点:
3)控制灵活,维护方便,系统的一致性好,成本低。
正弦波逆变电源的控制策略有PLD控制、无差拍控制、模糊控制等。对于高性能的逆变电源的设计,模糊控制器有着以下优点:
1)模糊控制器的设计过程中不需要被控对象的精确数学模型,模糊控制器有着较强的鲁棒性和自适应性;
2)查找模糊控制表只须占用处理器很少的时间,因而可以采用较高采样率来补偿模糊规则和实际经验的偏差。
逆变电源采用数字控制,具有以下明显优点:
1)每个并联运行的逆变单元模块都采用全数字化控制,易于在模块之间更好地进行均流控制和通信,或者在模块中实现复杂的均流控制算法,从而实现高可靠性、高冗余度的逆变单元并联运行系统;
2)易于采用先进的控制方法和智能控制策略,使得逆变电源的智能化程度更高,性能更完美;

第2章MC9S12DG128的结构与工作原理

第2章MC9S12DG128的结构与工作原理

2.1 MC9S12DG128的内部结构
2.1.1 CPU12内核(Star Core)
(2)间址/变址寄存器(Index Register) X、Y
❖ CPU12内部有两个16位地址寄存器IX和IY,称为间接寻址寄 存器,简称间址寄存器或变址寄存器。一般情况下作为指针 寄存器,用于多种寻址方式下的地址计算,也可用于临时存 放数据或参与一些运算,只能按照16位方式访问。
❖ 若把一个16位数据存入累加器D中,则高8位在A寄存器中,低8位在B 寄存器中。与此相对应,若把D寄存器中的一个16位数据存入存储器, 则高8位在存储器的低位地址,低8位在存储器的高位地址。
❖ 注意,任何Motorola (Freescale)公司独立设计的16位、32位CPU中, 寄存器与存储器字节的对应关系都是高位数据存放于低位地址,低位数 据占用高位地址,这与Intel公司的CPU数据存放格式正好相反。
2.1 MC9S12DG128的内部结构
2.1.1 CPU12内核(Star Core)
❖ SP主要用于堆栈管理,用于中断和子程序调用时保存系统地址信息,也 可以存储临时信息,一般不做他用。
❖ 在不影响其内容的前提下,也可替补用作所有变址寻址方式下的变址寄 存器,通常不参与运算。
❖ 惟一例外的是,在符号扩展指令中用作目的寄存器。此外,还具有自身 的加、减1指令。
(Program State Word),但不同的是,它还可以参与控制CPU的行为。 ❖ 条件码寄存器中各位的定义:
CCR中的各位包括两部分: ➢5个算术特征位(Arithmetic Flag Bit) ,即H、N、Z、V、C,它们反映上一条指令执 行结果的特征(状态); ➢3个MCU控制位,即中断屏蔽位X、I和STOP指令控制位,这3位通常由软件设定, 以控制CPU的行为。复位后,X、I两位默认状态为1,屏蔽系统中断。CCR是真正的 专用寄存器,除了C、H位以外,其他各位不参与任何运算。

飞思卡尔中英文翻译对照

飞思卡尔中英文翻译对照

中文译文第1章器件概述S12XS-系列1.1简介新S12XS家族16位微控制器是S12XE家族的兼容,简化版本。

这些家庭提供了一种简单的方法来制定共同的平台,从低端到高端应用程序,最大限度地减少软件和硬件的重新设计。

针对通用汽车的应用和CAN节点,这些应用的一些典型的例子分别是:车身控制器,乘员检测,车门模块,RKE接收器,智能执行器,照明模块和智能接线盒以及很多其他。

该S12XS家族保留了许多S12XE家族包括纠错码的功能(ECC)的快闪记忆体,一个独立的数据闪存模块的代码或数据的存储,一个调频锁相环(IPLL),提高了EMC性能和快速的ATD转换器S12XS家族将提供32位的性能与16位MCU的所有优势和效率。

它将保留低成本,目前享有的功耗,EMCand代码大小效率优势由飞思卡尔现有的16位S12和S12X MCU系列的用户。

像其他S12X成员家庭,S12XS家庭将运行16 - bit宽访问无需等待状态的所有外设和回忆。

该S12XS家庭将可在112引脚LQFP ,80引脚QFP ,64引脚LQFP封装选项和保持与S12XE家族针兼容性的高水平。

除了在现有的I / O端口每个模块,多达18个进一步的I / O端口,可与中断功能,允许唤醒从停止或等待模式。

外设集包括MSCAN ,SPI,2个SCI,可,一个8通道24位周期中断定时器,8 - 通道的16位定时器,8通道PWM和多达16 - 通道12位ATD转换器。

软件控制外设到端口的路由可以访问外设模块的灵活组合在较低的引脚数封装选项。

1.1.1特点在S12XS-系列的特性都在这里列出。

请参阅表D-1对于内存选项和表D-2外设功能,可在不同的家庭成员。

•16位CPU12X- 向上与S12指令集除了五个模糊的指令兼容(MEM,W A V,W A VR,REV,REVW),它已被删除-增强的变址寻址-- 访问大数据段独立PPAGE的-•INT(中断模块)-- 七个级别的嵌套中断-- 中断源到每个灵活分配中断级。

锁相环配置时钟

锁相环配置时钟

锁相环配置时钟锁相环作为一个提供系统时钟的模块,是一个基本的模块,几乎每次编程序都得用到。

下面记一下怎样配置锁相环来设定想要的系统时钟。

锁相环PLL、自时钟模式和前面说的实时中断RTI、看门狗COP都属于系统时钟与复位CRG中的模块,固前面用到的寄存器,这里有些会再用到。

在程序中配置锁相环的步骤如下:第一、禁止总中断;第二、寄存器CLKSEL的第七位置0,即CLKSEL_PLLSEL=0。

选择时钟源为外部晶振OSCCLK,在PLL程序执行前,内部总线频率为OSCCLK/2。

CLKSEL_PLLSEL=0时,系统时钟由外部晶振直接提供,系统内部总线频率=OSCCLK/2(OSCCLK为外部晶振频率)。

CLKSEL_PLLSEL=1时,系统时钟由锁相环提供,此时系统内部总线频率=PLLCLK/2 (PLLCLK为锁相环倍频后的频率)。

第三、禁止锁相环PLL,即PLLCTL_PLLON=0。

当PLLCTL_PLLON=0时,关闭PLL电路。

当PLLCTL_PLLON=1时,打开PLL电路。

第四、根据想要的时钟频率设置SYNR和REFDV两个寄存器。

SYNR和REFDV两个寄存器专用于锁相环时钟PLLCLK的频率计算,计算公式是:PLLCLK=2*OSCCLK*(SYNR+1)/(REFDV+1)其中,PLLCLK为PLL模块输出的时钟频率;OSCCLK为晶振频率;SYNR、REFDV 分别为寄存器SYNR、REFDV中的值。

这两个寄存器只有在PLLSEL=0时才能够写入(这里就是第二步的设置原因所在了)。

第五、打开PLL,即PLLCTL_PLLON=1。

第六、CRGFLG_LOCK位,确定PLL是否稳定。

当锁相环PLL电路输出的频率达到目标频率的足够小的误差范围内时,LOCK位置1,此时说明PLLCLK已经稳定,可以作为系统的时钟了。

该位在正常情况下为只读位。

第七、PLLCLK稳定后,允许锁相环时钟源PLLCLK为系统提供时钟,即CLKSEL_PLLSEL=1。

EnergyMicro+EFM32系列微控制器看门狗定时器(WDOG)

EnergyMicro+EFM32系列微控制器看门狗定时器(WDOG)

厦门办事处
E-mail:sales.xiamen@
沈阳办事处
E-mail:sales.shenyang@
产品应用笔记
©2012 Guangzhou ZLG MCU Technology Co., Ltd. ii
广州周立功单片机科技有限公司
看门狗定时器
EFM32 系列微控制器
2.1
基本操作 ................................................................................................................... 4
2.1.1 看门狗使能...........................................................................................................4
广州专卖店
地址:广州市天河区新赛格电子城 203-204 室 电话:(020)87578634 87569917 传真:(020)87578842
南京周立功
地址:南京市珠江路 280 号珠江大厦 1501 室 电话:(025) 68123901 68123902 传真:(025) 68123900
北京周立功
2.1.2 喂狗.......................................................................................................................4
2.2
配置........................................................................................................................... 4

Ch06-RstBoot(k60中文)

Ch06-RstBoot(k60中文)

第六章复位和启动6.1 简介MCU支持的复位源有:表6-1 复位源除了EzPort和MDM-AP复位之外,每个系统复位源在系统复位状态寄存器(SRSH和SRSL)都有相应的位。

详见模式控制器一章。

EZP_引脚决定的功能模式下选择单片(默认)模式或串行flash编程MCU在CS(EzPort)模式而退出复位状态。

详见启动选项。

6.2 复位此部分讨论基本的复位机制和复位源。

一些引发复位的模块可以配置为触发中断。

参见各独立外设章节获取更多信息。

6.2.1 上电复位(POR)当给MCU上电或提供的电压低于上电复位重置电压(V POR)时,POR电路会触发POR 复位。

当电压升高时,LVD电路保持MCU处于复位状态直到电压大于LVD低电压阈值(V LVDL)。

POR复位后SRSL寄存器的POR和LVD位亦重设。

6.2.2 系统复位MCU复位是一种可以使芯片回到初始状态的方法。

系统复位起始于全面监管的片上调节器和来自于内部参考的系统时钟发生器。

当芯片退出复位时,它按如下顺序操作:·从中断向量表0偏移开始读取开始SP(SP_main)·从中断向量表4偏移开始读取PC·LR设置为0xFFFF_FFFF片上外设模块和非模拟IO引脚最初都被置为禁止。

复位之后模拟引脚被默认为相应的模拟功能。

复位时,JTAG相应的输入引脚被配置为:·TDI上拉(PU)·TCK下拉(PD)·TMS上拉相应的输出引脚被配置为:TDO既不上拉也不下拉注意到nTRST初始被配置为禁止的,然而一旦被配置为JTAG功能时,它的相应输入引脚被配置为:·nTRST上拉6.2.2.1 外部引脚复位(PIN)RESET是一个专用引脚。

该引脚开漏和内部上拉。

RESET将芯片从任何模式唤醒。

在该引脚复位时,SRSL[PIN]被置位。

6.2.2.1.1复位引脚过滤RESET引脚在所有的模式中都支持数字过滤。

MC9S12XS128之看门狗COP

MC9S12XS128之看门狗COP

目前接触到的单片机中都有看门狗模块,不过写过的程序也比较简单,程序能够稳定运行,所以就不怎么理会这看门狗,因此也不知道看门狗是怎么回事。

DABAO最近写了个超声波测距的程序,运行过程中程序老是会无故停止,就是死机了。

因此不得不重新面对看门狗,经过两天的奋斗,终于让看门狗顺利工作了。

下面记一下XS128的看门狗的相关寄存器及用法。

看门狗模块用于检测程序的正常运行,启动看门狗后,必须在看门狗复位之前向ARMCOP中依次写入0X55和0XAA ,这样看门狗就会重新启动计时。

如果在规定时间内没有完成向ARMCOP中依次写入0X55和0XAA的操作,就会引起看门狗复位。

这样可以使程序重新运行,减小程序跑死的危害。

看门狗的设置比较简单,只要配置好寄存器COPCTL即可用。

COPCTL的第七位为:WCOP。

若写入COPCTL_WCOP=1,则看门狗行运在窗口模式下,必须在看门狗周期的后25%时间内向ARMCOP依次写入0X55和0XAA。

若在其他时间写入,或写入其他值,都会让看门狗溢出,使单片机复位。

若写入COPCTL_WCOP=0,则看门狗运行在正常模式下。

当看门狗使能后,只要在看门狗溢出周期内依次向ARMCOP写入0X55和0XAA,使看门狗计数复零,即可。

第六位为:RSBCK,BDM模式下的COP和RTI 停止位。

若COPCTL_RSBCK=1,则只要进入BDM模式,就停止COP和RTI(实时中断)计数。

若COPCTL_RSBCK=0,则在BDM模式下允许COP和RTI运行。

低三位为:CR2、CR1、CR0。

这三位是看门狗时钟分频位。

当CR[2:0]=000时,看门狗COP不可用。

只要CR[2:0]不为000,看门狗就开启了。

当CR[2:0]=001时,分频值为(2的14次方)。

当CR[2:0]=010时,分频值为(2的16次方)。

当CR[2:0]=011时,分频值为(2的18次方)。

当CR[2:0]=100时,分频值为(2的20次方)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

看门狗模块(COP) (1)
第一节看门狗COP简介 (1)
第二节看门狗模块相关寄存器 (1)
2.1看门狗设置存器COPCTL (1)
第三节看门狗模块应用实例 (2)
看门狗模块(COP)
第一节看门狗COP简介
看门狗模块用于检测程序的正常运行,启动看门狗后,必须在看门狗复位之前向ARMCOP 中依次写入0X55和0XAA ,这样看门狗就会重新启动计时。

当用户程序跑飞时在规定时间内没有向ARMCOP中依次写入0X55和0XAA的操作,就会引起看门狗复位,看门狗产生一个强制系统复位。

这样可以使程序重新运行,减小程序跑死的危害。

第二节看门狗模块相关寄存器
2.1看门狗设置存器COPCTL
WCOP看门狗喂狗模式设定位
WCOP=1,则看门狗行运在窗口模式下,必须在看门狗周期的后25%时间内向ARMCOP依次写入0X55和0XAA。

若在其他时间写入,或写入其他值,都会让看门狗溢出,使单片机复位。

WCOP=0 则看门狗运行在正常模式下。

当看门狗使能后,只要在看门狗溢出周期内依次向ARMCOP写入0X55和0XAA,使看门狗计数复零,即可。

RSBCK,BDM模式下的COP和RTI 停止位。

若COPCTL_RSBCK=1,则只要进入BDM模式,就停止COP和RTI(实时中断)计数。

若COPCTL_RSBCK=0,则在BDM模式下允许COP 和RTI运行。

CR2、CR1、CR0。

这三位是看门狗时钟分频位。

当CR[2:0]=000时,看门狗COP不可用。

只要CR[2:0]不为000,看门狗就开启了。

当CR[2:0]=001时,分频值为(2的14次方)。

当CR[2:0]=010时,分频值为(2的16次方)。

当CR[2:0]=011时,分频值为(2的18次方)。

当CR[2:0]=100时,分频值为(2的20次方)。

当CR[2:0]=101时,分频值为(2的22次方)。

当CR[2:0]=110时,分频值为(2的23次方)。

当CR[2:0]=111时,分频值为(2的24次方)。

看门狗的溢出频率为:COP溢出频率=OSCCLK / CR[2:0]。

OSCCLK为晶振频率
第三节看门狗模块应用实例
/********************************************
龙丘MC9S12XS128多功能开发板
Designed by Chiu Sir
E-mail:chiusir@
软件版本:V1.2
最后更新:2011年4月5日
相关信息参考下列地址:
网站:
淘宝店:
------------------------------------
Code Warrior 5.0
Target : MC9S12XS128
Crystal: 16.000Mhz
busclock:8.000MHz
**********************************************/
#include <hidef.h> //工程通用的宏文件
#include "derivative.h" //单片机硬件型号文件
#define LED PORTB //定义连接发光二级管的PORTB口数据寄存
//为LED,写'0'亮,写'1' 灭
#define LED_dir DDRB //定义连接发光二级管的PORTB诜较蚣拇嫫?
//为LEDCPU_dir,写'0'做输入口,写'1'做输出口
/*************************************************************/
/* 初始化看门狗*/
/*************************************************************/
void INIT_COP(void)
{
COPCTL = 0x07; // 7位WCOP=0 设置为正常COP模式
// 6位RSBCK=0设置在BDM模式下允许COP和RTI运行
// 210位CR[2:0]=111 COP溢出频率=OSCCLK / CR[2:0]
// COP溢出频率=16M/2^24
//设置看门狗复位间隔为1.048576s
}
/*************************************************************/
/* 延时函数*/
/*************************************************************/
void delay(void)
{
unsigned int i;
for(i=0;i<50000;i++);
}
/*************************************************************/
/* 主函数*/
/*************************************************************/
void main(void) {
DisableInterrupts; //禁止所有中断打开
INIT_COP(); //初始化看门狗模块
LED_dir = 1; //设置连接发光二级管的PORTB口为输出口
LED = 0; //初始化发光二极管为亮
delay(); //延时一定时间,使人眼能识别发光二极管闪烁现象LED = 1; //发光二极管为灭
EnableInterrupts; //打开所有中断打开
for(;;)
{
_FEED_COP(); //喂狗函数
//在特定时间内依次向ARMCOP写入0X55,0XAA;
delay();
}
}。

相关文档
最新文档