📄 ioctr_m04_c2.c
字号:
/****************************************************************************************************/
/* $Header :
/* AUTHOR : TC PUI
/* FILE NAME: IOCTR.C
/* PURPOSE : I/O CONTROL
/* MODEL : 2004 CIS 2-CH AMP
/* Copyright (c) 2004 Sony Corporation All Rights Reserved
/****************************************************************************************************/
#define _IOCTR_C
#include "_main_M04_C2.h"
/****************************************************************************************************/
/* local variables definition which are refered only this file
/****************************************************************************************************/
unsigned char led_cnt;
/****************************************************************************************************/
/* FUNCTION : PotInitialize
/* PURPOSE : Port Initialize
/* INPUT : None
/* RETURN VALUE : None
/****************************************************************************************************/
void PotInitialize(void)
{
PDR0.BYTE = 0x00; /* 0000 0000 */
PDR1.BYTE = 0x02; /* 0000 0010 */ /* B1 STANDBY LED */
PDR2.BYTE = 0x00; /* 0000 0000 */
PDR3.BYTE = 0x00; /* 0000 0000 */
PDR4.BYTE = 0x00; /* 0000 0000 */
PDR5.BYTE = 0x0F; /* 0000 1111 */ /* B0 - B3 AD conversion */
PDR6.BYTE = 0x00; /* 0000 0000 */
DDR0.BYTE = P0_EEP_DFLT;/* 0111 1011 */
DDR1.BYTE = 0x1F; /* 0001 1111 */
DDR2.BYTE = 0x73; /* 0111 0011 */
DDR3.BYTE = 0x8E; /* 1000 1110 */
DDR4.BYTE = 0x74; /* 0111 0100 */
F_OPERTLED = CLEAR;
F_PROTRLED = CLEAR;
/* F_STDBYLED = CLEAR; */
led_cnt = CLEAR;
return;
}
/****************************************************************************************************/
/* FUNCTION : IopControl
/* PURPOSE : I/O port control
/* INPUT : None
/* RETURN VALUE : None
/****************************************************************************************************/
void IopControl(void)
{
if ((TestStt >= TEST_VER_SHOW_START)&&(TestStt <= TEST_ACLR_SHOW_END)){ /* Version show? */
} else{
F_STDBYLED = ON;
if (PowWork.Prtc == ON){ /* protector ON? */
if( Is10msATimeOver( &PowWork.ProtCnt) ){
PowWork.ProtCnt = _800mS;
F_OPERTLED = OFF;
F_PROTRLED = !F_PROTRLED; /* blinking at 800ms interval */
}
} else {
if (PowWork.Pw1s == ON) {
F_OPERTLED = ON; /* ON when normal operation */
} else {
F_OPERTLED = OFF; /* OFF when Power OFF */
}
}
}
/****Output****/
P_SPK_RELAY = F_RLY_SP;
P_STANDBY_LED = F_STDBYLED;
P_OPERATION_LED = F_OPERTLED;
P_PROTECT_LED = F_PROTRLED;
return;
}
/****************************************************************************************************/
/* FUNCTION : IopControlTest
/* PURPOSE : I/O port control in test mode
/* INPUT : None
/* RETURN VALUE : None
/****************************************************************************************************/
void IopControlTest(void)
{
if ((TestStt >= TEST_VER_SHOW_START)&&(TestStt <= TEST_ACLR_SHOW_END)){ /* Version show? */
} else{
F_STDBYLED = ON;
if(Is10msAInterval()){
if(++led_cnt == _800mS) { /* blinking at 800ms interval */
led_cnt = CLEAR;
if (F_OPERTLED == OFF){
F_OPERTLED = ON;
} else {
F_OPERTLED = OFF;
}
}
}
}
/****Output****/
/* P_SPK_RELAY = F_RLY_SP; */
P_STANDBY_LED = F_STDBYLED;
P_OPERATION_LED = F_OPERTLED;
P_PROTECT_LED = F_PROTRLED;
return;
}
/****************************************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -