1433 lines
37 KiB
C
1433 lines
37 KiB
C
|
|
#include "config.h"
|
|||
|
|
#include "bmp.h"
|
|||
|
|
const u8 QueryMenu[][16] = {
|
|||
|
|
"1.Network Info ",
|
|||
|
|
"2.MD Port Info ",
|
|||
|
|
"3.LORA RSSI ",
|
|||
|
|
"4.Veresion Check",
|
|||
|
|
"5.Test Info. ",
|
|||
|
|
"1.Network Info ",
|
|||
|
|
"2.MD Port Info ",
|
|||
|
|
"3.LORA RSSI ",
|
|||
|
|
};
|
|||
|
|
const u8 QueryNetworkInfo[][16] = {
|
|||
|
|
" Network Info ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
};
|
|||
|
|
const u8 PrintInfo[][16] = {
|
|||
|
|
"Print [Gun: ] ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
};
|
|||
|
|
const u8 QueryMDPortInfo[][16] = {
|
|||
|
|
" PORT ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
};
|
|||
|
|
const u8 QueryTestInfo[][16] = {
|
|||
|
|
" PORT ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
};
|
|||
|
|
/*
|
|||
|
|
PosNormal,
|
|||
|
|
PosBlueSky,
|
|||
|
|
PosLY,
|
|||
|
|
PosJP,
|
|||
|
|
PosDart,
|
|||
|
|
PosYWY,
|
|||
|
|
PosRFID,
|
|||
|
|
PosYGao,
|
|||
|
|
PosHongYang,
|
|||
|
|
PosLanFeng,*/
|
|||
|
|
const u8 QueryMDPortInfo_POSType[][16] = {
|
|||
|
|
"Empty",
|
|||
|
|
"BlueSky",
|
|||
|
|
"LY",
|
|||
|
|
"JP",
|
|||
|
|
"Dart",
|
|||
|
|
"YWY_Bluesky",
|
|||
|
|
"RFID",
|
|||
|
|
"YGao",
|
|||
|
|
"HYang",
|
|||
|
|
"SS-Lan",
|
|||
|
|
"BlueSkyPlus",
|
|||
|
|
"PLC",
|
|||
|
|
"Price"};
|
|||
|
|
const u8 YWY_Type_Info[][16] = {
|
|||
|
|
"YWY_Bluesky",
|
|||
|
|
"Probe_KY",
|
|||
|
|
"YWY_Pressure",
|
|||
|
|
};
|
|||
|
|
const u8 QueryLORARSSI[][16] = {
|
|||
|
|
" PORT ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
};
|
|||
|
|
const u8 QueryVeresion[][16] = {
|
|||
|
|
" Veresion ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
};
|
|||
|
|
const u8 SetMenu[][16] = {
|
|||
|
|
"1.MDConnect Set ",
|
|||
|
|
"2.LORA Slave Set",
|
|||
|
|
"3.PortLog Output",
|
|||
|
|
"4.Connect Mode ",
|
|||
|
|
"5.Network Set ",
|
|||
|
|
"6.DataInit ",
|
|||
|
|
"1.MDConnect Set ",
|
|||
|
|
"2.LORA Slave Set",
|
|||
|
|
"3.PortLog Output",
|
|||
|
|
};
|
|||
|
|
const u8 SetMDConnect[][16] = {
|
|||
|
|
" MDConnect Set ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
};
|
|||
|
|
const u8 SetLORASlave[][16] = {
|
|||
|
|
" LORA Slave Set ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
};
|
|||
|
|
const u8 SetPortLogOutput[][16] = {
|
|||
|
|
" PortLog Output ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
};
|
|||
|
|
const u8 SetConnectMode[][16] = {
|
|||
|
|
" Connect Mode ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
"Press | to shift",
|
|||
|
|
};
|
|||
|
|
const u8 SetNetworkSet[][16] = {
|
|||
|
|
" Network Set ",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
"Press | to shift",
|
|||
|
|
};
|
|||
|
|
const u8 ConnectMode_Info[][16] = {
|
|||
|
|
"Now:Dial switch ",
|
|||
|
|
"Now:Station ",
|
|||
|
|
"Now:Cloud ",
|
|||
|
|
"Now:Test Cloud ",
|
|||
|
|
"Now:Wifi Station",
|
|||
|
|
};
|
|||
|
|
const u8 Network_Type_Info[][16] = {
|
|||
|
|
"Now:Dial switch ",
|
|||
|
|
"Now:4G_GM5 ",
|
|||
|
|
"Now:4G_L510 ",
|
|||
|
|
"Now:WiFi ",
|
|||
|
|
"Now:WAN ",
|
|||
|
|
};
|
|||
|
|
const u8 SetDataInit[][16] = {
|
|||
|
|
"Initialize Data?",
|
|||
|
|
" ",
|
|||
|
|
" ",
|
|||
|
|
"'ENTER' to shift",
|
|||
|
|
};
|
|||
|
|
void Surface_Copy_16(const u8 *Buff, u8 StLine, u8 Num) // ת�Ƶ�����
|
|||
|
|
{
|
|||
|
|
u8 i, j;
|
|||
|
|
for (j = 0; j < Num; j++)
|
|||
|
|
{
|
|||
|
|
for (i = 0; i < 16; i++)
|
|||
|
|
OLED_ShowChar(i * 8, j * 16, *(Buff + i + StLine * 16 + j * 16), 16, 1);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
void SurfaceJump(u8 Surface)
|
|||
|
|
{
|
|||
|
|
TXHData.SurfaceNow = Surface;
|
|||
|
|
TXHData.DisplayOn = 1;
|
|||
|
|
// TXHData.SurfaceNowLine = 0;
|
|||
|
|
}
|
|||
|
|
void Surface_Init(void)
|
|||
|
|
{
|
|||
|
|
TXHData.KeyFindTimer.Init = 0; // �����ʼ����־
|
|||
|
|
TXHData.KeyFindTimer.Flag = 0; // �����ʱ��־
|
|||
|
|
TXHData.KeyFindTimer.ON_OFF = 1; // ��
|
|||
|
|
TXHData.KeyFindTimer.Cycle = 1; // ����Ϊѭ��ģʽ������ʱ
|
|||
|
|
TXHData.KeyFindTimer.TimerCountMax = 100; // ����0.1��
|
|||
|
|
TXHData.DisplayOn = 1;
|
|||
|
|
SurfaceJump(Surface_Wait);
|
|||
|
|
}
|
|||
|
|
u8 KeyNumBefore = 0;
|
|||
|
|
u8 KeyNumconfirm_Flag = 0;
|
|||
|
|
u8 KeyNum0 = 0;
|
|||
|
|
u8 KeyNum1 = 0;
|
|||
|
|
u8 KeyNum = 0;
|
|||
|
|
void FindKey(void)
|
|||
|
|
{
|
|||
|
|
if (TXHData.KeyFindTimer.Flag == 1)
|
|||
|
|
{
|
|||
|
|
TXHData.KeyFindTimer.Flag = 0;
|
|||
|
|
if (KeyNumconfirm_Flag == 0)
|
|||
|
|
{
|
|||
|
|
KeyNumconfirm_Flag = 1;
|
|||
|
|
KeyNum0 = ~((Key4 << 3) | (Key3 << 2) | (Key2 << 1) | Key1) & 0x0f;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
KeyNumconfirm_Flag = 0;
|
|||
|
|
KeyNum1 = ~((Key4 << 3) | (Key3 << 2) | (Key2 << 1) | Key1) & 0x0f;
|
|||
|
|
}
|
|||
|
|
if (KeyNum0 == KeyNum1)
|
|||
|
|
{
|
|||
|
|
KeyNum = KeyNum0;
|
|||
|
|
if (KeyNum != KeyNumBefore)
|
|||
|
|
{
|
|||
|
|
TXHData.KeyNum = KeyNum;
|
|||
|
|
KeyNumBefore = KeyNum;
|
|||
|
|
if (KeyNum)
|
|||
|
|
TXHData.DisplayOn = 1;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
u8 GetKeyNum(void)
|
|||
|
|
{
|
|||
|
|
u8 K = TXHData.KeyNum;
|
|||
|
|
TXHData.KeyNum = 0;
|
|||
|
|
return K;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Sureface_Wait_TimeUpData(void)
|
|||
|
|
{
|
|||
|
|
u8 X_Now = 4, Y_Now = 56;
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, Y_Now, MD_Connect_BCDTou64(TXHData.CTIME.Hour), 0, 0, 8, 1);
|
|||
|
|
OLED_ShowChar(6 * X_Now, Y_Now, '-', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, Y_Now, MD_Connect_BCDTou64(TXHData.CTIME.Min), 0, 0, 8, 1);
|
|||
|
|
OLED_ShowChar(6 * X_Now, Y_Now, '-', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, Y_Now, MD_Connect_BCDTou64(TXHData.CTIME.Sec), 0, 0, 8, 1);
|
|||
|
|
OLED_ShowChar(6 * X_Now, Y_Now, ' ', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, Y_Now, MD_Connect_BCDTou64(TXHData.CTIME.Year), 0, 0, 8, 1);
|
|||
|
|
OLED_ShowChar(6 * X_Now, Y_Now, '-', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, Y_Now, MD_Connect_BCDTou64(TXHData.CTIME.Month), 0, 0, 8, 1);
|
|||
|
|
OLED_ShowChar(6 * X_Now, Y_Now, '-', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, Y_Now, MD_Connect_BCDTou64(TXHData.CTIME.Day), 0, 0, 8, 1);
|
|||
|
|
}
|
|||
|
|
void SurfaceTast(void)
|
|||
|
|
{
|
|||
|
|
u16 i = 0, j = 0, X_Now = 0, Y_Now = 0, MD_Port = 0;
|
|||
|
|
u8 Buff[21];
|
|||
|
|
FindKey();
|
|||
|
|
if (TXHData.DisplayOn)
|
|||
|
|
{
|
|||
|
|
TXHData.DisplayOn = 0;
|
|||
|
|
OLED_Clear();
|
|||
|
|
switch (TXHData.SurfaceNow)
|
|||
|
|
{
|
|||
|
|
case Surface_FirmwareUpdate:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x04:
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_Wait);
|
|||
|
|
TXHData.ROM_UpData_ProgressBar = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
OLED_ShowString(0, 0, "FirmwareDownload", 21, 16, 1);
|
|||
|
|
if (TXHData.ROM_UpData_Port)
|
|||
|
|
{
|
|||
|
|
OLED_ShowString(0, 20, "Port:", 5, 8, 1);
|
|||
|
|
OLED_ShowNum(30, 20, TXHData.ROM_UpData_Port, 0, 0, 8, 1);
|
|||
|
|
OLED_ShowString(40, 20, TXHData.MD_Port_Data[TXHData.ROM_UpData_Port - 1].PortData.ROM_UpData_Version, 10, 8, 1);
|
|||
|
|
}
|
|||
|
|
if (TXHData.ROM_UpData_ProgressBar == 0xFF)
|
|||
|
|
{
|
|||
|
|
OLED_ShowString(20, 45, "Download Fail!", 21, 8, 1);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
OLED_ProgressBar(10, 30, 100, 10, TXHData.ROM_UpData_ProgressBar, 1);
|
|||
|
|
i = OLED_ShowNum(50, 45, TXHData.ROM_UpData_ProgressBar, 0, 0, 8, 1);
|
|||
|
|
OLED_ShowChar(50 + i * 6, 45, '%', 8, 1);
|
|||
|
|
if (TXHData.ROM_UpData_ProgressBar == 100)
|
|||
|
|
{
|
|||
|
|
TXHData.ROM_UpData_ProgressBar = 0;
|
|||
|
|
SurfaceJump(Surface_Wait);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_OfflineRecordUpload: // ����¼�ϴ�����
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x04:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_SetMenu);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_QueryMenu);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.POS_Info.Link_Flag == 0)
|
|||
|
|
OLED_ShowString(0, 0, "No Signal", 21, 8, 1);
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
switch (TXHData.POS_Info.ConnectType)
|
|||
|
|
{
|
|||
|
|
case POS_Connect_Typ_Station:
|
|||
|
|
OLED_ShowString(0, 0, "Type:Station", 21, 8, 1);
|
|||
|
|
break;
|
|||
|
|
case POS_Connect_Typ_Cloud:
|
|||
|
|
OLED_ShowString(0, 0, "Type:Cloud", 21, 8, 1);
|
|||
|
|
break;
|
|||
|
|
case POS_Connect_Typ_Cloud_Tast:
|
|||
|
|
OLED_ShowString(0, 0, "Type:Cloud-Test", 21, 8, 1);
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
switch (TXHData.USART6_Drive)
|
|||
|
|
{
|
|||
|
|
case Bluetooth:
|
|||
|
|
{
|
|||
|
|
OLED_ShowPicture(0, 10, 9, 9, (u8 *)BMP_Bluetooth_9, 1);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case GPS:
|
|||
|
|
{
|
|||
|
|
OLED_ShowPicture(0, 10, 9, 9, (u8 *)BMP_GPS_9, 1);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
OLED_ShowPicture(104, 0, 24, 24, (u8 *)BMP_Bluesky_Con_24, 1);
|
|||
|
|
OLED_ShowString(0, 26, "Offline Record Upload", 21, 8, 1);
|
|||
|
|
OLED_ShowString(0, 36, "Record number:", 21, 8, 1);
|
|||
|
|
OLED_ShowNum(84, 36, TXHData.PREXDATA_WaitUpNummber, 0, 0, 8, 1);
|
|||
|
|
if (TXHData.PREXDATA_WaitUpNummber == 0)
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_Wait);
|
|||
|
|
}
|
|||
|
|
Sureface_Wait_TimeUpData();
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_Wait: // ��������
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_PrintInfo);
|
|||
|
|
TXHData.ROM_UpData.ROM_UpData_State.Flag.DisableUpdate = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
TXHData.ROM_UpData.ROM_UpData_State.Flag.DisableUpdate = 0;
|
|||
|
|
SurfaceJump(Surface_PrintInfo);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x04:
|
|||
|
|
{
|
|||
|
|
TXHData.ROM_UpData.ROM_UpData_State.Flag.DisableUpdate = 0;
|
|||
|
|
SurfaceJump(Surface_SetMenu);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
TXHData.ROM_UpData.ROM_UpData_State.Flag.DisableUpdate = 0;
|
|||
|
|
SurfaceJump(Surface_QueryMenu);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.POS_Info.Link_Flag == 0)
|
|||
|
|
OLED_ShowString(0, 0, "Offline", 21, 8, 1);
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
switch (TXHData.POS_Info.ConnectType)
|
|||
|
|
{
|
|||
|
|
case POS_Connect_Typ_Station:
|
|||
|
|
OLED_ShowString(0, 0, "Type:Station", 21, 8, 1);
|
|||
|
|
break;
|
|||
|
|
case POS_Connect_Typ_Cloud:
|
|||
|
|
OLED_ShowString(0, 0, "Type:Cloud", 21, 8, 1);
|
|||
|
|
break;
|
|||
|
|
case POS_Connect_Typ_Cloud_Tast:
|
|||
|
|
OLED_ShowString(0, 0, "Type:Cloud-Test", 21, 8, 1);
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
// if(TXHData.POS_TX_CMDNow == POSConnect_PREXDATAUp)
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
// SurfaceJump(Surface_OfflineRecordUpload);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
switch (TXHData.USART6_Drive)
|
|||
|
|
{
|
|||
|
|
case Bluetooth:
|
|||
|
|
{
|
|||
|
|
OLED_ShowPicture(0, 20, 9, 9, (u8 *)BMP_Bluetooth_9, 1);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case GPS:
|
|||
|
|
{
|
|||
|
|
if (TXHData.GPSData.GPS.Latitude + TXHData.GPSData.GPS.Longitude)
|
|||
|
|
OLED_ShowPicture(0, 20, 9, 9, (u8 *)BMP_GPS_9, 1);
|
|||
|
|
else
|
|||
|
|
OLED_ShowPicture(0, 20, 9, 9, (u8 *)BMP_GPS_None_9, 1);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.ROM_UpData_ProgressBar)
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_FirmwareUpdate);
|
|||
|
|
}
|
|||
|
|
if (TXHData.POS_Info.ConnectType != POS_Connect_Typ_Station) // վ��
|
|||
|
|
{
|
|||
|
|
if (TXHData.POS_Info.NetType == POS_Net_Typ_WiFi)
|
|||
|
|
{
|
|||
|
|
if (POS_4G_NET)
|
|||
|
|
{
|
|||
|
|
if (TXHData.POS_Info.WiFiRSSI < 50)
|
|||
|
|
OLED_ShowPicture(89, 0, 14, 8, (u8 *)BMP_WIFI4_14x8, 1);
|
|||
|
|
else if (TXHData.POS_Info.WiFiRSSI < 60)
|
|||
|
|
OLED_ShowPicture(89, 0, 14, 8, (u8 *)BMP_WIFI3_14x8, 1);
|
|||
|
|
else if (TXHData.POS_Info.WiFiRSSI < 70)
|
|||
|
|
OLED_ShowPicture(89, 0, 14, 8, (u8 *)BMP_WIFI2_14x8, 1);
|
|||
|
|
else
|
|||
|
|
OLED_ShowPicture(89, 0, 14, 8, (u8 *)BMP_WIFI1_14x8, 1);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
OLED_ShowPicture(89, 0, 14, 8, (u8 *)BMP_WIFI0_14x8, 1);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
else if (TXHData.POS_Info.NetType == POS_Net_Typ_4G_L510 || TXHData.POS_Info.NetType == POS_Net_Typ_4G_GM5)
|
|||
|
|
{
|
|||
|
|
if (TXHData.POS_Info.WiFiRSSI < 32)
|
|||
|
|
{
|
|||
|
|
if (TXHData.POS_Info.WiFiRSSI > 26)
|
|||
|
|
OLED_ShowPicture(89, 0, 14, 8, (u8 *)BMP_WIFI4_14x8, 1);
|
|||
|
|
else if (TXHData.POS_Info.WiFiRSSI > 23)
|
|||
|
|
OLED_ShowPicture(89, 0, 14, 8, (u8 *)BMP_WIFI3_14x8, 1);
|
|||
|
|
else if (TXHData.POS_Info.WiFiRSSI > 20)
|
|||
|
|
OLED_ShowPicture(89, 0, 14, 8, (u8 *)BMP_WIFI2_14x8, 1);
|
|||
|
|
else if (TXHData.POS_Info.WiFiRSSI > 18)
|
|||
|
|
OLED_ShowPicture(89, 0, 14, 8, (u8 *)BMP_WIFI1_14x8, 1);
|
|||
|
|
else
|
|||
|
|
OLED_ShowPicture(89, 0, 14, 8, (u8 *)BMP_WIFI0_14x8, 1);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
OLED_ShowPicture(104, 0, 24, 24, (u8 *)BMP_Bluesky_Con_24, 1);
|
|||
|
|
OLED_ShowString(40, 20, "BLUESKY", 16, 16, 1);
|
|||
|
|
OLED_ShowString(18, 36, "ENERGY TECHNOLOGY", 21, 8, 1);
|
|||
|
|
if (TXHData.PREXDATA_WaitUpNummber > 0)
|
|||
|
|
{
|
|||
|
|
sprintf(Buff, "WaitUpload:%d/%d", TXHData.PREXDATA_WaitUpNummber, TXHData.OfflineAuthorizeNumberMax);
|
|||
|
|
OLED_ShowString(0, 46, Buff, 21, 8, 1);
|
|||
|
|
}
|
|||
|
|
if (TXHData.ROM_UpData.ROM_UpData_State.Flag.DisableUpdate == 1)
|
|||
|
|
OLED_ShowString(0, 46, "Upgrade ERR Check Gun", 21, 8, 1);
|
|||
|
|
Sureface_Wait_TimeUpData();
|
|||
|
|
if (TXHData.POSNetSetState.Flag.WorkMode == 1) // ��ģʽ
|
|||
|
|
{
|
|||
|
|
sprintf(&Buff[0], "%02x", TXHData.POS_Info.POS_CMD_Next);
|
|||
|
|
OLED_ShowString(0, 56, Buff, 2, 8, 1);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
sprintf(&Buff[0], "%02x", TXHData.POSNetSetState.Flag.POSNetCMDNext);
|
|||
|
|
OLED_ShowString(0, 56, Buff, 2, 8, 1);
|
|||
|
|
// OLED_ShowNum(0,56,TXHData.POSNetSetState.Flag.POSNetCMDNext,0,0,8,1);
|
|||
|
|
}
|
|||
|
|
if (TXHData.DelayDetectionTimer.Flag)
|
|||
|
|
{
|
|||
|
|
OLED_ShowString(0, 10, "Blockage", 21, 8, 1);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
sprintf(&Buff[0], "%dms", TXHData.DelayDetection);
|
|||
|
|
OLED_ShowString(0, 10, Buff, 10, 8, 1);
|
|||
|
|
}
|
|||
|
|
if (TXHData.ErrState.Flag.e_errPCBCheck == 1)
|
|||
|
|
{
|
|||
|
|
OLED_ShowString(0, 46, "PCB Validation Failed", 21, 8, 1);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_PrintInfo: // ��ӡ����
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
i = 0;
|
|||
|
|
for (; TXHData.SurfaceNowItem >= 0;)
|
|||
|
|
{
|
|||
|
|
i++;
|
|||
|
|
if (i > 64)
|
|||
|
|
break;
|
|||
|
|
if (TXHData.SurfaceNowItem > 0)
|
|||
|
|
TXHData.SurfaceNowItem--;
|
|||
|
|
else
|
|||
|
|
TXHData.SurfaceNowItem = 63;
|
|||
|
|
if (TXHData.PrintLastRecord[TXHData.SurfaceNowItem].GunNumber != 0)
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
i = 0;
|
|||
|
|
for (; TXHData.SurfaceNowItem < 64;)
|
|||
|
|
{
|
|||
|
|
i++;
|
|||
|
|
if (i > 64)
|
|||
|
|
break;
|
|||
|
|
if (TXHData.SurfaceNowItem < 63)
|
|||
|
|
TXHData.SurfaceNowItem++;
|
|||
|
|
else
|
|||
|
|
TXHData.SurfaceNowItem = 0;
|
|||
|
|
if (TXHData.PrintLastRecord[TXHData.SurfaceNowItem].GunNumber != 0)
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x04:
|
|||
|
|
{
|
|||
|
|
TXHData.MD_Multiplex_Port_Info.PrintPlaceNumber = TXHData.SurfaceNowItem;
|
|||
|
|
TXHData.MD_Multiplex_Port_Info.PrintType = PT_LastRecord;
|
|||
|
|
// Printf_UpData(TXHData.SurfaceNowLine,PT_LastRecord);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_Wait);
|
|||
|
|
TXHData.SurfaceNowItem = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.SurfaceNow == Surface_PrintInfo)
|
|||
|
|
{
|
|||
|
|
MD_Port = TXHData.SurfaceNowItem / 16;
|
|||
|
|
Surface_Copy_16(PrintInfo[0], 0, 1);
|
|||
|
|
OLED_ShowNum(88, 0, TXHData.PrintLastRecord[TXHData.SurfaceNowItem].GunNumber, 0, 0, 16, 1);
|
|||
|
|
OLED_ShowString(0, 16, "L: ", 16, 16, 1);
|
|||
|
|
OLED_ShowNum(3 * 8, 16, MD_Connect_BCDTou64(TXHData.PrintLastRecord[TXHData.SurfaceNowItem].FData.OilCNT), 0, TXHData.MD_Port_Data[MD_Port].PortData.GunDec.Dec.OilCNT, 16, 1);
|
|||
|
|
OLED_ShowString(0, 32, "P: ", 16, 16, 1);
|
|||
|
|
OLED_ShowNum(3 * 8, 32, MD_Connect_BCDTou64(TXHData.PrintLastRecord[TXHData.SurfaceNowItem].FData.MoneyCNT), 0, TXHData.MD_Port_Data[MD_Port].PortData.GunDec.Dec.MoneyCNT, 16, 1);
|
|||
|
|
X_Now = 4;
|
|||
|
|
Y_Now = 56;
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, Y_Now, MD_Connect_BCDTou64(TXHData.PrintLastRecord[TXHData.SurfaceNowItem].RTIME.Hour), 0, 0, 8, 1);
|
|||
|
|
OLED_ShowChar(6 * X_Now, Y_Now, '-', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, Y_Now, MD_Connect_BCDTou64(TXHData.PrintLastRecord[TXHData.SurfaceNowItem].RTIME.Min), 0, 0, 8, 1);
|
|||
|
|
OLED_ShowChar(6 * X_Now, Y_Now, '-', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, Y_Now, MD_Connect_BCDTou64(TXHData.PrintLastRecord[TXHData.SurfaceNowItem].RTIME.Sec), 0, 0, 8, 1);
|
|||
|
|
OLED_ShowChar(6 * X_Now, Y_Now, ' ', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, Y_Now, MD_Connect_BCDTou64(TXHData.PrintLastRecord[TXHData.SurfaceNowItem].RTIME.Year), 0, 0, 8, 1);
|
|||
|
|
OLED_ShowChar(6 * X_Now, Y_Now, '-', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, Y_Now, MD_Connect_BCDTou64(TXHData.PrintLastRecord[TXHData.SurfaceNowItem].RTIME.Month), 0, 0, 8, 1);
|
|||
|
|
OLED_ShowChar(6 * X_Now, Y_Now, '-', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, Y_Now, MD_Connect_BCDTou64(TXHData.PrintLastRecord[TXHData.SurfaceNowItem].RTIME.Day), 0, 0, 8, 1);
|
|||
|
|
// OLED_ShowNum(80,0,TXHData.MD_Port_Info[0].GunInfo[0].FData.MoneyCNT,0,16,1);
|
|||
|
|
// OLED_ShowString(80,0,"",16,3,0);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_QueryMenu:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowLine > 0)
|
|||
|
|
TXHData.SurfaceNowLine--;
|
|||
|
|
else
|
|||
|
|
TXHData.SurfaceNowLine = Q_ItemEnd - 1;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
// TXHData.MD_LORA_Slave_Flag = 0;
|
|||
|
|
// TXHData.MD_LORA_SlaveTimer.Init = 1;
|
|||
|
|
// MD_Connect_Init();
|
|||
|
|
if (TXHData.SurfaceNowLine < Q_ItemEnd - 1)
|
|||
|
|
TXHData.SurfaceNowLine++;
|
|||
|
|
else
|
|||
|
|
TXHData.SurfaceNowLine = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x04:
|
|||
|
|
{
|
|||
|
|
switch (TXHData.SurfaceNowLine)
|
|||
|
|
{
|
|||
|
|
case Q_NetworkInfo:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_Q_NetworkInfo);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Q_MDPortInfo:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_Q_MDPortInfo);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Q_LORARSSI:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_Q_LORARSSI);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Q_VeresionCheck:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_Q_VeresionCheck);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Q_Test_Info:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_Q_Test_Info);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_Wait);
|
|||
|
|
TXHData.SurfaceNowLine = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.SurfaceNow == Surface_QueryMenu)
|
|||
|
|
{
|
|||
|
|
Surface_Copy_16(QueryMenu[TXHData.SurfaceNowLine], 0, 4);
|
|||
|
|
OLED_ShowString(0, 0, (u8 *)&QueryMenu[TXHData.SurfaceNowLine], 16, 16, 0);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_Q_NetworkInfo:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_QueryMenu);
|
|||
|
|
TXHData.SurfaceNowItem = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.SurfaceNow == Surface_Q_NetworkInfo)
|
|||
|
|
{
|
|||
|
|
Surface_Copy_16(QueryNetworkInfo[0], 0, 4);
|
|||
|
|
switch (TXHData.POS_Info.ConnectType)
|
|||
|
|
{
|
|||
|
|
case POS_Connect_Typ_Station:
|
|||
|
|
OLED_ShowString(0, 16, "Type:Station", 16, 8, 1);
|
|||
|
|
break;
|
|||
|
|
case POS_Connect_Typ_Cloud:
|
|||
|
|
OLED_ShowString(0, 16, "Type:Cloud", 16, 8, 1);
|
|||
|
|
OLED_ShowString(0, 56, "URL:", 16, 8, 1);
|
|||
|
|
OLED_ShowString(5 * 6, 56, (u8 *)&TXHData.POSData.WirelessData.CMD_SOCKA[13], 17, 8, 1);
|
|||
|
|
break;
|
|||
|
|
case POS_Connect_Typ_Cloud_Tast:
|
|||
|
|
OLED_ShowString(0, 16, "Type:Cloud-Tast", 16, 8, 1);
|
|||
|
|
OLED_ShowString(0, 56, "URL:", 16, 8, 1);
|
|||
|
|
OLED_ShowString(5 * 6, 56, (u8 *)&TsatURL[13], 17, 8, 1);
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.POS_Info.ConnectType != POS_Connect_Typ_Station)
|
|||
|
|
{
|
|||
|
|
if (TXHData.POS_Info.NetType == POS_Net_Typ_4G_GM5)
|
|||
|
|
{
|
|||
|
|
for (i = 0; i < sizeof(TXHData.ICCID); i++)
|
|||
|
|
if (TXHData.ICCID[i])
|
|||
|
|
break;
|
|||
|
|
// OLED_ShowString(0,26,"ICCID",16,8,1);OLED_ShowString(32,26,&TXHData.ICCID[i],16,8,1);
|
|||
|
|
OLED_ShowString(0, 26, "APN :", 16, 8, 1);
|
|||
|
|
OLED_ShowString(6 * 6, 26, &TXHData.POSData.WirelessData.APN[0], 16, 8, 1);
|
|||
|
|
if (TXHData.HardwareVersion > 24) // �µ�Ӳ���汾�����ʼ�����е�ģ��ʹ����оƬ����IMEI��
|
|||
|
|
{
|
|||
|
|
OLED_ShowString(0, 36, "IMEI:", 16, 8, 1);
|
|||
|
|
OLED_ShowString(0, 46, &TXHData.POSData.WirelessData.IMEI[0], 20, 8, 1);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
OLED_ShowString(0, 36, "IMEI:", 16, 8, 1);
|
|||
|
|
OLED_ShowString(0, 46, &TXHData.POSData.WirelessData.IMEI[5], 20, 8, 1);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
else if (TXHData.POS_Info.NetType == POS_Net_Typ_4G_L510)
|
|||
|
|
{
|
|||
|
|
for (i = 0; i < sizeof(TXHData.ICCID); i++)
|
|||
|
|
if (TXHData.ICCID[i])
|
|||
|
|
break;
|
|||
|
|
// OLED_ShowString(0,26,"ICCID",16,8,1);OLED_ShowString(32,26,&TXHData.ICCID[i],16,8,1);
|
|||
|
|
OLED_ShowString(0, 26, "APN :", 16, 8, 1);
|
|||
|
|
OLED_ShowString(6 * 6, 26, &TXHData.POSData.WirelessData.APN[0], 16, 8, 1);
|
|||
|
|
OLED_ShowString(0, 36, "IMEI:", 16, 8, 1);
|
|||
|
|
OLED_ShowString(0, 46, &TXHData.POSData.WirelessData.IMEI[0], 20, 8, 1);
|
|||
|
|
}
|
|||
|
|
else if (TXHData.POS_Info.NetType == POS_Net_Typ_WiFi)
|
|||
|
|
{
|
|||
|
|
// if(TXHData.POS_Info.ConnectType == POS_Connect_Typ_WifiStation)
|
|||
|
|
// {
|
|||
|
|
// OLED_ShowString(0,26,"SSID:THX-HD4-2.4",16,8,1);
|
|||
|
|
// }
|
|||
|
|
// else
|
|||
|
|
{
|
|||
|
|
OLED_ShowString(0, 26, "SSID:", 16, 8, 1);
|
|||
|
|
OLED_ShowString(5 * 6, 26, &TXHData.POSData.WirelessData.WiFIName[0], 16, 8, 1);
|
|||
|
|
}
|
|||
|
|
OLED_ShowString(0, 36, "IMEI:", 16, 8, 1);
|
|||
|
|
OLED_ShowString(0, 46, &TXHData.POSData.WirelessData.IMEI[0], 20, 8, 1);
|
|||
|
|
}
|
|||
|
|
else if (TXHData.POS_Info.NetType == POS_Net_Typ_WAN)
|
|||
|
|
{
|
|||
|
|
OLED_ShowString(0, 26, "IP:", 16, 8, 1);
|
|||
|
|
OLED_ShowString(3 * 6, 26, &TXHData.POS_Info.IP[0], 16, 8, 1);
|
|||
|
|
OLED_ShowString(0, 36, "IMEI:", 16, 8, 1);
|
|||
|
|
OLED_ShowString(0, 46, &TXHData.POSData.WirelessData.IMEI[0], 20, 8, 1);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_Q_MDPortInfo:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem > 0)
|
|||
|
|
TXHData.SurfaceNowItem--;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem < 3)
|
|||
|
|
TXHData.SurfaceNowItem++;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_QueryMenu);
|
|||
|
|
TXHData.SurfaceNowItem = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.SurfaceNow == Surface_Q_MDPortInfo)
|
|||
|
|
{
|
|||
|
|
Surface_Copy_16(QueryMDPortInfo[0], 0, 4);
|
|||
|
|
OLED_ShowNum(62, 0, TXHData.SurfaceNowItem + 1, 1, 0, 16, 1);
|
|||
|
|
OLED_ShowString(72, 0, "OnLine : ", 16, 8, 1);
|
|||
|
|
OLED_ShowPicture(120, 0, 8, 8, (u8 *)BMP_Bluesky_Empty_8, 1);
|
|||
|
|
OLED_ShowString(72, 8, "OffLine: ", 16, 8, 1);
|
|||
|
|
OLED_ShowPicture(120, 8, 8, 8, (u8 *)BMP_Bluesky_Empty_8, 0);
|
|||
|
|
OLED_ShowString(0, 16, "Type:", 16, 8, 1);
|
|||
|
|
if (TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.MDConnectType == MD_LORA)
|
|||
|
|
OLED_ShowString(5 * 6, 16, "LORA", 16, 8, 1);
|
|||
|
|
else
|
|||
|
|
OLED_ShowString(5 * 6, 16, "RS485", 16, 8, 1);
|
|||
|
|
OLED_ShowString(0, 24, "Protocol:", 16, 8, 1);
|
|||
|
|
if (TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.POSType == PosYWY)
|
|||
|
|
OLED_ShowString(9 * 6, 24, (u8 *)YWY_Type_Info[TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.Device_Type], 12, 8, 1);
|
|||
|
|
else
|
|||
|
|
OLED_ShowString(9 * 6, 24, (u8 *)QueryMDPortInfo_POSType[TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.POSType], 12, 8, 1);
|
|||
|
|
OLED_ShowString(0, 32, "Gun-Addr:", 16, 8, 1);
|
|||
|
|
X_Now = 9;
|
|||
|
|
Y_Now = 0;
|
|||
|
|
for (i = 0; i < TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.DeviceNumber; i++)
|
|||
|
|
{
|
|||
|
|
if (6 * X_Now > 122)
|
|||
|
|
{
|
|||
|
|
Y_Now++;
|
|||
|
|
X_Now = 0;
|
|||
|
|
}
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, 32 + Y_Now * 8, TXHData.MD_Port_Data[TXHData.SurfaceNowItem].GunData[i].GunNummber, 0, 0, 8, TXHData.MD_Port_Data[TXHData.SurfaceNowItem].GunData[i].GunState.Flag.Online);
|
|||
|
|
if (6 * X_Now > 122)
|
|||
|
|
{
|
|||
|
|
Y_Now++;
|
|||
|
|
X_Now = 0;
|
|||
|
|
}
|
|||
|
|
OLED_ShowChar(6 * X_Now, 32 + Y_Now * 8, '-', 8, TXHData.MD_Port_Data[TXHData.SurfaceNowItem].GunData[i].GunState.Flag.Online);
|
|||
|
|
X_Now++;
|
|||
|
|
if (6 * X_Now > 122)
|
|||
|
|
{
|
|||
|
|
Y_Now++;
|
|||
|
|
X_Now = 0;
|
|||
|
|
}
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, 32 + Y_Now * 8, TXHData.MD_Port_Data[TXHData.SurfaceNowItem].GunData[i].GunAddr, 0, 0, 8, TXHData.MD_Port_Data[TXHData.SurfaceNowItem].GunData[i].GunState.Flag.Online);
|
|||
|
|
if (6 * X_Now > 122)
|
|||
|
|
{
|
|||
|
|
Y_Now++;
|
|||
|
|
X_Now = 0;
|
|||
|
|
}
|
|||
|
|
OLED_ShowChar(6 * X_Now, 32 + Y_Now * 8, ';', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_Q_LORARSSI:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem > 0)
|
|||
|
|
TXHData.SurfaceNowItem--;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem < 3)
|
|||
|
|
TXHData.SurfaceNowItem++;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_QueryMenu);
|
|||
|
|
TXHData.SurfaceNowItem = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.SurfaceNow == Surface_Q_LORARSSI)
|
|||
|
|
{
|
|||
|
|
TXHData.DisplayOn = 1;
|
|||
|
|
Surface_Copy_16(QueryLORARSSI[0], 0, 4);
|
|||
|
|
OLED_ShowNum(64, 0, TXHData.SurfaceNowItem + 1, 1, 0, 16, 1);
|
|||
|
|
OLED_ShowString(0, 20, "Gun-RSSI:", 16, 8, 1);
|
|||
|
|
X_Now = 9;
|
|||
|
|
Y_Now = 0;
|
|||
|
|
for (i = 0; i < TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.DeviceNumber; i++)
|
|||
|
|
{
|
|||
|
|
if (6 * X_Now > 122)
|
|||
|
|
{
|
|||
|
|
Y_Now++;
|
|||
|
|
X_Now = 0;
|
|||
|
|
}
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, 20 + Y_Now * 8, TXHData.MD_Port_Data[TXHData.SurfaceNowItem].GunData[i].GunNummber, 0, 0, 8, 1);
|
|||
|
|
if (6 * X_Now > 122)
|
|||
|
|
{
|
|||
|
|
Y_Now++;
|
|||
|
|
X_Now = 0;
|
|||
|
|
}
|
|||
|
|
OLED_ShowChar(6 * X_Now, 20 + Y_Now * 8, '-', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
if (6 * X_Now > 122)
|
|||
|
|
{
|
|||
|
|
Y_Now++;
|
|||
|
|
X_Now = 0;
|
|||
|
|
}
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, 20 + Y_Now * 8, TXHData.MD_Port_Info[TXHData.SurfaceNowItem].GunInfo[i].RSSI * 100 / 256, 0, 0, 8, 1);
|
|||
|
|
if (6 * X_Now > 122)
|
|||
|
|
{
|
|||
|
|
Y_Now++;
|
|||
|
|
X_Now = 0;
|
|||
|
|
}
|
|||
|
|
OLED_ShowChar(6 * X_Now, 20 + Y_Now * 8, '%', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
if (6 * X_Now > 122)
|
|||
|
|
{
|
|||
|
|
Y_Now++;
|
|||
|
|
X_Now = 0;
|
|||
|
|
}
|
|||
|
|
OLED_ShowChar(6 * X_Now, 20 + Y_Now * 8, ';', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_Q_VeresionCheck:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_QueryMenu);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.SurfaceNow == Surface_Q_VeresionCheck)
|
|||
|
|
{
|
|||
|
|
Surface_Copy_16(QueryVeresion[0], 0, 4);
|
|||
|
|
OLED_ShowString(0, 18, "SV:", 16, 8, 1);
|
|||
|
|
OLED_ShowString(6 * 3, 18, (u8 *)&BoxVersion[0], 16, 8, 1);
|
|||
|
|
OLED_ShowString(6 * 15, 18, "HV:", 16, 8, 1);
|
|||
|
|
OLED_ShowNum(6 * 18, 18, TXHData.HardwareVersion, 2, 0, 8, 1);
|
|||
|
|
for (i = 0; i < 4; i++)
|
|||
|
|
{
|
|||
|
|
if (TXHData.MD_Port_Data[i].PortData.ROM_UpData.ROM_UpData_State.Flag.Update_Flag == 1)
|
|||
|
|
{
|
|||
|
|
OLED_ShowString(0, 27 + i * 9, "Port-", 5, 8, 1);
|
|||
|
|
OLED_ShowNum(5 * 6, 27 + i * 9, i + 1, 1, 0, 8, 1);
|
|||
|
|
OLED_ShowString(7 * 6, 27 + i * 9, (u8 *)&TXHData.MD_Port_Data[i].PortData.ROM_UpData_Version[0], 10, 8, 1);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_Q_Test_Info:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem > 0)
|
|||
|
|
TXHData.SurfaceNowItem--;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem < 3)
|
|||
|
|
TXHData.SurfaceNowItem++;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_QueryMenu);
|
|||
|
|
TXHData.SurfaceNowItem = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.SurfaceNow == Surface_Q_Test_Info)
|
|||
|
|
{
|
|||
|
|
Surface_Copy_16(QueryTestInfo[0], 0, 4);
|
|||
|
|
OLED_ShowNum(62, 0, TXHData.SurfaceNowItem + 1, 1, 0, 16, 1);
|
|||
|
|
OLED_ShowString(72, 0, "OnLine : ", 16, 8, 1);
|
|||
|
|
OLED_ShowPicture(120, 0, 8, 8, (u8 *)BMP_Bluesky_Empty_8, 1);
|
|||
|
|
OLED_ShowString(72, 8, "OffLine: ", 16, 8, 1);
|
|||
|
|
OLED_ShowPicture(120, 8, 8, 8, (u8 *)BMP_Bluesky_Empty_8, 0);
|
|||
|
|
OLED_ShowString(0, 16, "Type:", 16, 8, 1);
|
|||
|
|
if (TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.MDConnectType == MD_LORA)
|
|||
|
|
OLED_ShowString(5 * 6, 16, "LORA", 16, 8, 1);
|
|||
|
|
else
|
|||
|
|
OLED_ShowString(5 * 6, 16, "RS485", 16, 8, 1);
|
|||
|
|
OLED_ShowString(0, 24, "Protocol:", 16, 8, 1);
|
|||
|
|
if (TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.POSType == PosYWY)
|
|||
|
|
OLED_ShowString(9 * 6, 24, (u8 *)YWY_Type_Info[TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.Device_Type], 12, 8, 1);
|
|||
|
|
else
|
|||
|
|
OLED_ShowString(9 * 6, 24, (u8 *)QueryMDPortInfo_POSType[TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.POSType], 12, 8, 1);
|
|||
|
|
OLED_ShowString(0, 32, "Gun-Addr:", 16, 8, 1);
|
|||
|
|
X_Now = 9;
|
|||
|
|
Y_Now = 0;
|
|||
|
|
for (i = 0; i < TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.DeviceNumber; i++)
|
|||
|
|
{
|
|||
|
|
if (6 * X_Now > 122)
|
|||
|
|
{
|
|||
|
|
Y_Now++;
|
|||
|
|
X_Now = 0;
|
|||
|
|
}
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, 32 + Y_Now * 8, TXHData.MD_Port_Data[TXHData.SurfaceNowItem].GunData[i].GunNummber, 0, 0, 8, TXHData.MD_Port_Data[TXHData.SurfaceNowItem].GunData[i].GunState.Flag.Online);
|
|||
|
|
if (6 * X_Now > 122)
|
|||
|
|
{
|
|||
|
|
Y_Now++;
|
|||
|
|
X_Now = 0;
|
|||
|
|
}
|
|||
|
|
OLED_ShowChar(6 * X_Now, 32 + Y_Now * 8, '-', 8, TXHData.MD_Port_Data[TXHData.SurfaceNowItem].GunData[i].GunState.Flag.Online);
|
|||
|
|
X_Now++;
|
|||
|
|
if (6 * X_Now > 122)
|
|||
|
|
{
|
|||
|
|
Y_Now++;
|
|||
|
|
X_Now = 0;
|
|||
|
|
}
|
|||
|
|
X_Now += OLED_ShowNum(6 * X_Now, 32 + Y_Now * 8, TXHData.MD_Port_Info[TXHData.SurfaceNowItem].GunInfo[i].WaitPREXDATA_flag, 0, 0, 8, TXHData.MD_Port_Data[TXHData.SurfaceNowItem].GunData[i].GunState.Flag.Online);
|
|||
|
|
if (6 * X_Now > 122)
|
|||
|
|
{
|
|||
|
|
Y_Now++;
|
|||
|
|
X_Now = 0;
|
|||
|
|
}
|
|||
|
|
OLED_ShowChar(6 * X_Now, 32 + Y_Now * 8, ';', 8, 1);
|
|||
|
|
X_Now++;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_SetMenu:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowLine > 0)
|
|||
|
|
TXHData.SurfaceNowLine--;
|
|||
|
|
else
|
|||
|
|
TXHData.SurfaceNowLine = S_ItemEnd - 1;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
// TXHData.MD_LORA_Slave_Flag = 0;
|
|||
|
|
// TXHData.MD_LORA_SlaveTimer.Init = 1;
|
|||
|
|
// MD_Connect_Init();
|
|||
|
|
if (TXHData.SurfaceNowLine < S_ItemEnd - 1)
|
|||
|
|
TXHData.SurfaceNowLine++;
|
|||
|
|
else
|
|||
|
|
TXHData.SurfaceNowLine = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x04:
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
switch (TXHData.SurfaceNowLine)
|
|||
|
|
{
|
|||
|
|
case S_MDConnectSet:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_S_MDConnectSet);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case S_LORASlaveSet:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_S_LORASlaveSet);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case S_PortLogOutput:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_S_PortLogOutput);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case S_ConnectMode:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_S_ConnectMode);
|
|||
|
|
TXHData.SurfaceNowLine = TXHData.POSData.POSConnectTyye.Flag.ConnectMode;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case S_NetworkSet:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_S_NetworkSet);
|
|||
|
|
TXHData.SurfaceNowLine = TXHData.POSData.POSConnectTyye.Flag.NetworkSet;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case S_DataInit:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_S_DataInit);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_Wait);
|
|||
|
|
TXHData.SurfaceNowLine = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.SurfaceNow == Surface_SetMenu)
|
|||
|
|
{
|
|||
|
|
Surface_Copy_16(SetMenu[TXHData.SurfaceNowLine], 0, 4);
|
|||
|
|
OLED_ShowString(0, 0, (u8 *)&SetMenu[TXHData.SurfaceNowLine], 16, 16, 0);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_S_MDConnectSet:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem > 0)
|
|||
|
|
{
|
|||
|
|
TXHData.SurfaceNowItem--;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem < 3)
|
|||
|
|
{
|
|||
|
|
TXHData.SurfaceNowItem++;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x04:
|
|||
|
|
{
|
|||
|
|
if (TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.MDConnectType == MD_LORA)
|
|||
|
|
{
|
|||
|
|
TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.MDConnectType = MD_RS485;
|
|||
|
|
FMItemWrite(CF_MD_Port_Data, TXHData.SurfaceNowItem);
|
|||
|
|
MD_Port_Init(TXHData.SurfaceNowItem);
|
|||
|
|
BEEP_OFF;
|
|||
|
|
}
|
|||
|
|
else if (TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.MDConnectType == MD_RS485)
|
|||
|
|
{
|
|||
|
|
BEEP_ON;
|
|||
|
|
TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.MDConnectType = MD_LORA;
|
|||
|
|
MD_Port_Init(TXHData.SurfaceNowItem);
|
|||
|
|
FMItemWrite(CF_MD_Port_Data, TXHData.SurfaceNowItem);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_SetMenu);
|
|||
|
|
TXHData.SurfaceNowItem = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.SurfaceNow == Surface_S_MDConnectSet)
|
|||
|
|
{
|
|||
|
|
Surface_Copy_16(SetMDConnect[0], 0, 4);
|
|||
|
|
OLED_ShowString(40, 20, "PORT:", 21, 8, 1);
|
|||
|
|
OLED_ShowNum(70, 20, TXHData.SurfaceNowItem + 1, 1, 0, 8, 1);
|
|||
|
|
if (TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.MDConnectType == MD_LORA)
|
|||
|
|
OLED_ShowString(0, 30, "TYPE:LORA", 21, 8, 1);
|
|||
|
|
else if (TXHData.MD_Port_Data[TXHData.SurfaceNowItem].PortData.MDConnectType == MD_RS485)
|
|||
|
|
OLED_ShowString(0, 30, "TYPE:RS485", 21, 8, 1);
|
|||
|
|
OLED_ShowString(0, 50, "Pass Enter Change", 21, 8, 1);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_S_LORASlaveSet:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem > 0)
|
|||
|
|
{
|
|||
|
|
if (TXHData.MD_LORA_Set_Flag)
|
|||
|
|
{
|
|||
|
|
MD_Port_Init(TXHData.SurfaceNowItem);
|
|||
|
|
}
|
|||
|
|
TXHData.SurfaceNowItem--;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem < 3)
|
|||
|
|
{
|
|||
|
|
if (TXHData.MD_LORA_Set_Flag)
|
|||
|
|
{
|
|||
|
|
MD_Port_Init(TXHData.SurfaceNowItem);
|
|||
|
|
}
|
|||
|
|
TXHData.SurfaceNowItem++;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x04:
|
|||
|
|
{
|
|||
|
|
TXHData.MD_LORA_Set_Flag = 1;
|
|||
|
|
TXHData.MD_LORA_SlaveTimer.ON_OFF = 1;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_SetMenu);
|
|||
|
|
TXHData.SurfaceNowItem = 0;
|
|||
|
|
TXHData.MD_LORA_SlaveTimer.Init = 1;
|
|||
|
|
if (TXHData.MD_LORA_Set_Flag)
|
|||
|
|
{
|
|||
|
|
BEEP_OFF;
|
|||
|
|
TXHData.MD_LORA_Set_Flag = 0;
|
|||
|
|
MD_Port_Init(TXHData.SurfaceNowItem);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (TXHData.SurfaceNow == Surface_S_LORASlaveSet)
|
|||
|
|
{
|
|||
|
|
Surface_Copy_16(SetLORASlave[0], 0, 4);
|
|||
|
|
OLED_ShowString(40, 18, "PORT:", 21, 8, 1);
|
|||
|
|
OLED_ShowNum(70, 18, TXHData.SurfaceNowItem + 1, 1, 0, 8, 1);
|
|||
|
|
OLED_ShowString(0, 28, "1:Dip switch 1and2 ON", 21, 8, 1);
|
|||
|
|
OLED_ShowString(0, 38, "2:Insert slave module", 21, 8, 1);
|
|||
|
|
OLED_ShowString(0, 48, "3:Pass Enter Start", 21, 8, 1);
|
|||
|
|
}
|
|||
|
|
if (TXHData.MD_LORA_Set_Flag == 1)
|
|||
|
|
{
|
|||
|
|
TXHData.DisplayOn = 1;
|
|||
|
|
if (TXHData.MD_LORA_SlaveTimer.Flag)
|
|||
|
|
{
|
|||
|
|
BEEP_OFF;
|
|||
|
|
TXHData.MD_LORA_SlaveTimer.Flag = 0;
|
|||
|
|
MD_Port_LORASet(TXHData.SurfaceNowItem, LORA_Slave);
|
|||
|
|
OLED_ShowString(0, 56, "State:Sending", 21, 8, 1);
|
|||
|
|
}
|
|||
|
|
if (TXHData.MD_LORA_Slave_Flag)
|
|||
|
|
{
|
|||
|
|
TXHData.MD_LORA_Slave_Flag = 0;
|
|||
|
|
OLED_ShowString(0, 56, "State:Complete", 21, 8, 1);
|
|||
|
|
BEEP_ON;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_S_PortLogOutput:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x04:
|
|||
|
|
{
|
|||
|
|
if (CH376DiskConnect() == USB_INT_SUCCESS) /* ���U���Ƿ����� ,*/
|
|||
|
|
{
|
|||
|
|
TXHData.UDisk_Flag = 1; // �����־�����ģ�����ƽʱ���ܿ���
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
TXHData.UDisk_Flag = 0;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
// TXHData.UDisk_Flag = 0;
|
|||
|
|
SurfaceJump(Surface_SetMenu);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.SurfaceNow == Surface_S_PortLogOutput)
|
|||
|
|
{
|
|||
|
|
Surface_Copy_16(SetPortLogOutput[0], 0, 4);
|
|||
|
|
OLED_ShowString(0, 26, "Insert U-Disk First", 21, 8, 1);
|
|||
|
|
OLED_ShowString(0, 36, "Than Pass Enter", 21, 8, 1);
|
|||
|
|
OLED_ShowString(0, 46, "Format:FAT32;MAX:32G", 21, 8, 1);
|
|||
|
|
if (TXHData.UDisk_Flag)
|
|||
|
|
OLED_ShowString(0, 56, "Find U-Disk,Outputing", 21, 8, 1);
|
|||
|
|
else
|
|||
|
|
OLED_ShowString(0, 56, "State:Idle", 21, 8, 1);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_S_ConnectMode:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem > 0)
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
TXHData.SurfaceNowItem--;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
TXHData.SurfaceNowItem = POS_Connect_Typ_End;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem < POS_Connect_Typ_End)
|
|||
|
|
{
|
|||
|
|
TXHData.SurfaceNowItem++;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
TXHData.SurfaceNowItem = 0;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x04:
|
|||
|
|
{
|
|||
|
|
TXHData.POSData.POSConnectTyye.Flag.ConnectMode = TXHData.SurfaceNowItem;
|
|||
|
|
if (FMItemWrite(CF_POSData, 0))
|
|||
|
|
{
|
|||
|
|
i = TXHData.POSData.POSConnectTyye.State;
|
|||
|
|
SurfaceJump(Surface_Wait);
|
|||
|
|
FM_Data_Init();
|
|||
|
|
TXHData.POSData.POSConnectTyye.State = i;
|
|||
|
|
FMItemWrite(CF_POSData, 0);
|
|||
|
|
TXHData.ROM_UpData.ROM_UpData_State.Flag.Update_Flag = 0;
|
|||
|
|
TXHData.ROM_UpData.ROM_UpData_State.Flag.RightRun_Flag = 3;
|
|||
|
|
TXHData.ROM_UpData.FrameTop = 0;
|
|||
|
|
FMItemWrite(CF_ROM_UpData, 0);
|
|||
|
|
TXHData.POSNetSetState.Flag.WorkMode = 0;
|
|||
|
|
switch (TXHData.POS_Info.NetType)
|
|||
|
|
{
|
|||
|
|
case POS_Net_Typ_WAN:
|
|||
|
|
TXHData.POSNetSetState.Flag.POSNetCMDNext = USRK3_ENTM;
|
|||
|
|
break;
|
|||
|
|
case POS_Net_Typ_WiFi:
|
|||
|
|
TXHData.POSNetSetState.Flag.POSNetCMDNext = WIFI_WifiRST;
|
|||
|
|
break;
|
|||
|
|
case POS_Net_Typ_4G_GM5:
|
|||
|
|
TXHData.POSNetSetState.Flag.POSNetCMDNext = GM5_ENTM;
|
|||
|
|
break;
|
|||
|
|
case POS_Net_Typ_4G_L510:
|
|||
|
|
TXHData.POSNetSetState.Flag.POSNetCMDNext = L510_AT;
|
|||
|
|
;
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
POS_Connect_Init();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_SetMenu);
|
|||
|
|
TXHData.SurfaceNowItem = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.SurfaceNow == Surface_S_ConnectMode)
|
|||
|
|
{
|
|||
|
|
Surface_Copy_16(SetConnectMode[0], 0, 4);
|
|||
|
|
OLED_ShowString(0, 16, (u8 *)ConnectMode_Info[TXHData.POSData.POSConnectTyye.Flag.ConnectMode], 16, 16, 1);
|
|||
|
|
if (TXHData.POSData.POSConnectTyye.Flag.ConnectMode != TXHData.SurfaceNowItem)
|
|||
|
|
OLED_ShowString(0, 32, (u8 *)(&ConnectMode_Info[TXHData.SurfaceNowItem][4]), 12, 16, 0);
|
|||
|
|
else
|
|||
|
|
OLED_ShowString(0, 32, (u8 *)(&ConnectMode_Info[TXHData.SurfaceNowItem][4]), 12, 16, 1);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_S_NetworkSet:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem > 0)
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
TXHData.SurfaceNowItem--;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
TXHData.SurfaceNowItem = POS_Net_Typ_End;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
if (TXHData.SurfaceNowItem < POS_Net_Typ_End)
|
|||
|
|
{
|
|||
|
|
TXHData.SurfaceNowItem++;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
TXHData.SurfaceNowItem = 0;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x04:
|
|||
|
|
{
|
|||
|
|
TXHData.POSData.POSConnectTyye.Flag.NetworkSet = TXHData.SurfaceNowItem;
|
|||
|
|
if (FMItemWrite(CF_POSData, 0))
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_Wait);
|
|||
|
|
TXHData.POSNetSetState.Flag.WorkMode = 0;
|
|||
|
|
switch (TXHData.POS_Info.NetType)
|
|||
|
|
{
|
|||
|
|
case POS_Net_Typ_WAN:
|
|||
|
|
TXHData.POSNetSetState.Flag.POSNetCMDNext = USRK3_ENTM;
|
|||
|
|
break;
|
|||
|
|
case POS_Net_Typ_WiFi:
|
|||
|
|
TXHData.POSNetSetState.Flag.POSNetCMDNext = WIFI_WifiRST;
|
|||
|
|
break;
|
|||
|
|
case POS_Net_Typ_4G_GM5:
|
|||
|
|
TXHData.POSNetSetState.Flag.POSNetCMDNext = GM5_ENTM;
|
|||
|
|
break;
|
|||
|
|
case POS_Net_Typ_4G_L510:
|
|||
|
|
TXHData.POSNetSetState.Flag.POSNetCMDNext = L510_AT;
|
|||
|
|
;
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
POS_Connect_Init();
|
|||
|
|
TXHData.SurfaceNowItem = 0;
|
|||
|
|
// FMItemWrite(CF_POSNetSetState,0);
|
|||
|
|
// POS_Network_Init();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_SetMenu);
|
|||
|
|
TXHData.SurfaceNowItem = 0;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.SurfaceNow == Surface_S_NetworkSet)
|
|||
|
|
{
|
|||
|
|
Surface_Copy_16(SetNetworkSet[0], 0, 4);
|
|||
|
|
OLED_ShowString(0, 16, (u8 *)Network_Type_Info[TXHData.POSData.POSConnectTyye.Flag.NetworkSet], 16, 16, 1);
|
|||
|
|
if (TXHData.POSData.POSConnectTyye.Flag.NetworkSet != TXHData.SurfaceNowItem)
|
|||
|
|
OLED_ShowString(0, 32, (u8 *)(&Network_Type_Info[TXHData.SurfaceNowItem][4]), 12, 16, 0);
|
|||
|
|
else
|
|||
|
|
OLED_ShowString(0, 32, (u8 *)(&Network_Type_Info[TXHData.SurfaceNowItem][4]), 12, 16, 1);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case Surface_S_DataInit:
|
|||
|
|
{
|
|||
|
|
switch (GetKeyNum())
|
|||
|
|
{
|
|||
|
|
case 0x01:
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x02:
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x04:
|
|||
|
|
{
|
|||
|
|
FM_Data_Init();
|
|||
|
|
__set_FAULTMASK(1);
|
|||
|
|
NVIC_SystemReset();
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 0x08:
|
|||
|
|
{
|
|||
|
|
SurfaceJump(Surface_SetMenu);
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if (TXHData.SurfaceNow == Surface_S_DataInit)
|
|||
|
|
{
|
|||
|
|
Surface_Copy_16(SetDataInit[0], 0, 4);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
OLED_Refresh();
|
|||
|
|
}
|
|||
|
|
}
|