📄 system.c
字号:
#include<spce061a_chf.h>
#include"bit.h"
#include"TCS230.h"
extern timer;
///////////////////////////////////////////
//函数:void init_IO(void)
//描述:IO口初始化
//参数:无
//返回:无
/////////////////////////////////////////////
void init_IO(void)
{
PA_Dir->bit.bit0=1;
PA_Attrib->bit.bit0=1;
S0=1;
PA_Dir->bit.bit0=1;
PA_Attrib->bit.bit0=1;
S1=0;//20%
PA_Dir->bit.bit0=1;
PA_Attrib->bit.bit0=1;
S2=1;
PA_Dir->bit.bit0=1;
PA_Attrib->bit.bit0=1;
S3=0;//Clear
PA_Dir->bit.bit0=0;
PA_Attrib->bit.bit0=0;
out=0;
}
///////////////////////////////////////////
//函数:unsigned int Red(void)
//描述:启用红色滤波器
//参数:无
//返回:在0.25s时间的频率计数值
/////////////////////////////////////////////
unsigned int Red(void)
{
unsigned int counter=0;
S2=0;
S3=0;
asm("irq on");
while(timer==0xffff)
{
if(out==1)
{
counter++;
//*P_Watchdog_Clear=0x01;
while(out==1)
{
*P_Watchdog_Clear=0x01;
}
}
}
asm("irq off");
timer=0x0000;
return counter;
}
///////////////////////////////////////////
//函数:unsigned int Blue(void)
//描述:启用蓝色滤波器
//参数:无
//返回:在0.25s时间的频率计数值
/////////////////////////////////////////////
unsigned int Blue(void)
{
unsigned int counter=0;
S2=0;
S3=1;
asm("irq on");
while(timer==0xffff)
{
if(out==1)
{
counter++;
//*P_Watchdog_Clear=0x01;
while(out==1)
{
*P_Watchdog_Clear=0x01;
}
}
}
asm("irq off");
timer=0x0000;
return counter;
}
///////////////////////////////////////////
//函数:unsigned int Green(void)
//描述:启用绿色滤波器
//参数:无
//返回:在0.25s时间的频率计数值
/////////////////////////////////////////////
unsigned int Green(void)
{
unsigned int counter=0;
S2=1;
S3=1;
asm("irq on");
while(timer==0xffff)
{
if(out==1)
{
counter++;
//*P_Watchdog_Clear=0x01;
while(out==1)
{
*P_Watchdog_Clear=0x01;
}
}
}
asm("irq off");
timer=0x0000;
return counter;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -