diff --git a/PROJECT/services/coin.c b/PROJECT/services/coin.c
index dd22e51..42b2d73 100644
--- a/PROJECT/services/coin.c
+++ b/PROJECT/services/coin.c
@@ -29,7 +29,7 @@ void SetCashPulseParam(CPU_INT32U pulse, CPU_INT32U pause, CPU_INT32U post)
OS_CPU_SR cpu_sr = 0;
#endif
OS_ENTER_CRITICAL();
- cash_pulse[post] = pulse * 100;
+ cash_pulse[post] = pulse * 10;
cash_pause[post] = pause;
OS_EXIT_CRITICAL();
}
@@ -40,7 +40,7 @@ void SetSignalPulseParam(CPU_INT32U pulse, CPU_INT32U post)
OS_CPU_SR cpu_sr = 0;
#endif
OS_ENTER_CRITICAL();
- signal_pulse[post] = pulse * 2000;
+ signal_pulse[post] = pulse * 200;
OS_EXIT_CRITICAL();
}
@@ -218,9 +218,11 @@ void InputCapture_ISR(void)
static CPU_INT32U period_signal[COUNT_POST + COUNT_VACUUM];
static CPU_INT32U T3CR = 0;
+ T3IR = 0xFF;
+
// наращиваем тики
T3CR++;
-
+
// пост 1
// купюроприемник 1
if (FIO1PIN_bit.P1_20)
@@ -505,7 +507,6 @@ void InputCapture_ISR(void)
if (FIO0PIN_bit.P0_10)
{
}
-
}
extern CPU_INT32U BSP_CPU_PclkFreq (CPU_INT08U pclk);
@@ -513,7 +514,7 @@ extern CPU_INT32U BSP_CPU_PclkFreq (CPU_INT08U pclk);
// инициализация импульсных входов
void InitImpInput (void)
{
- #define INPUT_CAPTURE_FREQ 100000 // частота тактирования частотных входов
+ #define INPUT_CAPTURE_FREQ 10000 // частота тактирования частотных входов
CPU_INT32U pclk_freq;
CPU_INT32U rld_cnts;
@@ -530,133 +531,133 @@ void InitImpInput (void)
// назначим все ножки
// купюроприемник 1
- PINSEL3_bit.P1_20 = 0x3;
+ PINSEL3_bit.P1_20 = 0;
PINMODE3_bit.P1_20 = 0;
FIO1DIR_bit.P1_20 = 0;
FIO1MASK_bit.P1_20 = 0;
// монетоприемник 1
- PINSEL3_bit.P1_21 = 0x3;
+ PINSEL3_bit.P1_21 = 0;
PINMODE3_bit.P1_21 = 0;
FIO1DIR_bit.P1_21 = 0;
FIO1MASK_bit.P1_21 = 0;
// сигнал печати чека пост 1
- PINSEL9_bit.P4_28 = 0x3;
+ PINSEL9_bit.P4_28 = 0;
PINMODE9_bit.P4_28 = 0;
FIO4DIR_bit.P4_28 = 0;
FIO4MASK_bit.P4_28 = 0;
// купюроприемник 2
- PINSEL3_bit.P1_19 = 0x3;
+ PINSEL3_bit.P1_19 = 0;
PINMODE3_bit.P1_19 = 0;
FIO1DIR_bit.P1_19 = 0;
FIO1MASK_bit.P1_19 = 0;
// монетоприемник 2
- PINSEL3_bit.P1_18 = 0x3;
+ PINSEL3_bit.P1_18 = 0;
PINMODE3_bit.P1_18 = 0;
FIO1DIR_bit.P1_18 = 0;
FIO1MASK_bit.P1_18 = 0;
// сигнал печати чека пост 2
- PINSEL0_bit.P0_4 = 0x3;
+ PINSEL0_bit.P0_4 = 0;
PINMODE0_bit.P0_4 = 0;
FIO0DIR_bit.P0_4 = 0;
FIO0MASK_bit.P0_4 = 0;
// купюроприемник 3
- PINSEL7_bit.P3_25 = 0x3;
+ PINSEL7_bit.P3_25 = 0;
PINMODE7_bit.P3_25 = 0;
FIO3DIR_bit.P3_25 = 0;
FIO3MASK_bit.P3_25 = 0;
// монетоприемник 3
- PINSEL7_bit.P3_26 = 0x3;
+ PINSEL7_bit.P3_26 = 0;
PINMODE7_bit.P3_26 = 0;
FIO3DIR_bit.P3_26 = 0;
FIO3MASK_bit.P3_26 = 0;
// сигнал печати чека пост 3
- PINSEL3_bit.P1_28 = 0x3;
+ PINSEL3_bit.P1_28 = 0;
PINMODE3_bit.P1_28 = 0;
FIO1DIR_bit.P1_28 = 0;
FIO1MASK_bit.P1_28 = 0;
// купюроприемник 4
- PINSEL1_bit.P0_26 = 0x3;
+ PINSEL1_bit.P0_26 = 0;
PINMODE1_bit.P0_26 = 0;
FIO0DIR_bit.P0_26 = 0;
FIO0MASK_bit.P0_26 = 0;
// монетоприемник 4
- PINSEL1_bit.P0_25 = 0x3;
+ PINSEL1_bit.P0_25 = 0;
PINMODE1_bit.P0_25 = 0;
FIO0DIR_bit.P0_25 = 0;
FIO0MASK_bit.P0_25 = 0;
// сигнал печати чека пост 4
- PINSEL3_bit.P1_27 = 0x3;
+ PINSEL3_bit.P1_27 = 0;
PINMODE3_bit.P1_27 = 0;
FIO1DIR_bit.P1_27 = 0;
FIO1MASK_bit.P1_27 = 0;
// купюроприемник 5
- PINSEL0_bit.P0_9 = 0x3;
+ PINSEL0_bit.P0_9 = 0;
PINMODE0_bit.P0_9 = 0;
FIO0DIR_bit.P0_9 = 0;
FIO0MASK_bit.P0_9 = 0;
// монетоприемник 5
- PINSEL4_bit.P2_2 = 0x3;
+ PINSEL4_bit.P2_2 = 0;
PINMODE4_bit.P2_2 = 0;
FIO2DIR_bit.P2_2 = 0;
FIO2MASK_bit.P2_2 = 0;
// сигнал печати чека пост 5
- PINSEL3_bit.P1_26 = 0x3;
+ PINSEL3_bit.P1_26 = 0;
PINMODE3_bit.P1_26 = 0;
FIO1DIR_bit.P1_26 = 0;
FIO1MASK_bit.P1_26 = 0;
// купюроприемник 6
- PINSEL0_bit.P0_7 = 0x3;
+ PINSEL0_bit.P0_7 = 0;
PINMODE0_bit.P0_7 = 0;
FIO0DIR_bit.P0_7 = 0;
FIO0MASK_bit.P0_7 = 0;
// монетоприемник 6
- PINSEL0_bit.P0_8 = 0x3;
+ PINSEL0_bit.P0_8 = 0;
PINMODE0_bit.P0_8 = 0;
FIO0DIR_bit.P0_8 = 0;
FIO0MASK_bit.P0_8 = 0;
// сигнал печати чека пост 6
- PINSEL0_bit.P0_0 = 0x3;
+ PINSEL0_bit.P0_0 = 0;
PINMODE0_bit.P0_0 = 0;
FIO0DIR_bit.P0_0 = 0;
FIO0MASK_bit.P0_0 = 0;
// монетоприемник пылесос 1
- PINSEL0_bit.P0_5 = 0x3;
+ PINSEL0_bit.P0_5 = 0;
PINMODE0_bit.P0_5 = 0;
FIO0DIR_bit.P0_5 = 0;
FIO0MASK_bit.P0_5 = 0;
// сигнал печати чека пылесос 1
- PINSEL0_bit.P0_6 = 0x3;
+ PINSEL0_bit.P0_6 = 0;
PINMODE0_bit.P0_6 = 0;
FIO0DIR_bit.P0_6 = 0;
FIO0MASK_bit.P0_6 = 0;
// монетоприемник пылесос 2
- PINSEL3_bit.P1_25 = 0x3;
+ PINSEL3_bit.P1_25 = 0;
PINMODE3_bit.P1_25 = 0;
FIO1DIR_bit.P1_25 = 0;
FIO1MASK_bit.P1_25 = 0;
// сигнал печати чека пылесос 2
- PINSEL0_bit.P0_10 = 0x3;
+ PINSEL0_bit.P0_10 = 0;
PINMODE0_bit.P0_10 = 0;
FIO0DIR_bit.P0_10 = 0;
FIO0MASK_bit.P0_10 = 0;
@@ -665,12 +666,15 @@ void InitImpInput (void)
PCLKSEL1_bit.PCLK_TIMER3 = 2;
pclk_freq = BSP_CPU_PclkFreq(23);
- rld_cnts = pclk_freq / INPUT_CAPTURE_FREQ;
+ rld_cnts = pclk_freq / INPUT_CAPTURE_FREQ / 2;
T3CTCR_bit.CTM = 0;
T3CTCR_bit.CIS = 0; // select CAP3.0 input
T3PR = rld_cnts-1;
- T3MCR = 0;
+
+ T3MR0 = 1;
+ T3MCR = 3;
+
T3CCR = 0x00;
T3EMR = 0;
T3TCR = 0x03;
diff --git a/PROJECT/services/coin.h b/PROJECT/services/coin.h
index c6bc43a..8a78278 100644
--- a/PROJECT/services/coin.h
+++ b/PROJECT/services/coin.h
@@ -1,11 +1,11 @@
#ifndef _COIN_H_
#define _COIN_H_
-#define COIN_IMP_MIN_LEN 2200 // мс/100
-#define COIN_IMP_MAX_LEN 9000 // мс/100
+#define COIN_IMP_MIN_LEN 220 // мс/10
+#define COIN_IMP_MAX_LEN 900 // мс/10
// запас измерения периода, плюс-минус
-#define COIN_IMP_SPAN 1000 // мс/100
+#define COIN_IMP_SPAN 100 // мс/10
extern void InitCoin(void);
extern CPU_INT32U GetCoinCount(int index);
diff --git a/settings/sk-mlpc2368.dni b/settings/sk-mlpc2368.dni
index 5646446..8b33404 100644
--- a/settings/sk-mlpc2368.dni
+++ b/settings/sk-mlpc2368.dni
@@ -14,7 +14,7 @@ Count=0
Enabled=0
ShowSource=1
[DebugChecksum]
-Checksum=206192145
+Checksum=753675904
[Exceptions]
StopOnUncaught=_ 0
StopOnThrow=_ 0
@@ -153,8 +153,7 @@ ActionState=1
[Disassemble mode]
mode=0
[Breakpoints2]
-Bp0=_ 1 "EMUL_CODE" "{$PROJ_DIR$\PROJECT\services\coin.c}.222.3" 0 0 1 "" 0 "" 0
-Count=1
+Count=0
[Log file]
LoggingEnabled=_ 0
LogFile=_ ""
diff --git a/settings/sk-mlpc2368.wsdt b/settings/sk-mlpc2368.wsdt
index 128a262..d6620ee 100644
--- a/settings/sk-mlpc2368.wsdt
+++ b/settings/sk-mlpc2368.wsdt
@@ -52,7 +52,7 @@
- TextEditor$WS_DIR$\PROJECT\menu\menu.h04814241424TextEditor$WS_DIR$\OS\app\app_cfg.h005858TextEditor$WS_DIR$\..\..\8\positive_6_24\OS\app\app.c02614311431TextEditor$WS_DIR$\PROJECT\app\app_serv.c017849274927TextEditor$WS_DIR$\PROJECT\services\fr.c04484484TextEditor$WS_DIR$\PROJECT\services\console.c010933323332TextEditor$WS_DIR$\OS\uc\cpu\cpu.h08545784589TextEditor$WS_DIR$\OS\uc\lib\lib_def.h011159735981TextEditor$WS_DIR$\PROJECT\data\fram_map.h039939939TextEditor$WS_DIR$\PROJECT\app\app_serv.h03115361564TextEditor$WS_DIR$\PROJECT\app\journal.h04432053205TextEditor$WS_DIR$\PROJECT\app\journal.c04211441144TextEditor$WS_DIR$\PROJECT\services\time.c012625625TextEditor$WS_DIR$\OS\app\app.c02911311131TextEditor$WS_DIR$\PROJECT\menu\menu.c020660776077TextEditor$WS_DIR$\OS\bsp\iolpc2368.h04662143604143604TextEditor$WS_DIR$\OS\bsp\bsp.c014966786678TextEditor$WS_DIR$\PROJECT\data\datadesc.c06362921629216TextEditor$WS_DIR$\PROJECT\app\control.h004949TextEditor$WS_DIR$\PROJECT\menu\menudesc.c08633624636246TextEditor$WS_DIR$\PROJECT\data\data.h07316181618TextEditor$WS_DIR$\PROJECT\data\data.c011234873487TextEditor$WS_DIR$\PROJECT\services\coin.c0722296229622TextEditor$WS_DIR$\PROJECT\services\coin.h00163163TextEditor$WS_DIR$\OS\uc\os_ii\source\os_time.c020810123101230100000010000001
+ TextEditor$WS_DIR$\PROJECT\menu\menu.h04814241424TextEditor$WS_DIR$\OS\app\app_cfg.h005858TextEditor$WS_DIR$\..\..\8\positive_6_24\OS\app\app.c02614311431TextEditor$WS_DIR$\PROJECT\services\fr.c04484484TextEditor$WS_DIR$\PROJECT\services\console.c010933323332TextEditor$WS_DIR$\OS\uc\cpu\cpu.h08545784589TextEditor$WS_DIR$\OS\uc\lib\lib_def.h011159735981TextEditor$WS_DIR$\PROJECT\data\fram_map.h039939939TextEditor$WS_DIR$\PROJECT\app\app_serv.h03115361564TextEditor$WS_DIR$\PROJECT\app\journal.h04432053205TextEditor$WS_DIR$\PROJECT\app\journal.c04211441144TextEditor$WS_DIR$\PROJECT\services\time.c012625625TextEditor$WS_DIR$\PROJECT\menu\menu.c020660776077TextEditor$WS_DIR$\OS\bsp\iolpc2368.h04749149473149473TextEditor$WS_DIR$\PROJECT\data\datadesc.c06362921629216TextEditor$WS_DIR$\PROJECT\app\control.h004949TextEditor$WS_DIR$\PROJECT\menu\menudesc.c08633624636246TextEditor$WS_DIR$\PROJECT\data\data.h07316181618TextEditor$WS_DIR$\PROJECT\data\data.c011234873487TextEditor$WS_DIR$\PROJECT\services\coin.h0018518519TextEditor$WS_DIR$\OS\uc\os_ii\source\os_time.c03823952395TextEditor$WS_DIR$\PROJECT\services\coin.c020853945394TextEditor$WS_DIR$\PROJECT\app\app_serv.c04291317913179TextEditor$WS_DIR$\OS\uc\tcpip\NIC\ETHER\LPC2368\net_nic.c07924255142551TextEditor$WS_DIR$\OS\bsp\bsp.c02481010810108TextEditor$WS_DIR$\OS\uc\os_ii\port\os_cpu_a.asm011757325732TextEditor$WS_DIR$\OS\bsp\bsp.h03021292140TextEditor$WS_DIR$\OS\app\app.c0011311131TextEditor$WS_DIR$\OS\uc\os_ii\port\os_cpu_c.c023299829982TextEditor$WS_DIR$\OS\uc\os_ii\source\os_core.c0136356947569470100000010000001