mirror of
https://github.com/dimoniche/changer.git
synced 2026-01-30 01:03:30 +03:00
выдача жетонов теперь правильная
This commit is contained in:
parent
e7de362b41
commit
12faf624f2
11960
Flash Central/Exe/changer0_21.hex
Normal file
11960
Flash Central/Exe/changer0_21.hex
Normal file
File diff suppressed because it is too large
Load Diff
@ -292,6 +292,10 @@ void UserAppTask(void *p_arg)
|
|||||||
// õîïïåð âêëþ÷åí è ïðèøëî âðåìÿ îñòàíîâèòü õîïïåð
|
// õîïïåð âêëþ÷åí è ïðèøëî âðåìÿ îñòàíîâèòü õîïïåð
|
||||||
FIO0CLR_bit.P0_24 = 1;
|
FIO0CLR_bit.P0_24 = 1;
|
||||||
hopperOn = 0;
|
hopperOn = 0;
|
||||||
|
|
||||||
|
// и сбросить деньги - все равно уже не выдадим - простим
|
||||||
|
SetAcceptedMoney(0);
|
||||||
|
SetAcceptedBankMoney(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
// âûäàåì ìîíåòû ïî êíîïêå?
|
// âûäàåì ìîíåòû ïî êíîïêå?
|
||||||
@ -827,6 +831,7 @@ void UserAppTask(void *p_arg)
|
|||||||
if (coin >= CountCoin)
|
if (coin >= CountCoin)
|
||||||
{
|
{
|
||||||
// âñå âûäàëè - îñòàíàâëèâàåì âûäà÷ó
|
// âñå âûäàëè - îñòàíàâëèâàåì âûäà÷ó
|
||||||
|
//OSTimeDly(10);
|
||||||
FIO0CLR_bit.P0_24 = 1;
|
FIO0CLR_bit.P0_24 = 1;
|
||||||
|
|
||||||
IncCounterCoinOut(CountCoin);
|
IncCounterCoinOut(CountCoin);
|
||||||
@ -864,8 +869,8 @@ void UserAppTask(void *p_arg)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case EVENT_KEY_F1:
|
case EVENT_KEY_F1:
|
||||||
//testMoney = 10;
|
//testMoney = 50;
|
||||||
//PostUserEvent(EVENT_COIN_INSERTED);
|
PostUserEvent(EVENT_COIN_INSERTED);
|
||||||
break;
|
break;
|
||||||
case EVENT_KEY_F2:
|
case EVENT_KEY_F2:
|
||||||
//testMoney = 50;
|
//testMoney = 50;
|
||||||
|
|||||||
@ -60,6 +60,8 @@ CPU_INT32U period_bank;
|
|||||||
CPU_INT32U period_signal;
|
CPU_INT32U period_signal;
|
||||||
CPU_INT32U period_hopper;
|
CPU_INT32U period_hopper;
|
||||||
|
|
||||||
|
CPU_INT32U firstHopperEvent = 1;
|
||||||
|
|
||||||
// ðåæèì õîïïåðà
|
// ðåæèì õîïïåðà
|
||||||
CPU_INT32U regime_hopper = 0;
|
CPU_INT32U regime_hopper = 0;
|
||||||
|
|
||||||
@ -280,35 +282,27 @@ void CoinTask(void *p_arg)
|
|||||||
{
|
{
|
||||||
OS_ENTER_CRITICAL();
|
OS_ENTER_CRITICAL();
|
||||||
if (pend_hopper_counter)
|
if (pend_hopper_counter)
|
||||||
{
|
|
||||||
// èìïóëüñû èíêðåìåíòèðóåì òîëüêî ïîñëå âûäåðæêè ïàóçû
|
|
||||||
if (OSTimeGet() - pend_hopper_timestamp > hopper_pause)
|
|
||||||
{
|
{
|
||||||
pend_hopper_counter = 0;
|
pend_hopper_counter = 0;
|
||||||
HopperImpCounter++;
|
|
||||||
}
|
if(firstHopperEvent) { HopperImpCounter = 0; firstHopperEvent = 0; }
|
||||||
|
else HopperImpCounter++;
|
||||||
}
|
}
|
||||||
OS_EXIT_CRITICAL();
|
OS_EXIT_CRITICAL();
|
||||||
|
|
||||||
if (GetHopperCount())
|
if (GetHopperCount())
|
||||||
{
|
{
|
||||||
if (last_hopper_count == GetHopperCount())
|
if (last_hopper_count < GetHopperCount())
|
||||||
{
|
|
||||||
if (labs(OSTimeGet() - last_hopper_time) > 500)
|
|
||||||
{
|
{
|
||||||
// ñîáûòèå îò õîïïåðà øëåì ïî÷òè ñðàçó - ÷òîáû óñïåòü âñå âîâðåìÿ îñòàíîâèòü
|
// ñîáûòèå îò õîïïåðà øëåì ïî÷òè ñðàçó - ÷òîáû óñïåòü âñå âîâðåìÿ îñòàíîâèòü
|
||||||
PostUserEvent(EVENT_HOPPER_EXTRACTED);
|
PostUserEvent(EVENT_HOPPER_EXTRACTED);
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
last_hopper_count = GetHopperCount();
|
last_hopper_count = GetHopperCount();
|
||||||
last_hopper_time = OSTimeGet();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
last_hopper_time = OSTimeGet();
|
last_hopper_time = OSTimeGet();
|
||||||
|
last_hopper_count = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -619,23 +613,12 @@ void InputCapture_ISR(void)
|
|||||||
// õîïïåð â ðåæèìå èìïóëüñîâ
|
// õîïïåð â ðåæèìå èìïóëüñîâ
|
||||||
if(TSTBIT(input_event, 2))
|
if(TSTBIT(input_event, 2))
|
||||||
{
|
{
|
||||||
if ((!FIO1PIN_bit.P1_23 && hopperLevel) || (FIO1PIN_bit.P1_23 && !hopperLevel))
|
if (FIO1PIN_bit.P1_23)
|
||||||
{ // ïðèøåë çàäíèé ôðîíò
|
{ // ïðèøåë çàäíèé ôðîíò
|
||||||
CPU_INT32U cr=T3CR;
|
|
||||||
cr -= period_hopper;
|
|
||||||
|
|
||||||
if (cr > (hopper_pulse - COIN_IMP_SPAN))
|
|
||||||
{
|
|
||||||
pend_hopper_counter = 1;
|
pend_hopper_counter = 1;
|
||||||
pend_hopper_timestamp = OSTimeGet();
|
pend_hopper_timestamp = OSTimeGet();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{ // ïðèøåë ïåðåäíèé ôðîíò
|
|
||||||
period_hopper = T3CR;
|
|
||||||
pend_hopper_counter = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// ñèãíàë îøèáêè õîïïåðà
|
// ñèãíàë îøèáêè õîïïåðà
|
||||||
if(TSTBIT(input_event, 3))
|
if(TSTBIT(input_event, 3))
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
#ifndef _VERSION_H_
|
#ifndef _VERSION_H_
|
||||||
#define _VERSION_H_
|
#define _VERSION_H_
|
||||||
|
|
||||||
#define DEVICE_FW_VERSION "00.20"
|
#define DEVICE_FW_VERSION "00.21"
|
||||||
|
|
||||||
|
|
||||||
#endif // #ifndef _VERSION_H_
|
#endif // #ifndef _VERSION_H_
|
||||||
File diff suppressed because one or more lines are too long
@ -9,7 +9,7 @@ TriggerName=main
|
|||||||
LimitSize=0
|
LimitSize=0
|
||||||
ByteLimit=50
|
ByteLimit=50
|
||||||
[DebugChecksum]
|
[DebugChecksum]
|
||||||
Checksum=-974017456
|
Checksum=-1413373321
|
||||||
[Exceptions]
|
[Exceptions]
|
||||||
StopOnUncaught=_ 0
|
StopOnUncaught=_ 0
|
||||||
StopOnThrow=_ 0
|
StopOnThrow=_ 0
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
9994
sk-mlpc2368.dep
9994
sk-mlpc2368.dep
File diff suppressed because it is too large
Load Diff
@ -1513,7 +1513,7 @@
|
|||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>OOCOutputFile</name>
|
<name>OOCOutputFile</name>
|
||||||
<state>changer0_20.hex</state>
|
<state>changer0_21.hex</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>OOCCommandLineProducer</name>
|
<name>OOCCommandLineProducer</name>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user