mirror of
https://github.com/dimoniche/changer.git
synced 2026-01-30 01:03:30 +03:00
настройки хоппера - обработчик импульсов
2 часа
This commit is contained in:
parent
0f6c9e54a1
commit
baac79872a
File diff suppressed because it is too large
Load Diff
@ -40,9 +40,17 @@ enum{
|
||||
|
||||
EVENT_COIN_INSERTED,
|
||||
EVENT_CASH_INSERTED,
|
||||
EVENT_BANK_INSERTED,
|
||||
EVENT_HOPPER_EXTRACTED,
|
||||
|
||||
EVENT_BILL_ESCROW,
|
||||
EVENT_BILL_STACKED,
|
||||
|
||||
EVENT_ERROR_HOPPER_ON,
|
||||
EVENT_ERROR_HOPPER_OFF,
|
||||
EVENT_NOMONEY_HOPPER_ON,
|
||||
EVENT_NOMONEY_HOPPER_OFF,
|
||||
|
||||
EVENT_MODE_CHANGE,
|
||||
|
||||
EVENT_KEY_EMPTY,
|
||||
|
||||
@ -339,13 +339,14 @@ TDataDescStruct const BankPerPulseDesc = {
|
||||
|
||||
void OnChangeLevel()
|
||||
{
|
||||
CPU_INT32U level1, level2, level3;
|
||||
CPU_INT32U level1, level2, level3, level4;
|
||||
|
||||
GetData(&CashLevelDesc, &level1, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
GetData(&BankLevelDesc, &level2, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
GetData(&CoinLevelDesc, &level3, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
|
||||
SetLevelParam(level1, level2, level3);
|
||||
GetData(&CoinLevelDesc, &level4, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
|
||||
SetLevelParam(level1, level2, level3, level4);
|
||||
|
||||
#if OS_CRITICAL_METHOD == 3
|
||||
OS_CPU_SR cpu_sr = 0;
|
||||
@ -357,13 +358,14 @@ void OnChangeLevel()
|
||||
|
||||
void OnChangeLevelWithoutInit()
|
||||
{
|
||||
CPU_INT32U level1, level2, level3;
|
||||
CPU_INT32U level1, level2, level3, level4;
|
||||
|
||||
GetData(&CashLevelDesc, &level1, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
GetData(&BankLevelDesc, &level2, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
GetData(&CoinLevelDesc, &level3, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
|
||||
SetLevelParam(level1, level2, level3);
|
||||
GetData(&CoinLevelDesc, &level4, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
|
||||
SetLevelParam(level1, level2, level3, level4);
|
||||
}
|
||||
|
||||
/*************************************
|
||||
@ -436,6 +438,27 @@ TDataDescStruct const BankLevelDesc = {
|
||||
0 // çíà÷åíèå ïî óìîë÷àíèþ
|
||||
};
|
||||
|
||||
/*************************************
|
||||
Уровень сигнала хоппера в режиме Cube
|
||||
*************************************/
|
||||
TDataDescStruct const HopperLevelDesc = {
|
||||
DATA_DESC_EDIT, // тип дескриптора
|
||||
DATA_TYPE_ULONG, // тип параметра
|
||||
DATA_LOC_FRAM, // расположение параметра
|
||||
DATA_NO_ARRAY, // признак массива
|
||||
0, // размер массива
|
||||
NULL, // указатель на десриптор индекса массива
|
||||
(void*)offsetof(TFramMap, DeviceConfig.HopperLevel), // указатель на переменную или адрес FRAM
|
||||
(void*)&LevelRange, // указатель на границы параметра
|
||||
OnChangeLevel, // функция по изменению
|
||||
sizeof(CPU_INT32U), // смещение между элементами в массиве
|
||||
LevelName, // указатель на строку названия параметра
|
||||
DATA_IS_INDEX, // признак индексного параметра (список строк)
|
||||
LevelList, // указатель на список строк для индексного параметра
|
||||
DATA_INIT_DISABLE,
|
||||
0 // значение по умолчанию
|
||||
};
|
||||
|
||||
/*************************************
|
||||
IP-àäðåñ ïîñòà
|
||||
*************************************/
|
||||
@ -910,7 +933,7 @@ TDataDescStruct const CashModeDesc = {
|
||||
DATA_IS_INDEX, // ïðèçíàê èíäåêñíîãî ïàðàìåòðà (ñïèñîê ñòðîê)
|
||||
CashModeList, // óêàçàòåëü íà ñïèñîê ñòðîê äëÿ èíäåêñíîãî ïàðàìåòðà
|
||||
DATA_INIT_DISABLE,
|
||||
1
|
||||
0
|
||||
};
|
||||
|
||||
/*************************************
|
||||
@ -3420,6 +3443,165 @@ TDataDescStruct const HopperCostDesc = {
|
||||
10
|
||||
};
|
||||
|
||||
/*************************************
|
||||
остановка мотора хоппера, сек
|
||||
*************************************/
|
||||
CPU_INT08U const HopperStopEngineName[] = "Останов, сек";
|
||||
TRangeValueULONG const HopperStopEngineRange = {1, 20};
|
||||
|
||||
TDataDescStruct const HopperStopEngineDesc = {
|
||||
DATA_DESC_EDIT, // тип дескриптора
|
||||
DATA_TYPE_ULONG, // тип параметра
|
||||
DATA_LOC_FRAM, // расположение параметра
|
||||
DATA_NO_ARRAY, // признак массива
|
||||
0, // размер массива
|
||||
NULL, // указатель на десриптор индекса массива
|
||||
(void*)offsetof(TFramMap, DeviceConfig.hopperStopEngine), // указатель на переменную или адрес FRAM
|
||||
(void*)&HopperStopEngineRange, // указатель на границы параметра
|
||||
NULL, // функция по изменению
|
||||
0, // смещение между элементами в массиве
|
||||
HopperStopEngineName, // указатель на строку названия параметра
|
||||
DATA_NO_INDEX, // признак индексного параметра (список строк)
|
||||
NULL, // указатель на список строк для индексного параметра
|
||||
DATA_INIT_DISABLE,
|
||||
5
|
||||
};
|
||||
|
||||
/*************************************
|
||||
Хранить кредит, мин
|
||||
*************************************/
|
||||
CPU_INT08U const HopperSaveCreditName[] = "Кредит, мин";
|
||||
TRangeValueULONG const HopperSaveCreditRange = {0, 60};
|
||||
|
||||
TDataDescStruct const HopperSaveCreditDesc = {
|
||||
DATA_DESC_EDIT, // тип дескриптора
|
||||
DATA_TYPE_ULONG, // тип параметра
|
||||
DATA_LOC_FRAM, // расположение параметра
|
||||
DATA_NO_ARRAY, // признак массива
|
||||
0, // размер массива
|
||||
NULL, // указатель на десриптор индекса массива
|
||||
(void*)offsetof(TFramMap, DeviceConfig.hopperSaveCredit), // указатель на переменную или адрес FRAM
|
||||
(void*)&HopperSaveCreditRange, // указатель на границы параметра
|
||||
NULL, // функция по изменению
|
||||
0, // смещение между элементами в массиве
|
||||
HopperSaveCreditName, // указатель на строку названия параметра
|
||||
DATA_NO_INDEX, // признак индексного параметра (список строк)
|
||||
NULL, // указатель на список строк для индексного параметра
|
||||
DATA_INIT_DISABLE,
|
||||
0
|
||||
};
|
||||
|
||||
/*************************************
|
||||
Кнопка старт - да/нет
|
||||
*************************************/
|
||||
CPU_INT08U const HopperButtonStartName[] = "Кнопка";
|
||||
TRangeValueULONG const HopperButtonStartRange = {0, 1};
|
||||
|
||||
CPU_INT08U const ButtonStartList_str0[] = "Нет";
|
||||
CPU_INT08U const ButtonStartList_str1[] = "Да";
|
||||
CPU_INT08U const *ButtonStartList[] = {ButtonStartList_str0, ButtonStartList_str1};
|
||||
|
||||
TDataDescStruct const HopperButtonStartDesc = {
|
||||
DATA_DESC_EDIT, // тип дескриптора
|
||||
DATA_TYPE_ULONG, // тип параметра
|
||||
DATA_LOC_FRAM, // расположение параметра
|
||||
DATA_NO_ARRAY, // признак массива
|
||||
0, // размер массива
|
||||
NULL, // указатель на десриптор индекса массива
|
||||
(void*)offsetof(TFramMap, DeviceConfig.hopperButtonStart), // указатель на переменную или адрес FRAM
|
||||
(void*)&HopperButtonStartRange, // указатель на границы параметра
|
||||
NULL, // функция по изменению
|
||||
0, // смещение между элементами в массиве
|
||||
HopperButtonStartName, // указатель на строку названия параметра
|
||||
DATA_IS_INDEX, // признак индексного параметра (список строк)
|
||||
ButtonStartList, // указатель на список строк для индексного параметра
|
||||
DATA_INIT_DISABLE,
|
||||
0
|
||||
};
|
||||
|
||||
/*************************************
|
||||
Длина импульса входа хоппера в режиме Cube, мс
|
||||
*************************************/
|
||||
TRangeValueULONG const HopperPulseLenRange = {20, 250};
|
||||
CPU_INT08U const HopperPulseLenName[] = "Длина имп.,мс";
|
||||
|
||||
void OnChangeHopperPulseLen()
|
||||
{
|
||||
CPU_INT32U pulse, pause;
|
||||
GetData(&HopperPulseLenDesc, &pulse, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
GetData(&HopperPauseLenDesc, &pause, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
SetHopperPulseParam(pulse, pause);
|
||||
}
|
||||
|
||||
TDataDescStruct const HopperPulseLenDesc = {
|
||||
DATA_DESC_EDIT, // тип дескриптора
|
||||
DATA_TYPE_ULONG, // тип параметра
|
||||
DATA_LOC_FRAM, // расположение параметра
|
||||
DATA_NO_ARRAY, // признак массива
|
||||
0, // размер массива
|
||||
NULL, // указатель на десриптор индекса массива
|
||||
(void*)offsetof(TFramMap, hopper_pulse_len), // указатель на переменную или адрес FRAM
|
||||
(void*)&HopperPulseLenRange, // указатель на границы параметра
|
||||
OnChangeHopperPulseLen, // функция по изменению
|
||||
0, // смещение между элементами в массиве
|
||||
HopperPulseLenName, // указатель на строку названия параметра
|
||||
DATA_NO_INDEX, // признак индексного параметра (список строк)
|
||||
NULL, // указатель на список строк для индексного параметра
|
||||
DATA_INIT_DISABLE,
|
||||
50
|
||||
};
|
||||
|
||||
/*************************************
|
||||
Длина паузы входа хоппера в режиме Cube, мс
|
||||
*************************************/
|
||||
TRangeValueULONG const HopperPauseLenRange = {20, 250};
|
||||
CPU_INT08U const HopperPauseLenName[] = "Пауза имп.,мс";
|
||||
|
||||
TDataDescStruct const HopperPauseLenDesc = {
|
||||
DATA_DESC_EDIT, // тип дескриптора
|
||||
DATA_TYPE_ULONG, // тип параметра
|
||||
DATA_LOC_FRAM, // расположение параметра
|
||||
DATA_NO_ARRAY, // признак массива
|
||||
0, // размер массива
|
||||
NULL, // указатель на десриптор индекса массива
|
||||
(void*)offsetof(TFramMap, hopper_pause_len), // указатель на переменную или адрес FRAM
|
||||
(void*)&HopperPauseLenRange, // указатель на границы параметра
|
||||
OnChangeHopperPulseLen, // функция по изменению
|
||||
0, // смещение между элементами в массиве
|
||||
HopperPauseLenName, // указатель на строку названия параметра
|
||||
DATA_NO_INDEX, // признак индексного параметра (список строк)
|
||||
NULL, // указатель на список строк для индексного параметра
|
||||
DATA_INIT_DISABLE,
|
||||
20
|
||||
};
|
||||
|
||||
/*************************************
|
||||
режим хоппера
|
||||
*************************************/
|
||||
TRangeValueULONG const RegimeHopperRange = {0, 1};
|
||||
CPU_INT08U const RegimeHopperName[] = "Режим";
|
||||
CPU_INT08U const RegimeHopper_str0[] = "Elolution";
|
||||
CPU_INT08U const RegimeHopper_str1[] = "Cube";
|
||||
CPU_INT08U const *RegimeHopperList[] = {RegimeHopper_str0, RegimeHopper_str1};
|
||||
|
||||
TDataDescStruct const RegimeHopperDesc = {
|
||||
DATA_DESC_EDIT, // тип дескриптора
|
||||
DATA_TYPE_ULONG, // тип параметра
|
||||
DATA_LOC_FRAM, // расположение параметра
|
||||
DATA_NO_ARRAY, // признак массива
|
||||
0, // размер массива
|
||||
0, // указатель на десриптор индекса массива
|
||||
(void*)offsetof(TFramMap, DeviceConfig.hopperRegime), // указатель на переменную или адрес FRAM
|
||||
(void*)&RegimeHopperRange, // указатель на границы параметра
|
||||
NULL, // функция по изменению
|
||||
sizeof(CPU_INT32U), // смещение между элементами в массиве
|
||||
RegimeHopperName, // указатель на строку названия параметра
|
||||
DATA_IS_INDEX, // признак индексного параметра (список строк)
|
||||
RegimeHopperList, // указатель на список строк для индексного параметра
|
||||
DATA_INIT_DISABLE,
|
||||
0 // значение по умолчанию
|
||||
};
|
||||
|
||||
//**************************************************
|
||||
//**************************************************
|
||||
//**************************************************
|
||||
@ -3506,8 +3688,14 @@ const TDataDescArrayStruct AllDataArray[] =
|
||||
|
||||
{&CoinPulseLenDesc, "CoinPulseLenDesc"},
|
||||
{&CoinPauseLenDesc, "CoinPauseLenDesc"},
|
||||
|
||||
|
||||
{&HopperCostDesc, "HopperCostDesc"},
|
||||
{&HopperStopEngineDesc, "HopperStopEngineDesc"},
|
||||
{&HopperSaveCreditDesc, "HopperSaveCreditDesc"},
|
||||
{&HopperButtonStartDesc, "HopperButtonStartDesc"},
|
||||
{&HopperPauseLenDesc, "HopperPauseLenDesc"},
|
||||
{&HopperPulseLenDesc, "HopperPulseLenDesc"},
|
||||
{&RegimeHopperDesc, "RegimeHopperDesc"},
|
||||
|
||||
{NULL, ""}
|
||||
};
|
||||
|
||||
@ -86,6 +86,7 @@ typedef struct{
|
||||
CPU_INT32U CoinLevel; // óðîâåíü ñèãíàëà ìîíåòíèêà
|
||||
CPU_INT32U CashLevel; // óðîâåíü ñèãíàëà êóïþðíèêà
|
||||
CPU_INT32U BankLevel; // óðîâåíü ñèãíàëà áàíêîâñêîãî òåðìèíàëà
|
||||
CPU_INT32U HopperLevel; // óðîâåíü õîïïåðà â ðåæèìå Cube
|
||||
|
||||
CPU_INT32U PrintTimeout;
|
||||
CPU_INT32U PrintTimeoutAfter;
|
||||
@ -95,7 +96,11 @@ typedef struct{
|
||||
CPU_INT32U DeviceId;
|
||||
|
||||
// íàñòðîéêè õîïïåðà
|
||||
CPU_INT32U hopperRegime;
|
||||
CPU_INT32U hopperCost;
|
||||
CPU_INT32U hopperStopEngine;
|
||||
CPU_INT32U hopperSaveCredit;
|
||||
CPU_INT32U hopperButtonStart;
|
||||
|
||||
}TDeviceConfig;
|
||||
|
||||
@ -242,6 +247,7 @@ extern TDataDescStruct const CommandV2Desc;
|
||||
extern TDataDescStruct const TaxSystemDesc;
|
||||
|
||||
extern void OnChangeBankPulseLen();
|
||||
extern void OnChangeHopperPulseLen();
|
||||
|
||||
extern TDataDescStruct const BankPerPulseDesc;
|
||||
extern TDataDescStruct const BankPulseLenDesc;
|
||||
@ -257,5 +263,12 @@ extern TDataDescStruct const CoinPulseLenDesc;
|
||||
extern TDataDescStruct const CoinPauseLenDesc;
|
||||
|
||||
extern TDataDescStruct const HopperCostDesc;
|
||||
extern TDataDescStruct const HopperStopEngineDesc;
|
||||
extern TDataDescStruct const HopperSaveCreditDesc;
|
||||
extern TDataDescStruct const HopperButtonStartDesc;
|
||||
extern TDataDescStruct const HopperPulseLenDesc;
|
||||
extern TDataDescStruct const HopperPauseLenDesc;
|
||||
extern TDataDescStruct const HopperLevelDesc;
|
||||
extern TDataDescStruct const RegimeHopperDesc;
|
||||
|
||||
#endif //#ifndef _DATADESC_H_
|
||||
|
||||
@ -62,6 +62,10 @@ typedef struct
|
||||
CPU_INT32U bank_pulse_len;
|
||||
CPU_INT32U bank_pause_len;
|
||||
|
||||
// íàñòðîéêè õîïïåðà â ðåæèìå Cube
|
||||
CPU_INT32U hopper_pulse_len;
|
||||
CPU_INT32U hopper_pause_len;
|
||||
|
||||
CPU_INT32U TaxFormat;
|
||||
CPU_INT32U SubjSell;
|
||||
CPU_INT32U CommandV2;
|
||||
|
||||
@ -992,8 +992,8 @@ const TMenuLine line_FrMenu_12 = {
|
||||
NULL
|
||||
};
|
||||
|
||||
const TMenuLineArray arr_FrMenuArray[] = {&line_FrMenu_0, &line_FrMenu_1, &line_FrMenu_2, &line_FrMenu_3, &line_FrMenu_4, &line_FrMenu_5, &line_FrMenu_6, &line_FrMenu_7, &line_FrMenu_8, &line_FrMenu_9, &line_FrMenu_10, &line_FrMenu_11, &line_FrMenu_12, NULL};
|
||||
const TMenuPanel FrMenuPanel[] = {arr_FrMenuArray, NULL, 13, MENU_PANEL_STANDARD};
|
||||
const TMenuLineArray arr_FrMenuArray[] = {&line_FrMenu_0, &line_FrMenu_1, /*&line_FrMenu_2, &line_FrMenu_3,*/ &line_FrMenu_4, &line_FrMenu_5, &line_FrMenu_6, &line_FrMenu_7, &line_FrMenu_8, &line_FrMenu_9, &line_FrMenu_10, &line_FrMenu_11, &line_FrMenu_12, NULL};
|
||||
const TMenuPanel FrMenuPanel[] = {arr_FrMenuArray, NULL, 11, MENU_PANEL_STANDARD};
|
||||
|
||||
/***********************************
|
||||
МЕНЮ НАСТРОЙКА МОНЕТОПРИЕМНИКА
|
||||
@ -1092,8 +1092,8 @@ const TMenuLine line_CashMenu_5 = {
|
||||
NULL // панель для перехода
|
||||
};
|
||||
|
||||
const TMenuLineArray arr_ValidatorMenuArray[] = {&line_CashMenu_0, &line_CashMenu_1, &line_CashMenu_2, &line_CashMenu_3, &line_CashMenu_4, &line_CashMenu_5, NULL};
|
||||
const TMenuPanel ValidatorSetupPanel[] = {arr_ValidatorMenuArray, NULL, 6, MENU_PANEL_STANDARD};
|
||||
const TMenuLineArray arr_ValidatorMenuArray[] = {&line_CashMenu_0, &line_CashMenu_1, /*&line_CashMenu_2, &line_CashMenu_3, &line_CashMenu_4, &line_CashMenu_5,*/ NULL};
|
||||
const TMenuPanel ValidatorSetupPanel[] = {arr_ValidatorMenuArray, NULL, 3, MENU_PANEL_STANDARD};
|
||||
|
||||
/***********************************
|
||||
МЕНЮ НАСТРОЙКА БАНКОВСКИХ ТЕРМИНАЛОВ
|
||||
@ -1158,14 +1158,42 @@ const TMenuLine line_HopperMenu_0 = {
|
||||
};
|
||||
|
||||
const TMenuLine line_HopperMenu_1 = {
|
||||
MENU_LINE_SHOW_DESC, // òèï ïóíêòà ìåíþ
|
||||
0, // äîï. ôëàãè
|
||||
(void*)&RegimeHopperDesc, // óêàçàòåëü íà òåêñòîâóþ ñòðîêó èëè äåñêðèïòîð
|
||||
NULL // ïàíåëü äëÿ ïåðåõîäà
|
||||
};
|
||||
|
||||
const TMenuLine line_HopperMenu_2 = {
|
||||
MENU_LINE_SHOW_DESC, // тип пункта меню
|
||||
0, // доп. флаги
|
||||
(void*)&HopperCostDesc, // указатель на текстовую строку или дескриптор
|
||||
NULL // панель для перехода
|
||||
};
|
||||
|
||||
const TMenuLineArray arr_HopperMenuArray[] = {&line_HopperMenu_0, &line_HopperMenu_1, NULL};
|
||||
const TMenuPanel HopperSetupPanel[] = {arr_HopperMenuArray, NULL, 2, MENU_PANEL_STANDARD};
|
||||
const TMenuLine line_HopperMenu_3 = {
|
||||
MENU_LINE_SHOW_DESC, // òèï ïóíêòà ìåíþ
|
||||
0, // äîï. ôëàãè
|
||||
(void*)&HopperStopEngineDesc, // óêàçàòåëü íà òåêñòîâóþ ñòðîêó èëè äåñêðèïòîð
|
||||
NULL // ïàíåëü äëÿ ïåðåõîäà
|
||||
};
|
||||
|
||||
const TMenuLine line_HopperMenu_4 = {
|
||||
MENU_LINE_SHOW_DESC, // òèï ïóíêòà ìåíþ
|
||||
0, // äîï. ôëàãè
|
||||
(void*)&HopperSaveCreditDesc, // óêàçàòåëü íà òåêñòîâóþ ñòðîêó èëè äåñêðèïòîð
|
||||
NULL // ïàíåëü äëÿ ïåðåõîäà
|
||||
};
|
||||
|
||||
const TMenuLine line_HopperMenu_5 = {
|
||||
MENU_LINE_SHOW_DESC, // òèï ïóíêòà ìåíþ
|
||||
0, // äîï. ôëàãè
|
||||
(void*)&HopperButtonStartDesc, // óêàçàòåëü íà òåêñòîâóþ ñòðîêó èëè äåñêðèïòîð
|
||||
NULL // ïàíåëü äëÿ ïåðåõîäà
|
||||
};
|
||||
|
||||
const TMenuLineArray arr_HopperMenuArray[] = {&line_HopperMenu_0, &line_HopperMenu_1, &line_HopperMenu_2, &line_HopperMenu_3, &line_HopperMenu_4, &line_HopperMenu_5, NULL};
|
||||
const TMenuPanel HopperSetupPanel[] = {arr_HopperMenuArray, NULL, 6, MENU_PANEL_STANDARD};
|
||||
|
||||
/***********************************
|
||||
МЕНЮ НАСТРОЙКА МОДЕМА
|
||||
|
||||
@ -51,10 +51,8 @@ static CPU_INT32U cashLevel;
|
||||
static CPU_INT32U coinLevel;
|
||||
static CPU_INT32U bankLevel;
|
||||
static CPU_INT32U hopperLevel;
|
||||
static CPU_INT32U SignalHopperLevel;
|
||||
|
||||
CPU_INT32U period;
|
||||
CPU_INT32U period_cash;
|
||||
CPU_INT32U period_coin;
|
||||
CPU_INT32U period_bank;
|
||||
CPU_INT32U period_signal;
|
||||
CPU_INT32U period_hopper;
|
||||
@ -92,7 +90,18 @@ void SetBankPulseParam(CPU_INT32U pulse, CPU_INT32U pause)
|
||||
OS_EXIT_CRITICAL();
|
||||
}
|
||||
|
||||
void SetLevelParam(CPU_INT32U level1, CPU_INT32U level2, CPU_INT32U level3)
|
||||
void SetHopperPulseParam(CPU_INT32U pulse, CPU_INT32U pause)
|
||||
{
|
||||
#if OS_CRITICAL_METHOD == 3
|
||||
OS_CPU_SR cpu_sr = 0;
|
||||
#endif
|
||||
OS_ENTER_CRITICAL();
|
||||
bank_pulse = pulse * 1;
|
||||
bank_pause = pause;
|
||||
OS_EXIT_CRITICAL();
|
||||
}
|
||||
|
||||
void SetLevelParam(CPU_INT32U level1, CPU_INT32U level2, CPU_INT32U level3, CPU_INT32U level4)
|
||||
{
|
||||
#if OS_CRITICAL_METHOD == 3
|
||||
OS_CPU_SR cpu_sr = 0;
|
||||
@ -102,6 +111,7 @@ void SetLevelParam(CPU_INT32U level1, CPU_INT32U level2, CPU_INT32U level3)
|
||||
cashLevel = level1;
|
||||
bankLevel = level2;
|
||||
coinLevel = level3;
|
||||
hopperLevel = level4;
|
||||
|
||||
OS_EXIT_CRITICAL();
|
||||
}
|
||||
@ -109,87 +119,219 @@ void SetLevelParam(CPU_INT32U level1, CPU_INT32U level2, CPU_INT32U level3)
|
||||
void CoinTask(void *p_arg)
|
||||
{
|
||||
CPU_INT32U enable_coin;
|
||||
CPU_INT32U cash_mode;
|
||||
CPU_INT32U cash_enable;
|
||||
CPU_INT32U last_cash_count = GetCashCount();
|
||||
CPU_INT32U last_cash_time = OSTimeGet();
|
||||
CPU_INT32U bank_enable;
|
||||
CPU_INT32U regime_hopper;
|
||||
|
||||
CPU_INT32U last_coin_count = GetCoinCount();
|
||||
CPU_INT32U last_coin_time = OSTimeGet();
|
||||
|
||||
CPU_INT32U last_bank_count = GetbankCount();
|
||||
CPU_INT32U last_bank_time = OSTimeGet();
|
||||
|
||||
CPU_INT32U last_hopper_count = GetHopperCount();
|
||||
CPU_INT32U last_hopper_time = OSTimeGet();
|
||||
|
||||
CPU_INT32U last_settings_time = OSTimeGet();
|
||||
|
||||
GetData(&EnableCoinDesc, &enable_coin, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
GetData(&CashModeDesc, &cash_mode, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
GetData(&EnableValidatorDesc, &cash_enable, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
|
||||
GetData(&EnableBankDesc, &bank_enable, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
GetData(&RegimeHopperDesc, ®ime_hopper, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
|
||||
while(1)
|
||||
{
|
||||
if (OSTimeGet() - last_settings_time > 1000)
|
||||
{
|
||||
last_settings_time = OSTimeGet();
|
||||
GetData(&EnableCoinDesc, &enable_coin, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
GetData(&CashModeDesc, &cash_mode, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
GetData(&EnableValidatorDesc, &cash_enable, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
GetData(&EnableCoinDesc, &enable_coin, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
GetData(&EnableBankDesc, &bank_enable, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
GetData(&RegimeHopperDesc, ®ime_hopper, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||
}
|
||||
|
||||
OSTimeDly(1);
|
||||
|
||||
if (enable_coin)
|
||||
{
|
||||
if (GetCoinCount())
|
||||
{
|
||||
PostUserEvent(EVENT_COIN_INSERTED);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
CoinDisable();
|
||||
GetResetCoinCount();
|
||||
}
|
||||
|
||||
if (!cash_enable) {GetResetCashCount(); continue;}
|
||||
|
||||
#if OS_CRITICAL_METHOD == 3
|
||||
OS_CPU_SR cpu_sr = 0;
|
||||
#endif
|
||||
OS_ENTER_CRITICAL();
|
||||
if (pend_cash_counter)
|
||||
|
||||
if (enable_coin)
|
||||
{
|
||||
// èìïóëüñû èíêðåìåíòèðóåì òîëüêî ïîñëå âûäåðæêè ïàóçû
|
||||
if (OSTimeGet() - pend_cash_timestamp > cash_pause)
|
||||
{
|
||||
pend_cash_counter = 0;
|
||||
CashImpCounter++;
|
||||
}
|
||||
}
|
||||
OS_EXIT_CRITICAL();
|
||||
|
||||
if (cash_mode == 1)
|
||||
OS_ENTER_CRITICAL();
|
||||
if (pend_coin_counter)
|
||||
{
|
||||
if (GetCashCount())
|
||||
// èìïóëüñû èíêðåìåíòèðóåì òîëüêî ïîñëå âûäåðæêè ïàóçû
|
||||
if (OSTimeGet() - pend_coin_timestamp > coin_pause)
|
||||
{
|
||||
if (last_cash_count == GetCashCount())
|
||||
{
|
||||
if (labs(OSTimeGet() - last_cash_time) > 500)
|
||||
{
|
||||
PostUserEvent(EVENT_CASH_INSERTED);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
last_cash_count = GetCashCount();
|
||||
last_cash_time = OSTimeGet();
|
||||
}
|
||||
pend_coin_counter = 0;
|
||||
CoinImpCounter++;
|
||||
}
|
||||
}
|
||||
OS_EXIT_CRITICAL();
|
||||
|
||||
if (GetCoinCount())
|
||||
{
|
||||
if (last_coin_count == GetCoinCount())
|
||||
{
|
||||
if (labs(OSTimeGet() - last_coin_time) > 500)
|
||||
{
|
||||
PostUserEvent(EVENT_COIN_INSERTED);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
last_cash_time = OSTimeGet();
|
||||
last_coin_count = GetCoinCount();
|
||||
last_coin_time = OSTimeGet();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
last_coin_time = OSTimeGet();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
GetResetCashCount();
|
||||
}
|
||||
{
|
||||
CoinDisable();
|
||||
GetResetCoinCount();
|
||||
|
||||
OS_ENTER_CRITICAL();
|
||||
pend_coin_counter = 0;
|
||||
pend_coin_timestamp = 0;
|
||||
OS_EXIT_CRITICAL();
|
||||
}
|
||||
|
||||
if (bank_enable)
|
||||
{
|
||||
OS_ENTER_CRITICAL();
|
||||
if (pend_bank_counter)
|
||||
{
|
||||
// èìïóëüñû èíêðåìåíòèðóåì òîëüêî ïîñëå âûäåðæêè ïàóçû
|
||||
if (OSTimeGet() - pend_bank_timestamp > bank_pause)
|
||||
{
|
||||
pend_bank_counter = 0;
|
||||
BankImpCounter++;
|
||||
}
|
||||
}
|
||||
OS_EXIT_CRITICAL();
|
||||
|
||||
if (GetbankCount())
|
||||
{
|
||||
if (last_bank_count == GetbankCount())
|
||||
{
|
||||
if (labs(OSTimeGet() - last_bank_time) > 500)
|
||||
{
|
||||
PostUserEvent(EVENT_BANK_INSERTED);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
last_bank_count = GetbankCount();
|
||||
last_bank_time = OSTimeGet();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
last_bank_time = OSTimeGet();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
BankDisable();
|
||||
GetResetbankCount();
|
||||
|
||||
OS_ENTER_CRITICAL();
|
||||
pend_bank_counter = 0;
|
||||
pend_bank_timestamp = 0;
|
||||
OS_EXIT_CRITICAL();
|
||||
}
|
||||
|
||||
if (regime_hopper)
|
||||
{
|
||||
OS_ENTER_CRITICAL();
|
||||
if (pend_hopper_counter)
|
||||
{
|
||||
// èìïóëüñû èíêðåìåíòèðóåì òîëüêî ïîñëå âûäåðæêè ïàóçû
|
||||
if (OSTimeGet() - pend_hopper_timestamp > hopper_pause)
|
||||
{
|
||||
pend_hopper_counter = 0;
|
||||
HopperImpCounter++;
|
||||
}
|
||||
}
|
||||
OS_EXIT_CRITICAL();
|
||||
|
||||
if (GetHopperCount())
|
||||
{
|
||||
if (last_hopper_count == GetHopperCount())
|
||||
{
|
||||
if (labs(OSTimeGet() - last_hopper_time) > 500)
|
||||
{
|
||||
PostUserEvent(EVENT_HOPPER_EXTRACTED);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
last_hopper_count = GetHopperCount();
|
||||
last_hopper_time = OSTimeGet();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
last_bank_time = OSTimeGet();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
HopperDisable();
|
||||
GetResetHopperCount();
|
||||
|
||||
OS_ENTER_CRITICAL();
|
||||
pend_hopper_counter = 0;
|
||||
pend_hopper_timestamp = 0;
|
||||
OS_EXIT_CRITICAL();
|
||||
}
|
||||
|
||||
OS_ENTER_CRITICAL();
|
||||
|
||||
if (pend_upsignal_error_hopper_counter)
|
||||
{
|
||||
if (OSTimeGet() - pend_signal_error_hopper_timestamp > signal_error_hopper_pulse)
|
||||
{
|
||||
// ñèãíàë îøèáêè ñíÿò
|
||||
PostUserEvent(EVENT_ERROR_HOPPER_ON);
|
||||
pend_upsignal_error_hopper_counter = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (pend_downsignal_error_hopper_counter)
|
||||
{
|
||||
if (OSTimeGet() - pend_signal_error_hopper_timestamp > signal_error_hopper_pulse)
|
||||
{
|
||||
// ñèãíàë îøèáêè ïîÿâèëñÿ
|
||||
PostUserEvent(EVENT_ERROR_HOPPER_OFF);
|
||||
pend_downsignal_error_hopper_counter = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (pend_upsignal_nomoney_hopper_counter)
|
||||
{
|
||||
if (OSTimeGet() - pend_signal_nomoney_hopper_timestamp > signal_nomoney_hopper_pulse)
|
||||
{
|
||||
// äåíüãè â õîïïåðå åñòü
|
||||
PostUserEvent(EVENT_NOMONEY_HOPPER_ON);
|
||||
pend_upsignal_nomoney_hopper_counter = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (pend_downsignal_nomoney_hopper_counter)
|
||||
{
|
||||
if (OSTimeGet() - pend_signal_nomoney_hopper_timestamp > signal_nomoney_hopper_pulse)
|
||||
{
|
||||
// äåíüãè â õîïïåðå êîí÷èëèñü
|
||||
PostUserEvent(EVENT_NOMONEY_HOPPER_OFF);
|
||||
pend_downsignal_nomoney_hopper_counter = 0;
|
||||
}
|
||||
}
|
||||
|
||||
OS_EXIT_CRITICAL();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void CoinDisable(void)
|
||||
@ -202,6 +344,26 @@ void CoinEnable(void)
|
||||
|
||||
}
|
||||
|
||||
void BankDisable(void)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void BankEnable(void)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void HopperDisable(void)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void HopperEnable(void)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
// ïîëó÷èòü ÷èñëî ìîíåò
|
||||
CPU_INT32U GetCoinCount(void)
|
||||
{
|
||||
@ -290,7 +452,7 @@ CPU_INT32U GetHopperCount()
|
||||
}
|
||||
|
||||
// ïîëó÷èòü ÷èñëî èìïóëüñîâ îò õîïïåðà è ñáðîñèòü ñ÷åò÷èê
|
||||
CPU_INT32U GetHopperbankCount()
|
||||
CPU_INT32U GetResetHopperCount()
|
||||
{
|
||||
#if OS_CRITICAL_METHOD == 3
|
||||
OS_CPU_SR cpu_sr = 0;
|
||||
@ -307,6 +469,9 @@ void InitCoin(void)
|
||||
{
|
||||
CoinImpCounter = 0;
|
||||
CashImpCounter = 0;
|
||||
BankImpCounter = 0;
|
||||
HopperImpCounter = 0;
|
||||
|
||||
InitImpInput();
|
||||
OSTaskCreate(CoinTask, (void *)0, (OS_STK *)&CoinTaskStk[COIN_TASK_STK_SIZE-1], COIN_TASK_PRIO);
|
||||
}
|
||||
@ -364,21 +529,21 @@ void InputCapture_ISR(void)
|
||||
// ìîíåòîïðèåìíèê
|
||||
if(TSTBIT(input_event, 0))
|
||||
{
|
||||
if ((!FIO0PIN_bit.P0_23 && cashLevel) || (FIO0PIN_bit.P0_23 && !cashLevel))
|
||||
if ((!FIO0PIN_bit.P0_23 && coinLevel) || (FIO0PIN_bit.P0_23 && !coinLevel))
|
||||
{ // ïðèøåë çàäíèé ôðîíò
|
||||
CPU_INT32U cr=T3CR;
|
||||
cr -= period_cash;
|
||||
cr -= period_coin;
|
||||
|
||||
if (cr > (cash_pulse - COIN_IMP_SPAN))
|
||||
if (cr > (coin_pulse - COIN_IMP_SPAN))
|
||||
{
|
||||
pend_cash_counter = 1;
|
||||
pend_cash_timestamp = OSTimeGet();
|
||||
pend_coin_counter = 1;
|
||||
pend_coin_timestamp = OSTimeGet();
|
||||
}
|
||||
}
|
||||
else
|
||||
{ // ïðèøåë ïåðåäíèé ôðîíò
|
||||
period_cash = T3CR;
|
||||
pend_cash_counter = 0;
|
||||
period_coin = T3CR;
|
||||
pend_coin_counter = 0;
|
||||
}
|
||||
}
|
||||
|
||||
@ -429,7 +594,7 @@ void InputCapture_ISR(void)
|
||||
{
|
||||
pend_signal_error_hopper_timestamp = OSTimeGet();
|
||||
|
||||
if ((FIO1PIN_bit.P1_23 && SignalHopperLevel) || (!FIO1PIN_bit.P1_23 && !SignalHopperLevel))
|
||||
if ((FIO1PIN_bit.P1_23 && hopperLevel) || (!FIO1PIN_bit.P1_23 && !hopperLevel))
|
||||
{
|
||||
pend_upsignal_error_hopper_counter = 1;
|
||||
pend_downsignal_error_hopper_counter = 0;
|
||||
@ -446,7 +611,7 @@ void InputCapture_ISR(void)
|
||||
{
|
||||
pend_signal_nomoney_hopper_timestamp = OSTimeGet();
|
||||
|
||||
if ((FIO1PIN_bit.P1_24 && SignalHopperLevel) || (!FIO1PIN_bit.P1_24 && !SignalHopperLevel))
|
||||
if ((FIO1PIN_bit.P1_24 && hopperLevel) || (!FIO1PIN_bit.P1_24 && !hopperLevel))
|
||||
{
|
||||
pend_upsignal_nomoney_hopper_counter = 1;
|
||||
pend_downsignal_nomoney_hopper_counter = 0;
|
||||
@ -472,14 +637,14 @@ void InitInputPorts()
|
||||
|
||||
// áàíêîâñêèé òåðìèíàë
|
||||
PINSEL1_bit.P0_26 = 0;
|
||||
if(cashLevel)PINMODE1_bit.P0_26 = 3;
|
||||
if(bankLevel)PINMODE1_bit.P0_26 = 3;
|
||||
else PINMODE1_bit.P0_26 = 0;
|
||||
FIO0DIR_bit.P0_26 = 0;
|
||||
FIO0MASK_bit.P0_26 = 0;
|
||||
|
||||
// õîïïåð â ðåæèìå èìïóëüñîâ
|
||||
PINSEL3_bit.P1_25 = 0;
|
||||
if(bankLevel)PINMODE3_bit.P1_25 = 3;
|
||||
if(hopperLevel)PINMODE3_bit.P1_25 = 3;
|
||||
else PINMODE3_bit.P1_25 = 0;
|
||||
FIO1DIR_bit.P1_25 = 0;
|
||||
FIO1MASK_bit.P1_25 = 0;
|
||||
@ -522,7 +687,7 @@ void InitImpInput (void)
|
||||
OnChangeCoinPulseLen();
|
||||
OnChangeCashPulseLen();
|
||||
OnChangeBankPulseLen();
|
||||
//OnChangeHopperPulseLen();
|
||||
OnChangeHopperPulseLen();
|
||||
|
||||
OS_ENTER_CRITICAL();
|
||||
|
||||
|
||||
@ -15,14 +15,24 @@ extern CPU_INT32U GetCoinCount(void);
|
||||
extern CPU_INT32U GetResetCoinCount(void);
|
||||
extern void CoinDisable(void);
|
||||
extern void CoinEnable(void);
|
||||
extern void BankDisable(void);
|
||||
extern void BankEnable(void);
|
||||
extern void HopperDisable(void);
|
||||
extern void HopperEnable(void);
|
||||
|
||||
extern void InitInputPorts();
|
||||
extern CPU_INT32U GetCashCount(void);
|
||||
extern CPU_INT32U GetResetCashCount(void);
|
||||
extern CPU_INT32U GetbankCount(void);
|
||||
extern CPU_INT32U GetResetbankCount(void);
|
||||
extern CPU_INT32U GetHopperCount();
|
||||
extern CPU_INT32U GetResetHopperCount(void);
|
||||
|
||||
extern void SetCoinPulseParam(CPU_INT32U pulse, CPU_INT32U pause);
|
||||
extern void SetCashPulseParam(CPU_INT32U pulse, CPU_INT32U pause);
|
||||
extern void SetBankPulseParam(CPU_INT32U pulse, CPU_INT32U pause);
|
||||
extern void SetLevelParam(CPU_INT32U level1, CPU_INT32U level2, CPU_INT32U level3);
|
||||
extern void SetHopperPulseParam(CPU_INT32U pulse, CPU_INT32U pause);
|
||||
extern void SetLevelParam(CPU_INT32U level1, CPU_INT32U level2, CPU_INT32U level3, CPU_INT32U level4);
|
||||
|
||||
#define BIT(bit) (1UL << (bit))
|
||||
|
||||
|
||||
@ -1,5 +1,314 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
|
||||
<Project/>
|
||||
<Project>
|
||||
<Desktop>
|
||||
<Static>
|
||||
<Debug-Log>
|
||||
<ColumnWidth0>20</ColumnWidth0>
|
||||
<ColumnWidth1>1307</ColumnWidth1>
|
||||
</Debug-Log>
|
||||
<Build>
|
||||
<ColumnWidth0>20</ColumnWidth0>
|
||||
<ColumnWidth1>980</ColumnWidth1>
|
||||
<ColumnWidth2>261</ColumnWidth2>
|
||||
<ColumnWidth3>65</ColumnWidth3>
|
||||
</Build>
|
||||
<Workspace>
|
||||
<ColumnWidths>
|
||||
<Column0>124</Column0>
|
||||
<Column1>27</Column1>
|
||||
<Column2>27</Column2>
|
||||
<Column3>27</Column3>
|
||||
</ColumnWidths>
|
||||
</Workspace>
|
||||
<Disassembly>
|
||||
<col-names>
|
||||
<item>Disassembly</item>
|
||||
<item>_I0</item>
|
||||
</col-names>
|
||||
<col-widths>
|
||||
<item>500</item>
|
||||
<item>20</item>
|
||||
</col-widths>
|
||||
<DisasmHistory/>
|
||||
<ShowCodeCoverage>0</ShowCodeCoverage>
|
||||
<ShowInstrProfiling>0</ShowInstrProfiling>
|
||||
</Disassembly>
|
||||
</Static>
|
||||
<Windows>
|
||||
<Wnd3>
|
||||
<Tabs>
|
||||
<Tab>
|
||||
<Identity>TabID-4454-14979</Identity>
|
||||
<TabName>Debug Log</TabName>
|
||||
<Factory>Debug-Log</Factory>
|
||||
<Session/>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Identity>TabID-3931-14989</Identity>
|
||||
<TabName>Build</TabName>
|
||||
<Factory>Build</Factory>
|
||||
<Session/>
|
||||
</Tab>
|
||||
</Tabs>
|
||||
<SelectedTab>0</SelectedTab>
|
||||
</Wnd3>
|
||||
<Wnd4>
|
||||
<Tabs>
|
||||
<Tab>
|
||||
<Identity>TabID-15203-14983</Identity>
|
||||
<TabName>Workspace</TabName>
|
||||
<Factory>Workspace</Factory>
|
||||
<Session>
|
||||
<NodeDict>
|
||||
<ExpandedNode>sk-mlpc2368</ExpandedNode>
|
||||
</NodeDict>
|
||||
</Session>
|
||||
</Tab>
|
||||
</Tabs>
|
||||
<SelectedTab>0</SelectedTab>
|
||||
</Wnd4>
|
||||
<Wnd5>
|
||||
<Tabs>
|
||||
<Tab>
|
||||
<Identity>TabID-25951-14986</Identity>
|
||||
<TabName>Disassembly</TabName>
|
||||
<Factory>Disassembly</Factory>
|
||||
<Session/>
|
||||
</Tab>
|
||||
</Tabs>
|
||||
<SelectedTab>0</SelectedTab>
|
||||
</Wnd5>
|
||||
</Windows>
|
||||
<Editor>
|
||||
<Pane>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\PROJECT\app\app_serv.c</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>532</YPos>
|
||||
<SelStart>18305</SelStart>
|
||||
<SelEnd>18305</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\PROJECT\services\validator.c</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>338</YPos>
|
||||
<SelStart>8384</SelStart>
|
||||
<SelEnd>8384</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\PROJECT\services\coin.c</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>511</YPos>
|
||||
<SelStart>11916</SelStart>
|
||||
<SelEnd>11916</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\PROJECT\services\coin.h</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>3</YPos>
|
||||
<SelStart>485</SelStart>
|
||||
<SelEnd>485</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\PROJECT\services\time.c</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>55</YPos>
|
||||
<SelStart>1532</SelStart>
|
||||
<SelEnd>1532</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\PROJECT\drivers\ccnet\CCRSProtocol.h</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>0</YPos>
|
||||
<SelStart>434</SelStart>
|
||||
<SelEnd>434</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\PROJECT\app\app_serv.h</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>0</YPos>
|
||||
<SelStart>360</SelStart>
|
||||
<SelEnd>360</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\PROJECT\data\datadesc.h</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>73</YPos>
|
||||
<SelStart>2838</SelStart>
|
||||
<SelEnd>2838</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\PROJECT\data\datadesc.c</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>3399</YPos>
|
||||
<SelStart>157293</SelStart>
|
||||
<SelEnd>157293</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\OS\bsp\iolpc2368.h</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>797</YPos>
|
||||
<SelStart>17962</SelStart>
|
||||
<SelEnd>17962</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\PROJECT\data\fram_map.h</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>0</YPos>
|
||||
<SelStart>176</SelStart>
|
||||
<SelEnd>176</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\PROJECT\menu\menudesc.c</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>879</YPos>
|
||||
<SelStart>37022</SelStart>
|
||||
<SelEnd>37022</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\PROJECT\menu\menudesc.h</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>0</YPos>
|
||||
<SelStart>779</SelStart>
|
||||
<SelEnd>779</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\OS\app\app.c</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>33</YPos>
|
||||
<SelStart>1131</SelStart>
|
||||
<SelEnd>1131</SelEnd>
|
||||
</Tab>
|
||||
<ActiveTab>13</ActiveTab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\OS\bsp\bsp.c</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>278</YPos>
|
||||
<SelStart>11612</SelStart>
|
||||
<SelEnd>11612</SelEnd>
|
||||
</Tab>
|
||||
<Tab>
|
||||
<Factory>TextEditor</Factory>
|
||||
<Filename>$WS_DIR$\OS\uc\os_ii\source\os_core.c</Filename>
|
||||
<XPos>0</XPos>
|
||||
<YPos>1366</YPos>
|
||||
<SelStart>56898</SelStart>
|
||||
<SelEnd>56898</SelEnd>
|
||||
</Tab>
|
||||
</Pane>
|
||||
<ActivePane>0</ActivePane>
|
||||
<Sizes>
|
||||
<Pane>
|
||||
<X>1000000</X>
|
||||
<Y>1000000</Y>
|
||||
</Pane>
|
||||
</Sizes>
|
||||
<SplitMode>1</SplitMode>
|
||||
</Editor>
|
||||
<Positions>
|
||||
<Top>
|
||||
<Row0>
|
||||
<Sizes>
|
||||
<Toolbar-049429c8>
|
||||
<key>iaridepm.enu1</key>
|
||||
</Toolbar-049429c8>
|
||||
</Sizes>
|
||||
</Row0>
|
||||
<Row1>
|
||||
<Sizes>
|
||||
<Toolbar-06bcb290>
|
||||
<key>debuggergui.enu1</key>
|
||||
</Toolbar-06bcb290>
|
||||
</Sizes>
|
||||
</Row1>
|
||||
</Top>
|
||||
<Left>
|
||||
<Row0>
|
||||
<Sizes>
|
||||
<Wnd4>
|
||||
<Rect>
|
||||
<Top>-2</Top>
|
||||
<Left>-2</Left>
|
||||
<Bottom>458</Bottom>
|
||||
<Right>198</Right>
|
||||
<x>-2</x>
|
||||
<y>-2</y>
|
||||
<xscreen>200</xscreen>
|
||||
<yscreen>200</yscreen>
|
||||
<sizeHorzCX>146413</sizeHorzCX>
|
||||
<sizeHorzCY>275862</sizeHorzCY>
|
||||
<sizeVertCX>146413</sizeVertCX>
|
||||
<sizeVertCY>634483</sizeVertCY>
|
||||
</Rect>
|
||||
</Wnd4>
|
||||
</Sizes>
|
||||
</Row0>
|
||||
</Left>
|
||||
<Right>
|
||||
<Row0>
|
||||
<Sizes>
|
||||
<Wnd5>
|
||||
<Rect>
|
||||
<Top>-2</Top>
|
||||
<Left>-2</Left>
|
||||
<Bottom>458</Bottom>
|
||||
<Right>198</Right>
|
||||
<x>-2</x>
|
||||
<y>-2</y>
|
||||
<xscreen>200</xscreen>
|
||||
<yscreen>200</yscreen>
|
||||
<sizeHorzCX>146413</sizeHorzCX>
|
||||
<sizeHorzCY>275862</sizeHorzCY>
|
||||
<sizeVertCX>146413</sizeVertCX>
|
||||
<sizeVertCY>634483</sizeVertCY>
|
||||
</Rect>
|
||||
</Wnd5>
|
||||
</Sizes>
|
||||
</Row0>
|
||||
</Right>
|
||||
<Bottom>
|
||||
<Row0>
|
||||
<Sizes>
|
||||
<Wnd3>
|
||||
<Rect>
|
||||
<Top>-2</Top>
|
||||
<Left>-2</Left>
|
||||
<Bottom>198</Bottom>
|
||||
<Right>1368</Right>
|
||||
<x>-2</x>
|
||||
<y>-2</y>
|
||||
<xscreen>1370</xscreen>
|
||||
<yscreen>200</yscreen>
|
||||
<sizeHorzCX>1002928</sizeHorzCX>
|
||||
<sizeHorzCY>275862</sizeHorzCY>
|
||||
<sizeVertCX>146413</sizeVertCX>
|
||||
<sizeVertCY>275862</sizeVertCY>
|
||||
</Rect>
|
||||
</Wnd3>
|
||||
</Sizes>
|
||||
</Row0>
|
||||
</Bottom>
|
||||
<Float>
|
||||
<Sizes/>
|
||||
</Float>
|
||||
</Positions>
|
||||
</Desktop>
|
||||
</Project>
|
||||
|
||||
|
||||
|
||||
@ -9,7 +9,7 @@ TriggerName=main
|
||||
LimitSize=0
|
||||
ByteLimit=50
|
||||
[DebugChecksum]
|
||||
Checksum=-314564541
|
||||
Checksum=1860031514
|
||||
[Exceptions]
|
||||
StopOnUncaught=_ 0
|
||||
StopOnThrow=_ 0
|
||||
@ -38,8 +38,8 @@ Enabled=0
|
||||
ShowSource=1
|
||||
[JLinkDriver]
|
||||
WatchCond=_ 0
|
||||
Watch0=_ 0 "0x00000000" 4294967295 "0xFFFFFFFF" 0 "0x00000000" 4294967295 "0xFFFFFFFF" 3 0 0 0
|
||||
Watch1=_ 0 "0x00000000" 4294967295 "0xFFFFFFFF" 0 "0x00000000" 4294967295 "0xFFFFFFFF" 3 0 0 0
|
||||
Watch0=_ 0 "0x00000000" 0 "0x00000000" 0 "0x00000000" 0 "0x00000000" 0 0 0 0
|
||||
Watch1=_ 0 "0x00000000" 0 "0x00000000" 0 "0x00000000" 0 "0x00000000" 0 0 0 0
|
||||
[Disassemble mode]
|
||||
mode=0
|
||||
[Breakpoints2]
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
<Windows>
|
||||
|
||||
|
||||
<Wnd0>
|
||||
<Wnd2>
|
||||
<Tabs>
|
||||
<Tab>
|
||||
<Identity>TabID-22094-17165</Identity>
|
||||
@ -42,7 +42,7 @@
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
<SelectedTab>0</SelectedTab></Wnd0><Wnd1>
|
||||
<SelectedTab>0</SelectedTab></Wnd2><Wnd3>
|
||||
<Tabs>
|
||||
<Tab>
|
||||
<Identity>TabID-15821-17283</Identity>
|
||||
@ -58,20 +58,20 @@
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
<SelectedTab>0</SelectedTab></Wnd1></Windows>
|
||||
<SelectedTab>0</SelectedTab></Wnd3></Windows>
|
||||
<Editor>
|
||||
|
||||
|
||||
|
||||
|
||||
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\app\app_serv.c</Filename><XPos>0</XPos><YPos>532</YPos><SelStart>18305</SelStart><SelEnd>18305</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\validator.c</Filename><XPos>0</XPos><YPos>338</YPos><SelStart>8384</SelStart><SelEnd>8384</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\coin.c</Filename><XPos>0</XPos><YPos>511</YPos><SelStart>11916</SelStart><SelEnd>11916</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\coin.h</Filename><XPos>0</XPos><YPos>3</YPos><SelStart>485</SelStart><SelEnd>485</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\time.c</Filename><XPos>0</XPos><YPos>55</YPos><SelStart>1532</SelStart><SelEnd>1532</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\drivers\ccnet\CCRSProtocol.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>434</SelStart><SelEnd>434</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\app\app_serv.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>360</SelStart><SelEnd>360</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\datadesc.h</Filename><XPos>0</XPos><YPos>73</YPos><SelStart>2838</SelStart><SelEnd>2838</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\datadesc.c</Filename><XPos>0</XPos><YPos>3399</YPos><SelStart>157293</SelStart><SelEnd>157293</SelEnd></Tab><ActiveTab>8</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\OS\bsp\iolpc2368.h</Filename><XPos>0</XPos><YPos>797</YPos><SelStart>17962</SelStart><SelEnd>17962</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\fram_map.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>176</SelStart><SelEnd>176</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\menu\menudesc.c</Filename><XPos>0</XPos><YPos>879</YPos><SelStart>37022</SelStart><SelEnd>37022</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\menu\menudesc.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>779</SelStart><SelEnd>779</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\OS\app\app.c</Filename><XPos>0</XPos><YPos>33</YPos><SelStart>1131</SelStart><SelEnd>1131</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\OS\bsp\bsp.c</Filename><XPos>0</XPos><YPos>278</YPos><SelStart>11612</SelStart><SelEnd>11612</SelEnd></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
|
||||
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\app\app_serv.c</Filename><XPos>0</XPos><YPos>822</YPos><SelStart>24430</SelStart><SelEnd>24430</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\validator.c</Filename><XPos>0</XPos><YPos>299</YPos><SelStart>8384</SelStart><SelEnd>8384</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\coin.c</Filename><XPos>0</XPos><YPos>599</YPos><SelStart>12815</SelStart><SelEnd>12815</SelEnd></Tab><ActiveTab>2</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\coin.h</Filename><XPos>0</XPos><YPos>9</YPos><SelStart>753</SelStart><SelEnd>753</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\time.c</Filename><XPos>0</XPos><YPos>58</YPos><SelStart>1532</SelStart><SelEnd>1532</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\drivers\ccnet\CCRSProtocol.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>434</SelStart><SelEnd>434</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\app\app_serv.h</Filename><XPos>0</XPos><YPos>39</YPos><SelStart>1299</SelStart><SelEnd>1322</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\datadesc.h</Filename><XPos>0</XPos><YPos>257</YPos><SelStart>9168</SelStart><SelEnd>9168</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\datadesc.c</Filename><XPos>0</XPos><YPos>3574</YPos><SelStart>165240</SelStart><SelEnd>165256</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\OS\bsp\iolpc2368.h</Filename><XPos>0</XPos><YPos>797</YPos><SelStart>17962</SelStart><SelEnd>17962</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\fram_map.h</Filename><XPos>0</XPos><YPos>44</YPos><SelStart>1236</SelStart><SelEnd>1236</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\menu\menudesc.c</Filename><XPos>0</XPos><YPos>1173</YPos><SelStart>47738</SelStart><SelEnd>47738</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\menu\menudesc.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>255</SelStart><SelEnd>255</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\OS\app\app.c</Filename><XPos>0</XPos><YPos>33</YPos><SelStart>1131</SelStart><SelEnd>1131</SelEnd></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
|
||||
<Positions>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<Top><Row0><Sizes><Toolbar-049429c8><key>iaridepm.enu1</key></Toolbar-049429c8></Sizes></Row0><Row1><Sizes/></Row1></Top><Left><Row0><Sizes><Wnd0><Rect><Top>-2</Top><Left>-2</Left><Bottom>517</Bottom><Right>268</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>146413</sizeHorzCX><sizeHorzCY>275862</sizeHorzCY><sizeVertCX>197657</sizeVertCX><sizeVertCY>715862</sizeVertCY></Rect></Wnd0></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>163</Bottom><Right>1368</Right><x>-2</x><y>-2</y><xscreen>1370</xscreen><yscreen>165</yscreen><sizeHorzCX>1002928</sizeHorzCX><sizeHorzCY>227586</sizeHorzCY><sizeVertCX>146413</sizeVertCX><sizeVertCY>275862</sizeVertCY></Rect></Wnd1></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
|
||||
<Top><Row0><Sizes><Toolbar-046a29c8><key>iaridepm.enu1</key></Toolbar-046a29c8></Sizes></Row0><Row1><Sizes/></Row1></Top><Left><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>461</Bottom><Right>268</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>146413</sizeHorzCX><sizeHorzCY>275862</sizeHorzCY><sizeVertCX>197657</sizeVertCX><sizeVertCY>638621</sizeVertCY></Rect></Wnd2></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>219</Bottom><Right>1368</Right><x>-2</x><y>-2</y><xscreen>1370</xscreen><yscreen>221</yscreen><sizeHorzCX>1002928</sizeHorzCX><sizeHorzCY>304828</sizeHorzCY><sizeVertCX>146413</sizeVertCX><sizeVertCY>275862</sizeVertCY></Rect></Wnd3></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
|
||||
</Desktop>
|
||||
</Workspace>
|
||||
|
||||
|
||||
9090
sk-mlpc2368.dep
9090
sk-mlpc2368.dep
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user