Compare commits

..

2 Commits

Author SHA1 Message Date
2587d0b8bb Исправления в работе ftp 2025-06-17 00:02:35 +03:00
ae3c9ab2fc Исправление ошибок 2025-06-16 22:39:58 +03:00
13 changed files with 1367 additions and 1358 deletions

View File

@ -6,6 +6,7 @@
"ranges": "c", "ranges": "c",
"span": "c", "span": "c",
"fram_map.h": "c", "fram_map.h": "c",
"service_name.h": "c" "service_name.h": "c",
"variant": "c"
} }
} }

View File

@ -118,7 +118,7 @@ void IncSolarAbonementCounters(CPU_INT08U ch, CPU_INT08U mode, CPU_INT32U money,
counters.solar_m[mode].card_bonus += bonus; counters.solar_m[mode].card_bonus += bonus;
counters.abonement_money += money; counters.abonement_money += money;
counters.common_money += money; counters.common_money += (money * 100); // * 100 òê ïåðåìåííàÿ îò áàíêîâñêîãî òåðìèíàëà
counters.checksum = crc16((unsigned char*)&counters, offsetof(SolarCounters, checksum)); counters.checksum = crc16((unsigned char*)&counters, offsetof(SolarCounters, checksum));
WriteArrayFram(offsetof(TFramMap, solar_counters), sizeof(SolarCounters), (unsigned char*)&counters); WriteArrayFram(offsetof(TFramMap, solar_counters), sizeof(SolarCounters), (unsigned char*)&counters);

View File

@ -285,6 +285,8 @@ int ReadFtpCountersString(int index, char *buf)
} }
// ÷òåíèå î÷åðåäíîé ñòðîêè äëÿ ñîçäàíèÿ ôàéëà csv æóðíàëîâ // ÷òåíèå î÷åðåäíîé ñòðîêè äëÿ ñîçäàíèÿ ôàéëà csv æóðíàëîâ
TEventRecord record;
int ReadFtpLogString(int index, char *buf) int ReadFtpLogString(int index, char *buf)
{ {
static const char header[] = "Íîìåð çàïèñè;Âðåìÿ;Ñîáûòèå;Äàííûå\r\n"; static const char header[] = "Íîìåð çàïèñè;Âðåìÿ;Ñîáûòèå;Äàííûå\r\n";
@ -295,7 +297,6 @@ int ReadFtpLogString(int index, char *buf)
} }
else if ((index >= 1) && (index <= EVENT_RECORDS_COUNT)) else if ((index >= 1) && (index <= EVENT_RECORDS_COUNT))
{ {
TEventRecord record;
index -= 1; index -= 1;
GetEventRecord(&record, index); GetEventRecord(&record, index);
sprintf(buf, "%d;", index); sprintf(buf, "%d;", index);

View File

@ -4,7 +4,7 @@
#include "control.h" #include "control.h"
#include "fiscal.h" #include "fiscal.h"
#define EVENT_RECORDS_COUNT 160 // ÷èñëî çàïèñåé â æóðíàëå #define EVENT_RECORDS_COUNT 150 // ÷èñëî çàïèñåé â æóðíàëå
#pragma pack(push, 1) #pragma pack(push, 1)
/// ñòðóêòóðà çàïèñè æóðíàëà ðàáî÷èõ ñîáûòèé /// ñòðóêòóðà çàïèñè æóðíàëà ðàáî÷èõ ñîáûòèé
@ -99,23 +99,23 @@ typedef struct{
// îøèáêà ñâÿçè ñ ôèñêàëüíèêîì // îøèáêà ñâÿçè ñ ôèñêàëüíèêîì
#define ERROR_FR_CONN 52 #define ERROR_FR_CONN 52
#define JOURNAL_EVENT_ABONEMENT_ACCEPTED 53 // ïðèíÿò àáîíåìåíò, ñóììà áåçíàëà
#define JOURNAL_EVENT_ABONEMENT_REJECTED 54 // àáîíåìåíò îòêëîíåí
#define JOURNAL_EVENT_ABONEMENT_PAY_ACCEPTED 55 // êóïëåí àáîíåìåíò, ñóììà áåçíàëà
#define JOURNAL_EVENT_ABONEMENT_PAY_REJECTED 56 // ïîêóïêà àáîíåìåíòà îòêëîíåíà
#define JOURNAL_EVENT_ABONEMENT_BALANCE 57 // ÷òåíèå áàëàíñà
#define JOURNAL_EVENT_ABONEMENT_WRONG 58 // íå âåðíàÿ êàðòà
#define JOURNAL_EVENT_CARD_ABONEMENT_ACCEPTED 59 // ïðèíÿòà êàðòà, ñóììà áåçíàëà - îïëàòà àáîíåìåíòà
#define JOURNAL_EVENT_CARD_ABONEMENT_REAPEATE 60 // ïðåâûøåíî êîëè÷åñòâî ïîñåùåíèé â äåíü
// ÂÑÅ ÎØÈÁÊÈ ÔÐ ÔÀÒÀËÜÍÛÅ // ÂÑÅ ÎØÈÁÊÈ ÔÐ ÔÀÒÀËÜÍÛÅ
#define ERROR_FR 53 #define ERROR_FR 61
#define JOURNAL_EVENT_ABONEMENT_ACCEPTED 54 // ïðèíÿò àáîíåìåíò, ñóììà áåçíàëà #define JOURNAL_EVENTS_COUNT (ERROR_FR + FR_ERROR_NUMBER) // ÷èñëî ñîáûòèé
#define JOURNAL_EVENT_ABONEMENT_REJECTED 55 // àáîíåìåíò îòêëîíåí
#define JOURNAL_EVENT_ABONEMENT_PAY_ACCEPTED 56 // êóïëåí àáîíåìåíò, ñóììà áåçíàëà
#define JOURNAL_EVENT_ABONEMENT_PAY_REJECTED 57 // ïîêóïêà àáîíåìåíòà îòêëîíåíà
#define JOURNAL_EVENT_ABONEMENT_BALANCE 58 // ÷òåíèå áàëàíñà
#define JOURNAL_EVENT_ABONEMENT_WRONG 59 // íå âåðíàÿ êàðòà
#define JOURNAL_EVENT_CARD_ABONEMENT_ACCEPTED 60 // ïðèíÿòà êàðòà, ñóììà áåçíàëà - îïëàòà àáîíåìåíòà
#define JOURNAL_EVENT_CARD_ABONEMENT_REAPEATE 61 // ïðåâûøåíî êîëè÷åñòâî ïîñåùåíèé â äåíü
#define JOURNAL_EVENTS_COUNT (JOURNAL_EVENT_CARD_ABONEMENT_REAPEATE+FR_ERROR_NUMBER) // ÷èñëî ñîáûòèé
// êàíàë // êàíàë
union union

View File

@ -1880,6 +1880,8 @@ CPU_INT08U const *ErrorNumberList0[JOURNAL_EVENTS_COUNT] = {"
"", "",
"ошибка", "ошибка",
"ошибка", "ошибка",
"", "", "", "",
"", "", "", "",
"ФР:01h-Неизвестная", "ФР:01h-Неизвестная",
"ФР:02h-Неверное", "ФР:02h-Неверное",
@ -2043,6 +2045,8 @@ CPU_INT08U const *ErrorNumberList1[JOURNAL_EVENTS_COUNT] = {"", "", "", "",
"модема", "модема",
"", "",
"связи с ФР", "связи с ФР",
"", "", "", "",
"", "", "", "",
"", "",
"команда", // ФР:01h "команда", // ФР:01h
@ -2214,6 +2218,9 @@ CPU_INT08U const *ErrorNumberListEng[JOURNAL_EVENTS_COUNT] =
"Oshibka svyazi s modemom", "Oshibka svyazi s modemom",
"", "",
"Oshibka svyazi s FR", "Oshibka svyazi s FR",
"", "", "", "",
"", "", "", "",
"Oshibka FR 0x01", "Oshibka FR 0x01",
"Oshibka FR 0x02", "Oshibka FR 0x02",
"Oshibka FR 0x03", "Oshibka FR 0x03",
@ -7197,7 +7204,7 @@ TDataDescStruct const FtpServerIpAddrDesc = {
DATA_NO_INDEX, // признак индексного параметра (список строк) DATA_NO_INDEX, // признак индексного параметра (список строк)
NULL, // указатель на список строк для индексного параметра NULL, // указатель на список строк для индексного параметра
DATA_INIT_DISABLE, DATA_INIT_DISABLE,
0x5C35600A // "92.53.96.10" 0x5C356065 // "92.53.96.101"
}; };
char const FtpServerIpAddrDescId[] = "FtpServerIpAddrDesc"; char const FtpServerIpAddrDescId[] = "FtpServerIpAddrDesc";

View File

@ -27,9 +27,6 @@ typedef struct
CPU_INT32U FRAM_AcceptedMoney; CPU_INT32U FRAM_AcceptedMoney;
CPU_INT32U crc_AcceptedMoney; CPU_INT32U crc_AcceptedMoney;
// æóðíàë ñîáûòèé+îøèáîê
TEventRecord EventRecords[EVENT_RECORDS_COUNT];
CPU_INT32U Pass; CPU_INT32U Pass;
CPU_INT32U crc_Pass; CPU_INT32U crc_Pass;
@ -167,5 +164,8 @@ typedef struct
CPU_INT32U SolarControlChannels[CHANNELS_NUM]; CPU_INT32U SolarControlChannels[CHANNELS_NUM];
#endif #endif
// æóðíàë ñîáûòèé+îøèáîê
TEventRecord EventRecords[EVENT_RECORDS_COUNT];
}TFramMap; }TFramMap;

View File

@ -4,7 +4,7 @@
#if defined(BOARD_SOLARIUM_WEB) #if defined(BOARD_SOLARIUM_WEB)
#define DEVICE_FW_VERSION "7.09" #define DEVICE_FW_VERSION "7.09"
#elif defined(BOARD_SOLARIUM_VLAD) #elif defined(BOARD_SOLARIUM_VLAD)
#define DEVICE_FW_VERSION "8.54" #define DEVICE_FW_VERSION "8.55"
#elif defined(BOARD_CENTRAL_CARWASH) || defined(BOARD_POST_CARWASH) #elif defined(BOARD_CENTRAL_CARWASH) || defined(BOARD_POST_CARWASH)
#define DEVICE_FW_VERSION "5.55" #define DEVICE_FW_VERSION "5.55"
#endif #endif

View File

@ -25,7 +25,7 @@ if not "%~1" == "" goto debugFile
@echo on @echo on
"C:\Program Files\IAR Systems\Embedded Workbench 9.0\common\bin\cspybat" -f "C:\git_work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.general.xcl" --backend -f "C:\git_work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.driver.xcl" "C:\Program Files\IAR Systems\Embedded Workbench 9.0\common\bin\cspybat" -f "C:\work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.general.xcl" --backend -f "C:\work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.driver.xcl"
@echo off @echo off
goto end goto end
@ -34,7 +34,7 @@ goto end
@echo on @echo on
"C:\Program Files\IAR Systems\Embedded Workbench 9.0\common\bin\cspybat" -f "C:\git_work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.general.xcl" "--debug_file=%~1" --backend -f "C:\git_work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.driver.xcl" "C:\Program Files\IAR Systems\Embedded Workbench 9.0\common\bin\cspybat" -f "C:\work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.general.xcl" "--debug_file=%~1" --backend -f "C:\work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.driver.xcl"
@echo off @echo off
:end :end

View File

@ -23,9 +23,9 @@
if ($debugfile -eq "") if ($debugfile -eq "")
{ {
& "C:\Program Files\IAR Systems\Embedded Workbench 9.0\common\bin\cspybat" -f "C:\git_work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.general.xcl" --backend -f "C:\git_work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.driver.xcl" & "C:\Program Files\IAR Systems\Embedded Workbench 9.0\common\bin\cspybat" -f "C:\work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.general.xcl" --backend -f "C:\work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.driver.xcl"
} }
else else
{ {
& "C:\Program Files\IAR Systems\Embedded Workbench 9.0\common\bin\cspybat" -f "C:\git_work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.general.xcl" --debug_file=$debugfile --backend -f "C:\git_work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.driver.xcl" & "C:\Program Files\IAR Systems\Embedded Workbench 9.0\common\bin\cspybat" -f "C:\work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.general.xcl" --debug_file=$debugfile --backend -f "C:\work\solarium.vlad\settings\sk-mlpc2368.Solarium_Vlad.driver.xcl"
} }

View File

@ -2,7 +2,7 @@
"C:\Program Files\IAR Systems\Embedded Workbench 9.0\arm\bin\armJLINK.dll" "C:\Program Files\IAR Systems\Embedded Workbench 9.0\arm\bin\armJLINK.dll"
"C:\git_work\solarium.vlad\Solarium Vlad\Exe\sk_mlpc2368.out" "C:\work\solarium.vlad\Solarium Vlad\Exe\sk_mlpc2368.out"
--plugin="C:\Program Files\IAR Systems\Embedded Workbench 9.0\arm\bin\armbat.dll" --plugin="C:\Program Files\IAR Systems\Embedded Workbench 9.0\arm\bin\armbat.dll"

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

View File

@ -5003,7 +5003,7 @@
</option> </option>
<option> <option>
<name>OOCOutputFile</name> <name>OOCOutputFile</name>
<state>solarium_vlad_8_54.hex</state> <state>solarium_vlad_8_55.hex</state>
</option> </option>
<option> <option>
<name>OOCCommandLineProducer</name> <name>OOCCommandLineProducer</name>