?? trans.c
字號(hào):
#include <absacc.h>
#include <reg52.h>
extern unsigned char WaitKey(unsigned int count);
extern void DisplayCOM(int i);
extern bit FL_RUN;
extern bit FL_RECORDER;
//標(biāo)志位;
extern unsigned char xdata OLD_YEAR;
extern unsigned char xdata OLD_MONTH;
extern unsigned char xdata OLD_DAY;
extern unsigned char xdata OLD_HOUR;
extern unsigned char xdata OLD_MIN;
extern unsigned char xdata OLD_SEC;
unsigned char xdata flag_trans _at_ 0x6500;
extern unsigned long int xdata usbclk_cnt;
extern unsigned long int xdata clk_cnt;
extern unsigned char xdata down_time[10][5];
extern unsigned char xdata index_dw_tm;
extern unsigned char GetKey();
extern void rs232(void);
void connect(void);
extern void trs_usb(void);
void D12_SetMode(unsigned char bConfig, unsigned char bClkDiv);
extern void Clr_WDog();
Wr_downtime()
{
Clr_WDog(); //清w-dog
index_dw_tm=(index_dw_tm+1)%10;
down_time[index_dw_tm][0]=OLD_YEAR;
down_time[index_dw_tm][1]=OLD_MONTH;
down_time[index_dw_tm][2]=OLD_DAY;
down_time[index_dw_tm][3]=OLD_HOUR;
down_time[index_dw_tm][4]=OLD_MIN;
}
void init_serial(void)
{
// stxd=0;
Clr_WDog(); //清w-dog
T2CON=0X34;
RCAP2H=0XFF; //18.432MHz?9600??
RCAP2L=0XC4;
SCON=0XD0;
ES=1;
}
void init_usb()
{
Clr_WDog(); //清w-dog
D12_SetMode(0x10,0x05);
IT1=0;
EX1=1;
}
void connect(void)
{
unsigned char xdata key_trs,wdog_cnt;
Clr_WDog(); //清w-dog
DisplayCOM(0); //顯示“等待……”
// Get_Dis();
clk_cnt=0; //為何清0兩次???????????????????????????????????????????????????????/
usbclk_cnt=0; //為何清0兩次???????????????????????????????????????????????????????/
init_serial();
init_usb();
clk_cnt=0; //為何清0兩次???????????????????????????????????????????????????????/
usbclk_cnt=0; //為何清0兩次???????????????????????????????????????????????????????/
wdog_cnt=0;
flag_trans=0x00;
while(1)
{
DisplayCOM(0); //顯示“等待……”
GetKey(); //背光鍵
wdog_cnt++;
key_trs=WaitKey(10);
if(key_trs==0x10||FL_RUN||wdog_cnt>=150) break; //收到“功能”鍵退出
switch(flag_trans)
{
case 0x00:
break;
case 0x01:
Clr_WDog();
FL_RECORDER=0; // FL_RECORDER為0,未上傳過(guò)流水記錄
DisplayCOM(1); //顯示“USB通信中”
trs_usb();
DisplayCOM(3); //顯示“通信結(jié)束”
wdog_cnt=0;
while(1)
{
wdog_cnt++;
key_trs=WaitKey(10);
if(key_trs==0x10||FL_RUN||wdog_cnt>=40) //收到“功能”鍵,則退出
{
flag_trans=0X00;
Wr_downtime();
wdog_cnt=0;
init_serial();
break;
}
}
FL_RECORDER=0; // FL_RECORDER恢復(fù)為0
break;
case 0x02:
Clr_WDog();
FL_RECORDER=0; // FL_RECORDER為0,未上傳過(guò)流水記錄
DisplayCOM(2); //顯示“RS232通信中”
rs232();
DisplayCOM(3); //顯示“通信結(jié)束”
wdog_cnt=0;
while(1)
{
wdog_cnt++;
key_trs=WaitKey(100);
if(key_trs==0x10||FL_RUN||wdog_cnt>=40) //收到“功能”鍵,則退出
{
flag_trans=0X00;
Wr_downtime(); //記下通信時(shí)間
wdog_cnt=0;
break;
}
}
FL_RECORDER=0; // FL_RECORDER恢復(fù)為0
break;
default:
break;
}
}
ES=0;
EX1=0;
// stxd=1;
return;
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -