mirror of
https://github.com/dimoniche/solarium.git
synced 2026-01-29 17:33:32 +03:00
Версия 3.48
Нужна небольшая доработка для прошивки solarium_3_45.hex: на платах, которые давно в использовании, иногда выгорает нога контроллера MK_P9. P0.23 MK_P9 IMPULSE OUTPUT (импульсный выход монетоприемника) И надо в программе MK_P9 заменить на P0.25 MK_P7 А мы на плате замкнем эти 2 ноги, одна из которых итак не работает.
This commit is contained in:
parent
067e029937
commit
83c3ed98fa
Binary file not shown.
@ -85,20 +85,27 @@ void UserAppTask(void *p_arg)
|
|||||||
static CPU_INT32U time_last_insert_coin = 0;
|
static CPU_INT32U time_last_insert_coin = 0;
|
||||||
|
|
||||||
{
|
{
|
||||||
CPU_INT32U m=0;
|
EnabledChannelsNum = 0;
|
||||||
GetData(&AcceptedMoneyDesc, &m, 0, DATA_FLAG_SYSTEM_INDEX);
|
for (CPU_INT08U i=0; i<CHANNELS_NUM; i++)
|
||||||
if (m)
|
{
|
||||||
{
|
CPU_INT32U en = 0;
|
||||||
EnabledChannelsNum = 0;
|
GetData(&EnableChannelDesc, &en, i, DATA_FLAG_DIRECT_INDEX);
|
||||||
for (CPU_INT08U i=0; i<CHANNELS_NUM; i++)
|
if (en) {EnabledChannelsNum++;}
|
||||||
{
|
}
|
||||||
CPU_INT32U en = 0;
|
|
||||||
GetData(&EnableChannelDesc, &en, i, DATA_FLAG_DIRECT_INDEX);
|
if(EnabledChannelsNum == 1)
|
||||||
if (en) {EnabledChannelsNum++;}
|
{
|
||||||
}
|
UserMenuState = USER_STATE_ACCEPT_MONEY;
|
||||||
UserMenuState = USER_STATE_ACCEPT_MONEY;
|
CoinEnable();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
CPU_INT32U m=0;
|
||||||
|
GetData(&AcceptedMoneyDesc, &m, 0, DATA_FLAG_SYSTEM_INDEX);
|
||||||
|
if (m)
|
||||||
|
{
|
||||||
|
UserMenuState = USER_STATE_ACCEPT_MONEY;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
incassation = 0;
|
incassation = 0;
|
||||||
@ -400,8 +407,19 @@ void UserAppTask(void *p_arg)
|
|||||||
case EVENT_KEY_STOP:
|
case EVENT_KEY_STOP:
|
||||||
if ((GetMode() != MODE_WORK) || (incassation)) break;
|
if ((GetMode() != MODE_WORK) || (incassation)) break;
|
||||||
if (TstCriticalErrors()) {UserPrintErrorMenu(); RefreshMenu(); break;}
|
if (TstCriticalErrors()) {UserPrintErrorMenu(); RefreshMenu(); break;}
|
||||||
UserMenuState = USER_STATE_FIRST_PAGE;
|
|
||||||
UserPrintFirstMenu(RecentChannel);
|
if ((EnabledChannelsNum == 1) && (!IsChannelOn(RecentChannel)))
|
||||||
|
{
|
||||||
|
UserMenuState = USER_STATE_ACCEPT_MONEY;
|
||||||
|
UserPrintMoneyMenu();
|
||||||
|
CoinEnable();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
UserMenuState = USER_STATE_FIRST_PAGE;
|
||||||
|
UserPrintFirstMenu(RecentChannel);
|
||||||
|
}
|
||||||
|
|
||||||
RefreshMenu();
|
RefreshMenu();
|
||||||
if (IsValidatorConnected()) CC_CmdBillType(0x000000, 0x000000, ADDR_FL);
|
if (IsValidatorConnected()) CC_CmdBillType(0x000000, 0x000000, ADDR_FL);
|
||||||
break;
|
break;
|
||||||
@ -430,12 +448,12 @@ void UserAppTask(void *p_arg)
|
|||||||
UserPrintThanksMenu();
|
UserPrintThanksMenu();
|
||||||
RefreshMenu();
|
RefreshMenu();
|
||||||
UserMenuState = USER_STATE_SHOW_THANKS;
|
UserMenuState = USER_STATE_SHOW_THANKS;
|
||||||
|
ThanksCtr = 3;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
UserMenuState = USER_STATE_FIRST_PAGE;
|
UserMenuState = USER_STATE_FIRST_PAGE;
|
||||||
}
|
}
|
||||||
ThanksCtr = 3;
|
|
||||||
LED_off();
|
LED_off();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -507,8 +525,8 @@ void UserAppTask(void *p_arg)
|
|||||||
// íàõîäèìñÿ â ðàáî÷åì ðåæèìå
|
// íàõîäèìñÿ â ðàáî÷åì ðåæèìå
|
||||||
// --------------------------
|
// --------------------------
|
||||||
|
|
||||||
if (EnabledChannelsNum == 0) break;
|
if (EnabledChannelsNum == 0) break;
|
||||||
|
|
||||||
if (UserMenuState == USER_STATE_FIRST_PAGE)
|
if (UserMenuState == USER_STATE_FIRST_PAGE)
|
||||||
{ // ïîëüçîâàòåëü âûáðàë êàíàë è íàæàë ÑÒÀÐÒ
|
{ // ïîëüçîâàòåëü âûáðàë êàíàë è íàæàë ÑÒÀÐÒ
|
||||||
if (IsChannelOn(RecentChannel)) break;
|
if (IsChannelOn(RecentChannel)) break;
|
||||||
@ -521,6 +539,8 @@ void UserAppTask(void *p_arg)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
FPost();
|
FPost();
|
||||||
|
if (EnabledChannelsNum == 1) break;
|
||||||
|
|
||||||
UserMenuState = USER_STATE_ACCEPT_MONEY;
|
UserMenuState = USER_STATE_ACCEPT_MONEY;
|
||||||
UserPrintMoneyMenu();
|
UserPrintMoneyMenu();
|
||||||
RefreshMenu();
|
RefreshMenu();
|
||||||
@ -612,26 +632,21 @@ void UserAppTask(void *p_arg)
|
|||||||
UserPrintThanksMenu();
|
UserPrintThanksMenu();
|
||||||
RefreshMenu();
|
RefreshMenu();
|
||||||
UserMenuState = USER_STATE_SHOW_THANKS;
|
UserMenuState = USER_STATE_SHOW_THANKS;
|
||||||
|
ThanksCtr = 5;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
UserMenuState = USER_STATE_FIRST_PAGE;
|
UserMenuState = USER_STATE_FIRST_PAGE;
|
||||||
}
|
}
|
||||||
ThanksCtr = 5;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{ // äåíåã íåäîñòàòî÷íî äëÿ ðàáîòû
|
{ // äåíåã íåäîñòàòî÷íî äëÿ ðàáîòû
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -767,7 +782,42 @@ void UserPrintMoneyMenu(void)
|
|||||||
{
|
{
|
||||||
char buf[32];
|
char buf[32];
|
||||||
CPU_INT32U accmoney;
|
CPU_INT32U accmoney;
|
||||||
|
|
||||||
|
if (EnabledChannelsNum == 1)
|
||||||
|
{
|
||||||
|
CPU_INT32U price=1, pricetime=0, time=0;
|
||||||
|
|
||||||
|
GetRecentChannelPrice(RecentChannel, &price, &pricetime);
|
||||||
|
sprintf(buf, "ÖÅÍÀ %dðóá./%dìèí.", price, pricetime);
|
||||||
|
PrintUserMenuStr(buf, 0);
|
||||||
|
|
||||||
|
accmoney = GetAcceptedMoney() + GetAcceptedBankMoney();
|
||||||
|
sprintf(buf, "ÏÐÈÍßÒÎ %d ðóá.", accmoney);
|
||||||
|
PrintUserMenuStr(buf, 1);
|
||||||
|
|
||||||
|
time = (pricetime*accmoney*60)/price;
|
||||||
|
sprintf(buf, "ÎÏËÀ×ÅÍÎ %d:%02d", time/60, time%60);
|
||||||
|
PrintUserMenuStr(buf, 2);
|
||||||
|
|
||||||
|
CPU_INT32U mintime=0, maxtime=0;
|
||||||
|
GetData(&MinWorkTimeDesc, &mintime, RecentChannel, DATA_FLAG_DIRECT_INDEX);
|
||||||
|
GetData(&MaxWorkTimeDesc, &maxtime, RecentChannel, DATA_FLAG_DIRECT_INDEX);
|
||||||
|
|
||||||
|
if (time >= mintime*60)
|
||||||
|
{
|
||||||
|
LED_on();
|
||||||
|
sprintf(buf, "ÍÀÆÌÈÒÅ CTAPT");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
LED_off();
|
||||||
|
sprintf(buf, "ÂÍÅÑÈÒÅ ÄÅÍbÃÈ");
|
||||||
|
}
|
||||||
|
|
||||||
|
PrintUserMenuStr(buf, 3);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
sprintf(buf, "Âíåñèòå äåíüãè");
|
sprintf(buf, "Âíåñèòå äåíüãè");
|
||||||
PrintUserMenuStr(buf, 0);
|
PrintUserMenuStr(buf, 0);
|
||||||
accmoney = GetAcceptedMoney() + GetAcceptedBankMoney();
|
accmoney = GetAcceptedMoney() + GetAcceptedBankMoney();
|
||||||
@ -1024,12 +1074,17 @@ void WorkServer(void)
|
|||||||
{ // çàêîí÷èëè ïàóçó
|
{ // çàêîí÷èëè ïàóçó
|
||||||
ChannelsState[i] = CHANNEL_STATE_EMPTY;
|
ChannelsState[i] = CHANNEL_STATE_EMPTY;
|
||||||
ChannelsPayedTime[i] = 0;
|
ChannelsPayedTime[i] = 0;
|
||||||
|
|
||||||
|
if (EnabledChannelsNum == 1)
|
||||||
|
{
|
||||||
|
UserMenuState = USER_STATE_ACCEPT_MONEY;
|
||||||
|
UserPrintMoneyMenu();
|
||||||
|
CoinEnable();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
#ifndef _VERSION_H_
|
#ifndef _VERSION_H_
|
||||||
#define _VERSION_H_
|
#define _VERSION_H_
|
||||||
|
|
||||||
#define DEVICE_FW_VERSION "03.45"
|
#define DEVICE_FW_VERSION "03.48"
|
||||||
|
|
||||||
|
|
||||||
#endif // #ifndef _VERSION_H_
|
#endif // #ifndef _VERSION_H_
|
||||||
File diff suppressed because one or more lines are too long
1246
solarium.dep
1246
solarium.dep
File diff suppressed because it is too large
Load Diff
@ -650,7 +650,7 @@
|
|||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>OOCOutputFile</name>
|
<name>OOCOutputFile</name>
|
||||||
<state>solarium_3_45.hex</state>
|
<state>solarium_3_48.hex</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>OOCCommandLineProducer</name>
|
<name>OOCCommandLineProducer</name>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user