📄 real_time.h
字号:
#ifndef _REAL_TIME
#define _REAL_TIME
#include "dsp_flash.h"
int real_time_test(){
BYTE a;
int b;
BYTE f_temp;
volatile unsigned char *pdata=(volatile unsigned char*) 0x8002;
return 1;
}
int real_time_init(){
int a;
BYTE f_temp;
chg_speed(7);
f_temp=g_flag;
g_flag=g_flag|0x03;
g_flag=g_flag&0xF3;
selectchip(g_flag);
WSGR2=0x0c; ///C
a=WSGR1;
WSGR2=0x0a;
WSGR1=0x70;
WSGR2=0x0b;
WSGR1=0x82;
WSGR2=0x01;
WSGR1=0xff;
WSGR2=0x03;
WSGR1=0xff;
WSGR2=0x05;
WSGR1=0xff;
WSGR2=0x0a; ///A
WSGR1=0x20;
WSGR2=0x0b; ///B
WSGR1=0x62;
selectchip(f_temp);
chg_speed(0);
return 1;
}
int read_time(){
int i;
unsigned addr;
unsigned data_temp;
BYTE f_temp;
chg_speed(7);
f_temp=g_flag;
g_flag=g_flag|0x03;
g_flag=g_flag&0xF3;
selectchip(g_flag);
WSGR2=0x0C;
data_temp=WSGR1;
for(i=0;i<0x1000;i++){
WSGR2=0x0a;
data_temp=WSGR1;
if(!(data_temp&0x0080))
break;
}
if(i>=0x10000){
selectchip(f_temp);
return 0;
}
for(addr=0;addr<10;addr++){
WSGR2=addr;
data_temp=WSGR1;
*(p_flashbuf+addr)=(BYTE)data_temp;
}
selectchip(f_temp);
chg_speed(0);
return 1;
}
int set_time(){
int i;
unsigned addr;
unsigned data_temp;
BYTE f_temp;
chg_speed(7);
f_temp=g_flag;
g_flag=g_flag|0x03;
g_flag=g_flag&0xF3;
selectchip(g_flag);
WSGR2=0x0b;
WSGR1=0x80;
for(addr=0;addr<10;addr++){
if((addr>6)|((addr%2==0)&&(addr<5))){
WSGR2=addr;
i=*(p_flashbuf+addr);
WSGR1=i;//i;
}
else{
WSGR2=addr;
WSGR1=0xFF;
}
}
WSGR2=0x0b;
WSGR1=0x62;
selectchip(f_temp);
chg_speed(0);
return 1;
}
int find_time(int i){
int j=0;
int k=0;
do{
i--;
j++;
}while((p_recbuf[i]!='+')&&(j<10));
if(j>=9)
return 0;
if(p_recbuf[i]!='+')
return 0;
if(i<10)
return 0;
k=0;
for(j=0;j<6;j++){
p_flashbuf[k]=(p_recbuf[i-2]&0x0F)*16+(p_recbuf[i-1]&0x0F);
if(k>6)
k=k+1;
if(k==4)
k=7;
if(k<3)
k=k+2;
i=i-3;
if(i<10)
return 0;
}
return 1;
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -