📄 dbus.c
字号:
EditKeyStep = 0;
}
}
#endif
}
#ifdef SUPPORT_I2C_DEVICE
/****************************************************************
* EEPROM Load Init Data *
****************************************************************/
void DBusInitLoadEEP()
{
BYTE CheckSum;
BYTE i;
I2CRead24C02Array(EEP_ADR_ZONE_0, DBusEMapBuffer + EEP_ADR_ZONE_0, EEP_LEN_ZONE_0);
if (DBusEMapBuffer[EEP_POS_ZONE_ID1] != EEP_VAL_ID1 ||
DBusEMapBuffer[EEP_POS_ZONE_ID2] != EEP_VAL_ID2 ||
DBusEMapBuffer[EEP_POS_ZONE_ID3] != EEP_VAL_ID3) {
DBusInitSaveEEP(EEP_ADR_ZONE_0);
}
else {
CheckSum = 0;
I2CRead24C02Array(EEP_ADR_ZONE_1, DBusEMapBuffer + EEP_ADR_ZONE_1, EEP_LEN_ZONE_1);
for (i = 0; i < EEP_LEN_ZONE_1; i++) CheckSum += DBusEMapBuffer[i + EEP_ADR_ZONE_1];
I2CRead24C02Array(EEP_ADR_ZONE_2, DBusEMapBuffer + EEP_ADR_ZONE_2, EEP_LEN_ZONE_2);
for (i = 0; i < EEP_LEN_ZONE_2; i++) CheckSum += DBusEMapBuffer[i + EEP_ADR_ZONE_2];
I2CRead24C02Array(EEP_ADR_ZONE_3, DBusEMapBuffer + EEP_ADR_ZONE_3, EEP_LEN_ZONE_3);
for (i = 0; i < EEP_LEN_ZONE_3; i++) CheckSum += DBusEMapBuffer[i + EEP_ADR_ZONE_3];
I2CRead24C02Array(EEP_ADR_ZONE_4, DBusEMapBuffer + EEP_ADR_ZONE_4, EEP_LEN_ZONE_4);
for (i = 0; i < EEP_LEN_ZONE_4; i++) CheckSum += DBusEMapBuffer[i + EEP_ADR_ZONE_4];
I2CRead24C02Array(EEP_ADR_ZONE_5, DBusEMapBuffer + EEP_ADR_ZONE_5, EEP_LEN_ZONE_5);
for (i = 0; i < EEP_LEN_ZONE_5; i++) CheckSum += DBusEMapBuffer[i + EEP_ADR_ZONE_5];
if (CheckSum != DBusEMapBuffer[EEP_POS_ZONE_SUM]) {
DBusInitSaveEEP(EEP_ADR_ZONE_0);
}
else {
memcpy(DBusLineIDAdr, DBusEMapBuffer + EEP_POS_LINE_ID, DBUS_LINE_ID_MAX);
memcpy(DBusDBusIDAdr, DBusEMapBuffer + EEP_POS_DBUS_ID, DBUS_DBUS_ID_MAX);
memcpy(DBusUserIDAdr, DBusEMapBuffer + EEP_POS_USER_ID, DBUS_USER_ID_MAX);
memcpy(DBusLinkIP, DBusEMapBuffer + EEP_POS_LINK_IP, DBUS_LINK_IP_LEN);
memcpy(DBusSuperCode, DBusEMapBuffer + EEP_POS_SUPER_CODE, DBUS_CODE_IN_LEN);
memcpy(DBusGuestCode, DBusEMapBuffer + EEP_POS_GUEST_CODE, DBUS_CODE_IN_LEN);
memcpy(DBusVoiceSet, DBusEMapBuffer + EEP_POS_VOICE_SET, DBUS_VOICE_SET_LEN);
DBusNoteType = DBusEMapBuffer[EEP_POS_NOTE_TYPE];
DBusNaviType = DBusEMapBuffer[EEP_POS_NAVI_TYPE];
DBusNaviTime = DBusEMapBuffer[EEP_POS_NAVI_TIME];
}
}
CheckSum = 0;
I2CRead24C02Array(EEP_ADR_DIST_0, DBusEMapBuffer + EEP_ADR_DIST_0, EEP_LEN_DIST_0);
for (i = EEP_POS_DIST_VCD; i < EEP_ADR_DIST_0 + EEP_LEN_DIST_0; i++)
CheckSum += DBusEMapBuffer[i];
if (DBusEMapBuffer[EEP_POS_DIST_ID0] != EEP_VAL_ID0 ||
CheckSum != DBusEMapBuffer[EEP_POS_DIST_SUM]) {
DBusInitSaveEEP(EEP_ADR_DIST_0);
}
else {
memcpy(DBusVCDDist, DBusEMapBuffer + EEP_POS_DIST_VCD, DBUS_VCDDIST_LEN);
}
I2CRead24C02Array(EEP_ADR_GPRS_0, DBusEMapBuffer + EEP_ADR_GPRS_0, EEP_LEN_GPRS_0);
if (DBusEMapBuffer[EEP_POS_GPRS_ID4] != EEP_VAL_ID4) {
DBusInitSaveEEP(EEP_ADR_GPRS_0);
}
else {
CheckSum = 0;
for (i = EEP_POS_EDIT_FLAG; i < EEP_ADR_GPRS_0 + EEP_LEN_GPRS_0; i++)
CheckSum += DBusEMapBuffer[i];
I2CRead24C02Array(EEP_ADR_GPRS_1, DBusEMapBuffer + EEP_ADR_GPRS_1, EEP_LEN_GPRS_1);
for (i = 0; i < EEP_LEN_GPRS_1; i++) CheckSum += DBusEMapBuffer[i + EEP_ADR_GPRS_1];
if (CheckSum != DBusEMapBuffer[EEP_POS_GPRS_SUM]) {
DBusInitSaveEEP(EEP_ADR_GPRS_0);
}
else {
DBusFlagDrawEdit = DBusEMapBuffer[EEP_POS_EDIT_FLAG];
DBusVideoVCD = DBusEMapBuffer[EEP_POS_VIDEO_VCD];
DBusVideoVCR = DBusEMapBuffer[EEP_POS_VIDEO_VCR];
strcpylen(DBusGPRSIPStr, DBusEMapBuffer + EEP_POS_GPRS_NAME, DBUS_GPRS_IP_LEN);
}
}
}
/****************************************************************
* EEPROM Save Init Data *
****************************************************************/
void DBusInitSaveEEP(BYTE Zone)
{
BYTE CheckSum;
BYTE i;
CheckSum = 0;
if (Zone == EEP_ADR_ZONE_0) {
memcpy(DBusEMapBuffer + EEP_POS_LINE_ID, DBusLineIDAdr, DBUS_LINE_ID_MAX);
memcpy(DBusEMapBuffer + EEP_POS_DBUS_ID, DBusDBusIDAdr, DBUS_DBUS_ID_MAX);
memcpy(DBusEMapBuffer + EEP_POS_USER_ID, DBusUserIDAdr, DBUS_USER_ID_MAX);
I2CWrite24C02Array(EEP_ADR_ZONE_1, DBusEMapBuffer + EEP_ADR_ZONE_1, EEP_LEN_ZONE_1);
for (i = 0; i < EEP_LEN_ZONE_1; i++) CheckSum += DBusEMapBuffer[i + EEP_ADR_ZONE_1];
memcpy(DBusEMapBuffer + EEP_POS_LINK_IP, DBusLinkIP, DBUS_LINK_IP_LEN);
DBusEMapBuffer[EEP_POS_NOTE_TYPE] = DBusNoteType;
DBusEMapBuffer[EEP_POS_NAVI_TYPE] = DBusNaviType;
I2CWrite24C02Array(EEP_ADR_ZONE_2, DBusEMapBuffer + EEP_ADR_ZONE_2, EEP_LEN_ZONE_2);
for (i = 0; i < EEP_LEN_ZONE_2; i++) CheckSum += DBusEMapBuffer[i + EEP_ADR_ZONE_2];
memcpy(DBusEMapBuffer + EEP_POS_SUPER_CODE, DBusSuperCode, DBUS_CODE_IN_LEN);
DBusEMapBuffer[EEP_POS_NAVI_TIME] = DBusNaviTime;
I2CWrite24C02Array(EEP_ADR_ZONE_3, DBusEMapBuffer + EEP_ADR_ZONE_3, EEP_LEN_ZONE_3);
for (i = 0; i < EEP_LEN_ZONE_3; i++) CheckSum += DBusEMapBuffer[i + EEP_ADR_ZONE_3];
memcpy(DBusEMapBuffer + EEP_POS_GUEST_CODE, DBusGuestCode, DBUS_CODE_IN_LEN);
I2CWrite24C02Array(EEP_ADR_ZONE_4, DBusEMapBuffer + EEP_ADR_ZONE_4, EEP_LEN_ZONE_4);
for (i = 0; i < EEP_LEN_ZONE_4; i++) CheckSum += DBusEMapBuffer[i + EEP_ADR_ZONE_4];
memcpy(DBusEMapBuffer + EEP_POS_VOICE_SET, DBusVoiceSet, DBUS_VOICE_SET_LEN);
I2CWrite24C02Array(EEP_ADR_ZONE_5, DBusEMapBuffer + EEP_ADR_ZONE_5, EEP_LEN_ZONE_5);
for (i = 0; i < EEP_LEN_ZONE_5; i++) CheckSum += DBusEMapBuffer[i + EEP_ADR_ZONE_5];
DBusEMapBuffer[EEP_POS_ZONE_ID1] = EEP_VAL_ID1;
DBusEMapBuffer[EEP_POS_ZONE_ID2] = EEP_VAL_ID2;
DBusEMapBuffer[EEP_POS_ZONE_ID3] = EEP_VAL_ID3;
DBusEMapBuffer[EEP_POS_ZONE_SUM] = CheckSum;
I2CWrite24C02Array(EEP_ADR_ZONE_0, DBusEMapBuffer + EEP_ADR_ZONE_0, EEP_LEN_ZONE_0);
}
else
if (Zone == EEP_ADR_DIST_0) {
memcpy(DBusEMapBuffer + EEP_POS_DIST_VCD, DBusVCDDist, DBUS_VCDDIST_LEN);
for (i = EEP_POS_DIST_VCD; i < EEP_ADR_DIST_0 + EEP_LEN_DIST_0; i++)
CheckSum += DBusEMapBuffer[i];
DBusEMapBuffer[EEP_POS_DIST_ID0] = EEP_VAL_ID0;
DBusEMapBuffer[EEP_POS_DIST_SUM] = CheckSum;
I2CWrite24C02Array(EEP_ADR_DIST_0, DBusEMapBuffer + EEP_ADR_DIST_0, EEP_LEN_DIST_0);
}
else
if (Zone == EEP_ADR_GPRS_0) {
memcpy(DBusEMapBuffer + EEP_POS_GPRS_NAME, DBusGPRSIPStr, DBUS_GPRS_IP_LEN);
I2CWrite24C02Array(EEP_ADR_GPRS_1, DBusEMapBuffer + EEP_ADR_GPRS_1, EEP_LEN_GPRS_1);
for (i = 0; i < EEP_LEN_GPRS_1; i++) CheckSum += DBusEMapBuffer[i + EEP_ADR_GPRS_1];
DBusEMapBuffer[EEP_POS_EDIT_FLAG] = DBusFlagDrawEdit;
DBusEMapBuffer[EEP_POS_VIDEO_VCD] = DBusVideoVCD;
DBusEMapBuffer[EEP_POS_VIDEO_VCR] = DBusVideoVCR;
for (i = EEP_POS_EDIT_FLAG; i < EEP_ADR_GPRS_0 + EEP_LEN_GPRS_0; i++)
CheckSum += DBusEMapBuffer[i];
DBusEMapBuffer[EEP_POS_GPRS_ID4 ] = EEP_VAL_ID4;
DBusEMapBuffer[EEP_POS_GPRS_SUM ] = CheckSum;
I2CWrite24C02Array(EEP_ADR_GPRS_0, DBusEMapBuffer + EEP_ADR_GPRS_0, EEP_LEN_GPRS_0);
}
}
/****************************************************************
* EEPROM Save 1-Byte Data *
****************************************************************/
void DBusByteSaveEEP(BYTE Addr, BYTE Data)
{
BYTE CheckSum;
if (Addr >= EEP_ADR_ZONE_0 && Addr < EEP_ADR_ZONE_5 + EEP_LEN_ZONE_5) {
CheckSum = DBusEMapBuffer[EEP_POS_ZONE_SUM] - DBusEMapBuffer[Addr] + Data;
DBusEMapBuffer[Addr] = Data;
I2CWrite24C02( Addr, Data);
DBusEMapBuffer[EEP_POS_ZONE_SUM] = CheckSum;
I2CWrite24C02( EEP_POS_ZONE_SUM, CheckSum);
}
else
if (Addr >= EEP_ADR_DIST_0 && Addr < EEP_ADR_DIST_0 + EEP_LEN_DIST_0) {
CheckSum = DBusEMapBuffer[EEP_POS_DIST_SUM] - DBusEMapBuffer[Addr] + Data;
DBusEMapBuffer[Addr] = Data;
I2CWrite24C02( Addr, Data);
DBusEMapBuffer[EEP_POS_DIST_SUM] = CheckSum;
I2CWrite24C02( EEP_POS_DIST_SUM, CheckSum);
}
else
if (/* Addr >= EEP_ADR_GPRS_0 && */ Addr < EEP_ADR_GPRS_1 + EEP_LEN_GPRS_1) {
CheckSum = DBusEMapBuffer[EEP_POS_GPRS_SUM] - DBusEMapBuffer[Addr] + Data;
DBusEMapBuffer[Addr] = Data;
I2CWrite24C02( Addr, Data);
DBusEMapBuffer[EEP_POS_GPRS_SUM] = CheckSum;
I2CWrite24C02( EEP_POS_GPRS_SUM, CheckSum);
}
}
/****************************************************************
* EEPROM Save n-Byte Data *
****************************************************************/
void DBusDataSaveEEP(BYTE Addr, BYTE *Data, BYTE Size)
{
UINT16 CheckPos;
BYTE CheckSum;
BYTE i;
if (Size == 0 || (Addr & 0x07) + Size > 8) return;
if (Addr >= EEP_ADR_ZONE_0 && Addr < EEP_ADR_ZONE_5 + EEP_LEN_ZONE_5)
CheckPos = EEP_POS_ZONE_SUM;
else
if (Addr >= EEP_ADR_DIST_0 && Addr < EEP_ADR_DIST_0 + EEP_LEN_DIST_0)
CheckPos = EEP_POS_DIST_SUM;
else
if (/* Addr >= EEP_ADR_GPRS_0 && */ Addr < EEP_ADR_GPRS_1 + EEP_LEN_GPRS_1)
CheckPos = EEP_POS_GPRS_SUM;
else
return;
CheckSum = DBusEMapBuffer[CheckPos];
for (i = 0; i < Size; i++) {
CheckSum -= DBusEMapBuffer[Addr + i];
DBusEMapBuffer[Addr + i] = Data[i];
CheckSum += DBusEMapBuffer[Addr + i];
}
I2CWrite24C02Array(Addr, DBusEMapBuffer + Addr, Size);
DBusEMapBuffer[CheckPos] = CheckSum;
I2CWrite24C02( CheckPos, CheckSum);
}
#endif
/************************************************************************
* Polling DBus Process *
************************************************************************/
void PollingDBus()
{
BYTE i;
if (GBusResetGPS) {
GBusResetGPS = FALSE;
DSASendSoftVer();
DSASendVCDDist();
DSASendData(COMM_BUS_GPSTIME, DBusNaviTime);
DSASendData(COMM_BUS_HAVEVCD, DBusVideoVCD);
DSASendData(COMM_BUS_SETDOOR, DBusVideoVCR);
}
if (GBusResetGSM) {
GBusResetGSM = FALSE;
}
if (DBusWaitUserID) {
return;
}
if (DBusInitGPRS != GSMInitGPRS) {
DBusInitGPRS = GSMInitGPRS;
DBusShowGSMInitGPRS = TRUE;
}
if (DBusLinkGPRS != GSMLinkGPRS) {
DBusLinkGPRS = GSMLinkGPRS;
DBusShowGSMLinkGPRS = TRUE;
}
if (DBusDoneUserID) {
DBusDoneUserID = FALSE;
switch (DBusTypeUserID) {
case TASK_DUTY_START:
DSASendData(COMM_BUS_TASKICQ, 0x00);
break;
}
DBusTaskID = DBusTypeUserID;
DBusMakeGPRSLink();
}
if (DBusFlagGPSMode) {
DBusFlagGPSMode = FALSE;
if (DBusNaviMode != GBusGPSMode) {
DBusNaviMode = (GBusGPSMode == 'A') ? TYPE_MODE_AUTO : TYPE_MODE_MANUAL;
strcpy(DBusNaviModeStr, DBusDefineGPSMode[DBusNaviMode]);
DBusNaviMode = GBusGPSMode;
#ifdef SUPPORT_VOICE
switch (DBusNaviMode) {
case 'A': VoiceSendQuene("现在是自动报站", VOICE_LEVEL_1); break;
case 'M': VoiceSendQuene("请手工报站", VOICE_LEVEL_1); break;
}
#endif
}
DBusShowGPSModeName = TRUE;
}
if (DBusFlagGPSInfo) {
DBusFlagGPSInfo = FALSE;
memcpy(DBusGPSInfo, GBusGPSInfo, GBUS_GPSINFO_SIZE);
DBusShowRealTimeStr = TRUE;
if (DBusLinkGPRS) {
DBusMakeDataFI(GBusGPSInfo, IDU_INFO);
}
}
if (DBusFlagGPSTask) {
DBusFlagGPSTask = FALSE;
DBusMakeDataFI(GBusGPSTask, IDU_TASK);
}
if (DBusFlagGPSCome) {
DBusFlagGPSCome = FALSE;
#ifdef SUPPORT_BUS_DEVICE
GBusGPSComeReach = 0xFF; // Default value
GBusGPSComeLeave = 0xFF;
if (DBusFlagDoneTail) {
DBusFlagDoneTail = FALSE;
if (DBusCNTTailDir == DBusGPSTailDir &&
DBusCNTTailStop == DBusGPSTailStop) {
GBusGPSComeReach = DBusCNTTailReach;
GBusGPSComeLeave = DBusCNTTailLeave;
}
}
else
if (DBusFlagWaitTail) {
DBusFlagWaitTail = FALSE;
}
#endif
DBusMakeDataFI(GBusGPSCome, IDU_COME);
#ifdef SUPPORT_USART_SHOW
DBusEditSetColor(MAP_COLOR_MAGENTA);
psprintf(LineBuffer, "-Come:%02x,%02x-", GBusGPSComeReach, GBusGPSComeLeave);
DBusEditShowText(LineBuffer);
#endif
}
if (DBusFlagGPSAway) {
DBusFlagGPSAway = FALSE;
DBusMakeDataFI(GBusGPSAway, IDU_AWAY);
#ifdef SUPPORT_USART_SHOW
DBusEditSetColor(MAP_COLOR_MAGENTA);
DBusEditShowText("-Away-");
#endif
}
if (DBusFlagGPSOver) {
DBusFlagGPSOver = FALSE;
DBusMakeDataFI(GBusGPSOver, IDU_OVER);
if (GBusGPSOverType) {
if (!DBusInfoState()) {
InfoWaitInput = FALSE;
DBusInfoEnter(IDE_SPEED);
}
#ifdef SUPPORT_VOICE
psprintf(LineBuffer, "请注意,你现在超速行驶");
VoiceSendQuene(LineBuffer, VOICE_LEVEL_1);
#endif
}
}
if (DBusFlagGPSTail) {
DBusFlagGPSTail = FALSE;
memcpy(DBusGPSTail, GBusGPSTail, DBUS_GPSTAIL_SIZE);
#ifdef SUPPORT_BUS_DEVICE
BUSSendCNTTail();
DBusFlagWaitTail = TRUE;
DBusFlagDoneTail = FALSE;
#endif
#ifdef SUPPORT_USART_SHOW
DBusEditSetColor(MAP_COLOR_MAGENTA);
psprintf(LineBuffer, "-Tail:%02x,%02x-", DBusGPSTailDir, DBusGPSTailStop);
DBusEditShowText(LineBuffer);
#endif
}
if (DBusFlagGPSLine) {
DBusFlagGPSLine = FALSE;
DBusMakeDataFI(GBusGPSLine, IDU_LINE);
if (GBusGPSLineType) {
if (!DBusInfoState()) {
InfoWaitInput = FALSE;
DBusInfoEnter(IDE_LEAVE);
}
#ifdef SUPPORT_VOICE
psprintf(LineBuffer, "请注意,你现在偏离线路");
VoiceSendQuene(LineBuffer, VOICE_LEVEL_1);
#endif
}
}
if (DBusFlagDirLine) {
DBusFlagDirLine = FALSE;
strcpy(DBusLineName, DBusLineIDStr);
if (GBusLineDir == 'U') strncat(DBusLineName, "-上行");
else strncat(DBusLineName, "-下行");
DBusShowLineName = TRUE;
}
if (DBusFlagStation) {
DBusFlagStation = FALSE;
strcpy(DBusStationPrev, DBusStationNext);
strcpy(DBusStationNext, GBusStationName);
#ifdef SUPPORT_VOICE
if (DBusStationNext[0]) {
psprintf(LineBuffer, "下一站:%s", DBusStationNext);
VoiceSendQuene(LineBuffer, VOICE_LEVEL_1);
}
#endif
DBusShowStationName = TRUE;
}
if (DBusFlagSetLine) {
DBusFlagSetLine = FALSE;
for (i = 0; i < GBusLineSize; i++) {
if (strcmp(DBusLineIDStr, GBusLineList + i * GBUS_SETLINE_SIZE) == 0) {
GBusLineAddr = i;
break;
}
}
if (GBusLineSize && i >= GBusLineSize) {
GBusLineAddr = 0;
strcpy(DBusLineIDStr, GBusLineList + 0 * GBUS_SETLINE_SIZE);
DBusLineID = Str2Dec(DBusLineIDStr) * 3;
#ifdef SUPPORT_I2C_DEVICE
DBusDataSaveEEP(EEP_POS_LINE_ID, DBusLineIDAdr, DBUS_LINE_ID_MAX);
#endif
strcpy(DBusLineName, DBusLineIDStr);
DBusShowLineName = TRUE;
}
DSASendBusLine();
#ifdef SUPPORT_USART_SHOW
DBusEditSetColor(MAP_COLOR_MAGENTA);
psprintf(LineBuffer, "-Init:%02x,%02x-", GBusLineSize, DBusNaviTime);
DBusEditShowText(LineBuffer);
#endif
}
if (DBusFlagSoftVer) {
DBusFlagSoftVer = FALSE;
#ifdef SUPPORT_USART_SHOW
DBusEditSetColor(MAP_COLOR_MAGENTA);
DBusEditShowText(GBusSoftVer);
#endif
if (!DBusVerifyVersion(GBusSoftVer)) {
MapShowErrorText("系统软件版本错误");
while (1) { polling(); }
}
}
if (!DBusNoteFIFOEmpty() && !DBusBPopState()) {
DBusMakeNoteFO(DBusDataBuffer);
DBusBPopMission(DBusDataBuffer);
#ifdef SUPPORT_VOICE
VoiceSendQuene(DBusDataBuffer, VOICE_LEVEL_1);
#endif
}
if (InfoWaitInput && !DBusInfoState()) {
InfoWaitInput = FALSE;
if (InfoExitInput) {
switch (DBusTaskType) {
case IDE_BLOCK:
case IDE_ACCIDENT:
case IDE_FAILURE:
case IDE_ALARM:
case IDE_BOTHER:
DSASendData(COMM_BUS_GPSTASK, DBusTaskType);
break;
case IDE_STOP:
strcpy(DBusLineName, DBusLineIDStr);
strcpy(DBusStationPrev, "");
strcpy(DBusStationNext, "");
DBusShowLineName = TRUE;
DBusShowStationName = TRUE;
DSASendData(COMM_BUS_TASKEND, 0x00);
DBusTaskID = TASK_DUTY_OFF;
DBusMakeGPRSLink();
break;
}
}
}
if (TaskWaitInput && !DBusTaskState()) { // Add by FC at 04-12-07
TaskWaitInput = FALSE;
if (TaskExitInput) {
DSASendData(COMM_BUS_GPSTASK, DBusTaskType);
switch (DBusTaskType) {
case IDE_DUTYOFF:
DBusTaskID = TASK_DUTY_OFF;
DBusMakeGPRSLink();
break;
case IDE_DUTYON:
DBusTypeUserID = TASK_DUTY_ON;
break;
case IDE_DUTYCHANGE:
DBusTypeUserID = TASK_DUTY_CHANGE;
break;
}
switch (DBusTaskType) {
case IDE_DUTYON:
case IDE_DUTYCHANGE:
DBusWaitUserID = TRUE;
BPopPageIndex = BPOP_USER_ID;
DBusBPopEnter();
break;
}
}
}
if (DBusFlagUpLoad) {
}
else
if (DBusDoneUpLoad) {
if (!DBusDataFIFOEmpty()) {
DBusMakeDataFO(DBusDataToSend);
DBusMakeDataUpLoad();
}
}
if (DBusFlagDrawMenu) {
DBusFlagDrawMenu = FALSE;
DBusMenuRefresh();
}
}
#endif SUPPORT_DBUS_FUNCTION
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -