📄 motor.c
字号:
#ifndef _M_C_
#define _M_C_
#include "global.h"
void fDiagMOvd(void)
{
if(bDigEn)
{
if(bDigDrWinEn) fDiagDrWin();
if(bDigFPWinEn) fDiagFPWin();
if(bDigRRWinEn) fDiagRRWin();
if(bDigRLWinEn) fDiagRLWin();
}
}
void fDiagDrWin(void)
{ unsigned char order;
unsigned int temp;
fItlADC();
temp = fADConverter(AD_DrM);
ptrDr++;
order =ptrDr & 0x07;
vSumOfDrMCur = vSumOfDrMCur + temp - vDrMCur[order];
vDrMCur[order] = temp;
temp = vSumOfDrMCur >>3;
if(temp > mOvd)
{
bDrWinOvd = 1;
bDrMED = 1;
}
}
void fDiagFPWin(void)
{ unsigned char order;
unsigned int temp;
fItlADC();
temp = fADConverter(AD_FPM);
ptrFP++;
order =ptrFP & 0x07;
vSumOfFPMCur = vSumOfFPMCur + temp - vFPMCur[order];
vFPMCur[order] = temp;
temp = vSumOfFPMCur >>3;
if(temp > mOvd)
{
bFPWinOvd = 1;
bFPMED = 1;
}
}
void fDiagRRWin(void)
{ unsigned char order;
unsigned int temp;
fItlADC();
temp = fADConverter(AD_RRM);
ptrRR++;
order =ptrRR & 0x07;
vSumOfRRMCur = vSumOfRRMCur + temp - vRRMCur[order];
vRRMCur[order] = temp;
temp = vSumOfRRMCur >>3;
if(temp > mOvd)
{
bRRWinOvd = 1;
bRRMED = 1;
}
}
void fDiagRLWin(void)
{ unsigned char order;
unsigned int temp;
fItlADC();
temp = fADConverter(AD_RLM);
ptrRL++;
order =ptrRL & 0x07;
vSumOfRLMCur = vSumOfRLMCur + temp - vRLMCur[order];
vRLMCur[order] = temp;
temp = vSumOfRLMCur >>3;
if(temp > mOvd)
{
bRLWinOvd = 1;
bRLMED = 1;
}
}
void fDealWithDiag(void)
{
if(bDealEn)
{
if(bDrWinOvd)
{ fDrMStop();
// bEnDrLRTC = 1;
bDigDrWinEn = 0;
bDrMAutoUp = 0;
bDrMAutoDown = 0;
}
if(bFPWinOvd)
{ fFPPMStop();
// bEnFPLRTC = 1;
bDigFPWinEn = 0;
bFPMAutoDown = 0;
bDrCtrFPMAutoDown = 0;
}
if(bRRWinOvd)
{ fRRPMStop();
// bEnRRLRTC = 1;
bDigRRWinEn = 0;
bRRMAutoDown = 0;
bDrCtrRRMAutoDown = 0;
}
if(bRLWinOvd)
{ fRLPMStop();
// bEnRLLRTC = 1;
bDigRLWinEn = 0;
bRLMAutoDown = 0;
bDrCtrRLMAutoDown = 0;
}
}
}
void fClrDrMCur(void)
{
unsigned char i;
for(i = 0; i<8 ;i++)
vDrMCur[i] = 0;
vSumOfDrMCur = 0;
}
void fClrFPMCur(void)
{
unsigned char i;
for(i = 0; i<8 ;i++)
vFPMCur[i] = 0;
vSumOfFPMCur = 0;
}
void fClrRRMCur(void)
{
unsigned char i;
for(i = 0; i<8 ;i++)
vRRMCur[i] = 0;
vSumOfRRMCur = 0;
}
void fClrRLMCur(void)
{
unsigned char i;
for(i = 0; i<8 ;i++)
vRLMCur[i] = 0;
vSumOfRLMCur = 0;
}
//Dr P M
void fDrMStop(void)
{
// if(!bDrMStop )
{ Relay1 = 0;
Relay0 = 0;
bDrMStop = 1;
bDrWinOvd = 0;
fClrDrMCur();
vDrMDownTC = 0;
vDrMUpTC = 0;
}
}
void fDrMRise(void)
{
Relay0 = 1;
Relay1 = 0;
bDrMDR = 1;
}
void fDrMFall(void)
{
Relay0 = 0;
Relay1 = 1;
bDrMDR = 0;
}
//FP P M
void fFPPMStop(void)
{
if(!bFPMStop )
{ Relay2 = 0;
Relay3 = 0;
bFPMStop = 1;
bFPWinOvd = 0;
fClrFPMCur();
vFPMDownTC = 0;
vFPMUpTC = 0;
}
}
void fFPPMRise(void)
{
Relay2 = 1;
Relay3 = 0;
bFPMDR = 1;
}
void fFPPMFall(void)
{
Relay2 = 0;
Relay3 = 1;
bFPMDR = 0;
}
//R R P M
void fRRPMStop(void)
{
if(!bRRMStop )
{ Relay4 = 0;
Relay5 = 0;
bRRMStop = 1;
bRRWinOvd = 0;
fClrRRMCur();
vRRMDownTC = 0;
vRRMUpTC = 0;
}
}
void fRRPMRise(void)
{
Relay4 = 1;
Relay5 = 0;
bRRMDR = 1;
}
void fRRPMFall(void)
{
Relay4 = 0;
Relay5 = 1;
bRRMDR = 0;
}
//RL P M
void fRLPMStop(void)
{
if(!bRLMStop )
{ Relay6 = 0;
Relay7 = 0;
bRLMStop = 1;
bRLWinOvd = 0;
fClrRLMCur();
vRLMDownTC = 0;
vRLMUpTC = 0;
}
}
void fRLPMRise(void)
{
Relay6 = 1;
Relay7 = 0;
bRLMDR = 1;
}
void fRLPMFall(void)
{
Relay6 = 0;
Relay7 = 1;
bRLMDR = 0;
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -