底阀厂家
免费服务热线

Free service

hotline

010-00000000
底阀厂家
热门搜索:
行业资讯
当前位置:首页 > 行业资讯

C8051F041在智能功率柜中的应用 免费猫

发布时间:2020-02-17 13:16:24 阅读: 来源:底阀厂家

C8051F041在智能功率柜中的应用

同步信号过零产生中断时,使PCA计数器开始计数,并根据α、W、TSYN及PCA计数频率计算出α的对应值Tα1~Tα6和脉冲后沿的对应值TW1~TW6,并将 Tα1~Tα6写入6个模块的16位捕捉/ 比较寄存器。当捕捉寄存器的值与PCA计数器相符时,CEX引脚变为高电平,相应模块产生中断。在中断子程序中相应的TWN读写入16位捕捉/比较寄存器,其与PCA计数器值相符时,CEX引脚变为低电平,一路触发单脉冲产生,用门电路可将6路单脉冲合为6路双窄脉冲。下式为Tα和Tw计算方法:

TαN=TSYN[α+90(N-1)]/(360×TCLK)

TWN=TSYN[α+W+90(N-1)]/(360×TCLK)

N=1,2,…,6,TCLK为PCA计数器计数周期。

2.2 通过片内Flash在线修改参数

C8051F041的Flash的 0x0000~0x007F的地址范围既可用于片内64KB Flash,也可用于附加的128B的扇区,这通过设置PSCTL寄存器的SFLE位实现。由于片内Flash必须先擦除再写入,而且以512B一扇区进行,故附加的128B的扇我更适合用作非易失性数据存储。功率柜需在线修改的参数为PI调节器的P和I。下面以KEIL C51为例给出在线修改参数的程序。

WrRe_Flash(){

Unsigned int xdata *pwrite;

Unsigned int code *pread;

Unsigned char i;

Unsigned char il;

WDTCH=0xde; //禁止看门狗

WDTCN=0xad;

FLSCL|=0x09; //25MHz时钟的擦写频率

PSCTL|=0x02; //允许Flash扇区擦除

PSCTL|=0x05; //允许Flash扇区写

pwrite=0x0000; //0x0000指向128B扇区

*pwrite=0; //擦除Flash

PSCTL =~0x02; //禁止擦除Flash

for(i=0;i i++) //将P和I参数写入

{*pwrite++=PI;}

PSCTL =~0x01; //禁止写Flash

pread=0x0000; //读入当前值

for(il=0;il il++){PI[il]=*pread++;}

}

3 CAN总线在励磁装置中的应用

CAN总线是主要的现场总线之一。由于其较低的开发费用、良好的抗干扰能力等特点,其在工业测控领域得到广泛应用。关于CAN总线的基本概念、接口电路等方面的相关内容较多,这里不再详述。本文重点介绍如何用C8051F041实现CAN总线通信。

3.1 C8051F041的CAN控制器结构

C8051F041内部集成CAN控制器,不需外加 CAN控制器(如SJA1000),这对于需要良好抗干扰性的测控系统有很大好处;可将C8051F041构成为集通信与控制功能于一体的单片系统,大大简化硬件设计,进而提高系统抗干扰能力。

图4给出C8051F041内部CAN结构图,MCU不能直接访问信息RAM,必须通过 IF寄存器,然后由IF寄存器与信息RAM交换数据。信息RAM共可存32帧信息,IF寄存器分为IF1和IF2两组,可分别定义为接收、发送功能,IF 的CommandRequest寄存器定义访问32帧信息的哪一帧,CommandMask定义将一帧信息的哪一部分传到信息RAM。

武隆县旗袍

贡眉种植方法

威海美食

服装故事