📄 main.c
字号:
#include "mai_define.h"
// 最后修改日期:2006年6月28号
//修改原因: 由终端软件判断短路与开路
void InitMain (void);
void ClkChang (void);
unsigned long int led_count;
int main( void )
{ InitMain();
while(1)
{
SPIReset();
save_all_CT_data();
clr_wdt();
load_CT_data();
clr_wdt();
CTStateCheck();
clr_wdt();
out_led();
}
}
void InitMain (void)
{ P5SEL|=0x70; //时钟使能输出
P5DIR|=0x70;
P4DIR|=0x70; //三路信号切换
ClkChang();
start_wdt();
InitSPI();
P6DIR|=0x38;
InitTB();
InitTA();
flash_init();
read_flash();
CT_current_A=0x0ffff;
CT_current_B=0x0ffff;
CT_current_C=0x0ffff;
}
void ClkChang (void) //时钟操作,MCLK=6M SMCLK=6M ACLK=32768Hz
{WDTCTL=WDTPW+WDTHOLD;
BCSCTL1 |=XT2OFF;
do{
IFG1 &=~OFIFG;
}
while(OFIFG&IFG1); //等待晶振稳定
BCSCTL2 |=0x40;
DCOCTL=0xff;
BCSCTL1 |=0x07;
}
void led_state(void)
{
led_count++;
if (led_count>20000)
{P6OUT^=0x20;led_count=0;}
}
void out_led(void)
{
unsigned char a;
a=two_CT_state;
if((a&0x01)==0x01||(a&0x02)==0x02||(a&0x04)==0x04)
P6OUT&=0xef;
else P6OUT|=0x10;
if((a&0x08)==0x08||(a&0x10)==0x10||(a&0x20)==0x20)
P6OUT&=0xf7;
else P6OUT|=0x08;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -