Добавил общие счетчики для безналичного расчета.

This commit is contained in:
Dmitriy 2023-01-15 11:57:25 +03:00
parent e9d5a016bc
commit e2fbe87504
12 changed files with 11171 additions and 727 deletions

Binary file not shown.

5201
Flash/Exe/solarium_3_37.hex Normal file

File diff suppressed because it is too large Load Diff

5207
Flash/Exe/solarium_3_38.hex Normal file

File diff suppressed because it is too large Load Diff

View File

@ -373,12 +373,15 @@ void IncCounter(CPU_INT08U ch, CPU_INT32U time, CPU_INT32U money, CPU_INT32U mon
ReadArrayFram(offsetof(TFramMap, Counters.CounterRun), sizeof(CPU_INT32U), (unsigned char*)&r);
ReadArrayFram(offsetof(TFramMap, Counters.CounterTime), sizeof(CPU_INT32U), (unsigned char*)&t);
ReadArrayFram(offsetof(TFramMap, Counters.CounterMoney), sizeof(CPU_INT32U), (unsigned char*)&m);
ReadArrayFram(offsetof(TFramMap, Counters.CounterBankMoney), sizeof(CPU_INT32U), (unsigned char*)&b);
r++;
t+=time;
m+=(money + moneyBank);
m+=money;
b+=moneyBank;
WriteArrayFram(offsetof(TFramMap, Counters.CounterRun), sizeof(CPU_INT32U), (unsigned char*)&r);
WriteArrayFram(offsetof(TFramMap, Counters.CounterTime), sizeof(CPU_INT32U), (unsigned char*)&t);
WriteArrayFram(offsetof(TFramMap, Counters.CounterMoney), sizeof(CPU_INT32U), (unsigned char*)&m);
WriteArrayFram(offsetof(TFramMap, Counters.CounterBankMoney), sizeof(CPU_INT32U), (unsigned char*)&b);
// óâåëè÷èì äëèííûå ñ÷åò÷èêè
ReadArrayFram(offsetof(TFramMap, CountersLong), sizeof(TCountersLong), (unsigned char*)&long_ctrs);

View File

@ -131,6 +131,8 @@ typedef struct{
CPU_INT32U CounterTime;
// îáùåå Ñóììà äåíåã
CPU_INT32U CounterMoney;
// îáùåå Ñóììà äåíåã by card - áåçíàëè÷íûõ
CPU_INT32U CounterBankMoney;
// ñ÷åò÷èêè êóïþð â êóïþðíèêå ïî íîìèíàëàì
CPU_INT32U CounterBillNominals[24];

View File

@ -1839,6 +1839,29 @@ TDataDescStruct const CounterMoneyDesc = {
0
};
/*************************************
Общий счетчик денег
*************************************/
CPU_INT08U const CounterMoneyBankName[] = "Безнал.,руб.";
TDataDescStruct const CounterMoneyBankDesc = {
DATA_DESC_VIEW, // тип дескриптора
DATA_TYPE_ULONG, // тип параметра
DATA_LOC_FRAM, // расположение параметра
DATA_NO_ARRAY, // признак массива
0, // размер массива
NULL, // указатель на десриптор индекса массива
(void*)offsetof(TFramMap, Counters.CounterBankMoney), // указатель на переменную или адрес FRAM
NULL, // указатель на границы параметра
NULL, // функция по изменению
0, // смещение между элементами в массиве
CounterMoneyBankName, // указатель на строку названия параметра
DATA_NO_INDEX, // признак индексного параметра (список строк)
NULL, // указатель на список строк для индексного параметра
DATA_INIT_DISABLE,
0
};
/*************************************
Общий счетчик времени работы
*************************************/

View File

@ -140,6 +140,7 @@ extern CPU_INT32U EventJournalIndex;
extern TDataDescStruct const CounterRunDesc;
extern TDataDescStruct const CounterMoneyDesc;
extern TDataDescStruct const CounterMoneyBankDesc;
extern TDataDescStruct const CounterTimeDesc;
extern TDataDescStruct const CounterChannelRunDesc;
extern TDataDescStruct const CounterChannelMoneyDesc;

View File

@ -412,6 +412,13 @@ const TMenuLine line_CommonCountersMenu_2 = {
NULL // ïàíåëü äëÿ ïåðåõîäà
};
const TMenuLine line_CommonCountersMenu_4 = {
MENU_LINE_SHOW_DESC, // òèï ïóíêòà ìåíþ
0, // äîï. ôëàãè
(void*)&CounterMoneyBankDesc, // óêàçàòåëü íà òåêñòîâóþ ñòðîêó èëè äåñêðèïòîð
NULL // ïàíåëü äëÿ ïåðåõîäà
};
const TMenuLine line_CommonCountersMenu_3 = {
MENU_LINE_SHOW_DESC, // òèï ïóíêòà ìåíþ
0, // äîï. ôëàãè
@ -419,8 +426,8 @@ const TMenuLine line_CommonCountersMenu_3 = {
NULL // ïàíåëü äëÿ ïåðåõîäà
};
const TMenuLineArray arr_CommonCountersArray[] = {&line_CommonCountersMenu_0, &line_CommonCountersMenu_1, &line_CommonCountersMenu_2, &line_CommonCountersMenu_3, NULL};
const TMenuPanel CommonCountersPanel[] = {arr_CommonCountersArray, NULL, 4, MENU_PANEL_STATIC};
const TMenuLineArray arr_CommonCountersArray[] = {&line_CommonCountersMenu_0, &line_CommonCountersMenu_1, &line_CommonCountersMenu_2, &line_CommonCountersMenu_4, &line_CommonCountersMenu_3, NULL};
const TMenuPanel CommonCountersPanel[] = {arr_CommonCountersArray, NULL, 5, MENU_PANEL_STATIC};
/***********************************
ÌÅÍÞ ÎÁÙÀß ÑÒÀÒÈÑÒÈÊÀ ÄËÈÍÍÛÅ Ñ×ÅÒ×ÈÊÈ

View File

@ -1,7 +1,7 @@
#ifndef _VERSION_H_
#define _VERSION_H_
#define DEVICE_FW_VERSION "03.36"
#define DEVICE_FW_VERSION "03.38"
#endif // #ifndef _VERSION_H_

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

View File

@ -650,7 +650,7 @@
</option>
<option>
<name>OOCOutputFile</name>
<state>solarium_3_37.hex</state>
<state>solarium_3_38.hex</state>
</option>
<option>
<name>OOCCommandLineProducer</name>
@ -668,7 +668,7 @@
<data>
<extensions></extensions>
<cmdline></cmdline>
<hasPrio>224</hasPrio>
<hasPrio>1</hasPrio>
<buildSequence>inputOutputBased</buildSequence>
</data>
</settings>