инициализация портов

This commit is contained in:
dimoniche 2019-06-03 00:28:33 +03:00
parent 437ebc4bad
commit c6472e9efc
9 changed files with 487 additions and 53 deletions

View File

@ -425,6 +425,50 @@ void UserAppTask(void *p_arg)
}
break;
case EVENT_CASH_PRINT_CHECK_POST1:
case EVENT_CASH_PRINT_CHECK_POST2:
case EVENT_CASH_PRINT_CHECK_POST3:
case EVENT_CASH_PRINT_CHECK_POST4:
case EVENT_CASH_PRINT_CHECK_POST5:
case EVENT_CASH_PRINT_CHECK_POST6:
case EVENT_CASH_PRINT_CHECK_VACUUM1:
case EVENT_CASH_PRINT_CHECK_VACUUM2:
{
int number_post = event - EVENT_CASH_PRINT_CHECK_POST1;
// çäåñü ñîáûòèå ñòàðòà ïå÷àòè ÷åêà - âêëþ÷èëè íàñîñ èëè ïûëåñîñ
CPU_INT32U accmoney = GetAcceptedMoney(number_post);
if (accmoney > 0)
{
UserPrintPrintBillMenu(number_post);
RefreshMenu();
// íàïå÷àòàåì ÷åê
if (IsFiscalConnected())
{
if (PrintFiscalBill(accmoney) == 0) // çäåñü äîáàâèòü ñ êàêîãî ïîñòà ÷åê
{
SaveEventRecord(RecentChannel, JOURNAL_EVENT_PRINT_BILL, GetTimeSec());
}
}
//IncCounter(RecentChannel, ChannelsPayedTime[RecentChannel], accmoney);
SetAcceptedMoney(0, number_post);
OSTimeDly(1000);
// ïîâåñèì ìåíþ "ÑÏÀÑÈÁÎ"
if (IsFiscalConnected())
{
UserPrintThanksMenu(number_post);
RefreshMenu();
}
OSTimeDly(1000);
LED_OK_OFF();
}
}
break;
case EVENT_KEY_F1:
PostUserEvent(EVENT_CASH_INSERTED_POST1);
break;
@ -553,10 +597,10 @@ void UserPrintMoneyMenu(int post)
sprintf(buf, "Ïðèíÿòî %d ðóá.", accmoney);
PrintUserMenuStr(buf, 2);
if(post <= COUNT_POST)
if(post < COUNT_POST)
sprintf(buf, " Ïîñò %d", post + 1);
else
sprintf(buf, " ");
sprintf(buf, "Ïûëåñîñ %d", post + 1 - COUNT_POST);
PrintUserMenuStr(buf, 3);
}
@ -617,7 +661,12 @@ void UserPrintPrintBillMenu(int post)
PrintUserMenuStr(buf, 1);
sprintf(buf, " ÷åêà");
PrintUserMenuStr(buf, 2);
sprintf(buf, " Ïîñò %d", post + 1);
if(post < COUNT_POST)
sprintf(buf, " Ïîñò %d", post + 1);
else
sprintf(buf, "Ïûëåñîñ %d", post + 1 - COUNT_POST);
PrintUserMenuStr(buf, 3);
}
@ -630,7 +679,12 @@ void UserPrintThanksMenu(int post)
PrintUserMenuStr(buf, 1);
sprintf(buf, " ");
PrintUserMenuStr(buf, 2);
sprintf(buf, " Ïîñò %d", post + 1);
if(post < COUNT_POST)
sprintf(buf, " Ïîñò %d", post + 1);
else
sprintf(buf, "Ïûëåñîñ %d", post + 1 - COUNT_POST);
PrintUserMenuStr(buf, 3);
}
@ -659,7 +713,7 @@ void LoadAcceptedMoney(void)
{
CPU_INT32U m,crc,crct;
for(int i = 0; i < COUNT_POST; i++)
for(int i = 0; i < COUNT_POST + COUNT_VACUUM; i++)
{
// ñ÷èòàåì cîõðàíåííûå äåíüãè èç FRAM
GetData(&AcceptedMoneyDesc, &m, i, DATA_FLAG_DIRECT_INDEX);

View File

@ -43,6 +43,8 @@ enum{
EVENT_COIN_INSERTED_POST4,
EVENT_COIN_INSERTED_POST5,
EVENT_COIN_INSERTED_POST6,
EVENT_COIN_INSERTED_VACUUM1,
EVENT_COIN_INSERTED_VACUUM2,
EVENT_CASH_INSERTED_POST1,
EVENT_CASH_INSERTED_POST2,
@ -50,7 +52,17 @@ enum{
EVENT_CASH_INSERTED_POST4,
EVENT_CASH_INSERTED_POST5,
EVENT_CASH_INSERTED_POST6,
EVENT_CASH_PRINT_CHECK_POST1,
EVENT_CASH_PRINT_CHECK_POST2,
EVENT_CASH_PRINT_CHECK_POST3,
EVENT_CASH_PRINT_CHECK_POST4,
EVENT_CASH_PRINT_CHECK_POST5,
EVENT_CASH_PRINT_CHECK_POST6,
EVENT_CASH_PRINT_CHECK_VACUUM1,
EVENT_CASH_PRINT_CHECK_VACUUM2,
EVENT_BILL_ESCROW,
EVENT_BILL_STACKED,

View File

@ -2595,7 +2595,7 @@ TDataDescStruct const AcceptedMoneyDesc = {
DATA_TYPE_ULONG, // тип параметра
DATA_LOC_FRAM, // расположение параметра
DATA_IS_ARRAY, // признак массива
COUNT_POST, // ðàçìåð ìàññèâà
COUNT_POST + COUNT_VACUUM,// ðàçìåð ìàññèâà
NULL, // указатель на десриптор индекса массива
(void*)offsetof(TFramMap, FRAM_AcceptedMoney), // указатель на переменную или адрес FRAM
NULL, // указатель на границы параметра
@ -2616,7 +2616,7 @@ TDataDescStruct const AcceptedMoneyCRC16Desc = {
DATA_TYPE_ULONG, // тип параметра
DATA_LOC_FRAM, // расположение параметра
DATA_IS_ARRAY, // признак массива
COUNT_POST, // ðàçìåð ìàññèâà
COUNT_POST+COUNT_VACUUM, // ðàçìåð ìàññèâà
NULL, // указатель на десриптор индекса массива
(void*)offsetof(TFramMap, crc_AcceptedMoney), // указатель на переменную или адрес FRAM
NULL, // указатель на границы параметра

View File

@ -10,6 +10,8 @@
// 6 ïîñòîâ ìîéêè - 6 êóïþðîïðèåìíèêîâ è 6 ìîíåòîïðèåìíèêîâ
#define COUNT_POST 6
// ïëþñ äâà ïûëåñîñà
#define COUNT_VACUUM 2
#define DEFAULT_PASSWORD 1111
#define MASTER_PASSWORD 11300045//1234567890L

View File

@ -20,8 +20,8 @@ typedef struct
// äëèííûå ñ÷åò÷èêè ñ CRC16
TCountersLong CountersLong;
CPU_INT32U FRAM_AcceptedMoney[COUNT_POST];
CPU_INT32U crc_AcceptedMoney[COUNT_POST];
CPU_INT32U FRAM_AcceptedMoney[COUNT_POST + COUNT_VACUUM];
CPU_INT32U crc_AcceptedMoney[COUNT_POST + COUNT_VACUUM];
// æóðíàë ñîáûòèé+îøèáîê
TEventRecord EventRecords[EVENT_RECORDS_COUNT];

View File

@ -177,8 +177,8 @@ const TMenuLine line_ServiceMenu_4 = {
(void*)&ReportMenuPanel // ïàíåëü äëÿ ïåðåõîäà
};
const TMenuLineArray arr_ServiceMenuArray[] = {&line_ServiceMenu_0, &line_ServiceMenu_1, &line_ServiceMenu_2, &line_ServiceMenu_3, &line_ServiceMenu_4, NULL};
const TMenuPanel ServiceMenuPanel[] = {arr_ServiceMenuArray, NULL, 5, MENU_PANEL_STANDARD};
const TMenuLineArray arr_ServiceMenuArray[] = {&line_ServiceMenu_0, &line_ServiceMenu_1, /*&line_ServiceMenu_2,*/ &line_ServiceMenu_3, &line_ServiceMenu_4, NULL};
const TMenuPanel ServiceMenuPanel[] = {arr_ServiceMenuArray, NULL, 4, MENU_PANEL_STANDARD};
/***********************************

View File

@ -11,7 +11,7 @@ OS_STK CoinTaskStk[COIN_TASK_STK_SIZE];
void InitImpInput(void);
CPU_INT32U CoinImpCounter[COUNT_POST];
CPU_INT32U CoinImpCounter[COUNT_POST + COUNT_VACUUM];
CPU_INT32U CashImpCounter[COUNT_POST];
static CPU_INT32U cash_pulse = 5000;
@ -42,7 +42,7 @@ void CoinTask(void *p_arg)
while(1)
{
for(int i = 0; i < COUNT_POST; i++)
for(int i = 0; i < COUNT_POST + COUNT_VACUUM; i++)
{
if (OSTimeGet() - last_settings_time > 1000)
{
@ -68,6 +68,7 @@ void CoinTask(void *p_arg)
}
if (!cash_enable) {GetResetCashCount(i); continue;}
if(i >= COUNT_POST) continue;
#if OS_CRITICAL_METHOD == 3
OS_CPU_SR cpu_sr = 0;
@ -192,52 +193,289 @@ void InitCoin(void)
void InputCapture_ISR(void)
{
static CPU_INT32U period = 0;
static CPU_INT32U period_cash = 0;
static CPU_INT32U period[COUNT_POST + 2];
static CPU_INT32U period_cash[COUNT_POST];
static CPU_INT32U T3CR = 0;
// íàðàùèâàåì òèêè
T3CR++;
if (FIO0PIN_bit.P0_23)
{ // ïðèøåë çàäíèé ôðîíò
if (((T3CR-period) > COIN_IMP_MIN_LEN)
&& ((T3CR-period) < COIN_IMP_MAX_LEN))
{
//CoinImpCounter++;
}
}
else
{ // ïðèøåë ïåðåäíèé ôðîíò
period = T3CR;
}
if (FIO0PIN_bit.P0_24)
// ïîñò 1
// êóïşğîïğèåìíèê 1
if (FIO1PIN_bit.P1_20)
{ // ïðèøåë çàäíèé ôðîíò
CPU_INT32U cr=T3CR;
cr -= period_cash;
cr -= period_cash[0];
if ((cr > (cash_pulse - COIN_IMP_SPAN))
&& (cr < (cash_pulse + COIN_IMP_SPAN)))
{
//pend_cash_counter = 1;
//pend_cash_timestamp = OSTimeGet();
pend_cash_counter[0] = 1;
pend_cash_timestamp[0] = OSTimeGet();
}
}
else
{ // ïðèøåë ïåðåäíèé ôðîíò
period_cash = T3CR;
//pend_cash_counter = 0;
period_cash[0] = T3CR;
pend_cash_counter[0] = 0;
}
}
// ìîíåòîïğèåìíèê 1
if (FIO1PIN_bit.P1_21)
{ // ïğèøåë çàäíèé ôğîíò
if (((T3CR-period[0]) > COIN_IMP_MIN_LEN)
&& ((T3CR-period[0]) < COIN_IMP_MAX_LEN))
{
CoinImpCounter[0]++;
}
}
else
{ // ïğèøåë ïåğåäíèé ôğîíò
period[0] = T3CR;
}
// ñèãíàë ïå÷àòè ÷åêà 1
if (FIO4PIN_bit.P4_28)
{
}
// ïîñò 2
// êóïşğîïğèåìíèê 2
if (FIO1PIN_bit.P1_19)
{ // ïğèøåë çàäíèé ôğîíò
CPU_INT32U cr=T3CR;
cr -= period_cash[1];
if ((cr > (cash_pulse - COIN_IMP_SPAN))
&& (cr < (cash_pulse + COIN_IMP_SPAN)))
{
pend_cash_counter[1] = 1;
pend_cash_timestamp[1] = OSTimeGet();
}
}
else
{ // ïğèøåë ïåğåäíèé ôğîíò
period_cash[1] = T3CR;
pend_cash_counter[1] = 0;
}
// ìîíåòîïğèåìíèê 2
if (FIO1PIN_bit.P1_18)
{ // ïğèøåë çàäíèé ôğîíò
if (((T3CR-period[1]) > COIN_IMP_MIN_LEN)
&& ((T3CR-period[1]) < COIN_IMP_MAX_LEN))
{
CoinImpCounter[1]++;
}
}
else
{ // ïğèøåë ïåğåäíèé ôğîíò
period[1] = T3CR;
}
// ñèãíàë ïå÷àòè ÷åêà 2
if (FIO0PIN_bit.P0_4)
{
}
// ïîñò 3
// êóïşğîïğèåìíèê 3
if (FIO3PIN_bit.P3_25)
{ // ïğèøåë çàäíèé ôğîíò
CPU_INT32U cr=T3CR;
cr -= period_cash[2];
if ((cr > (cash_pulse - COIN_IMP_SPAN))
&& (cr < (cash_pulse + COIN_IMP_SPAN)))
{
pend_cash_counter[2] = 1;
pend_cash_timestamp[2] = OSTimeGet();
}
}
else
{ // ïğèøåë ïåğåäíèé ôğîíò
period_cash[2] = T3CR;
pend_cash_counter[2] = 0;
}
// ìîíåòîïğèåìíèê 3
if (FIO3PIN_bit.P3_26)
{ // ïğèøåë çàäíèé ôğîíò
if (((T3CR-period[2]) > COIN_IMP_MIN_LEN)
&& ((T3CR-period[2]) < COIN_IMP_MAX_LEN))
{
CoinImpCounter[2]++;
}
}
else
{ // ïğèøåë ïåğåäíèé ôğîíò
period[2] = T3CR;
}
// ñèãíàë ïå÷àòè ÷åêà 3
if (FIO1PIN_bit.P1_28)
{
}
// ïîñò 4
// êóïşğîïğèåìíèê 4
if (FIO0PIN_bit.P0_26)
{ // ïğèøåë çàäíèé ôğîíò
CPU_INT32U cr=T3CR;
cr -= period_cash[3];
if ((cr > (cash_pulse - COIN_IMP_SPAN))
&& (cr < (cash_pulse + COIN_IMP_SPAN)))
{
pend_cash_counter[3] = 1;
pend_cash_timestamp[3] = OSTimeGet();
}
}
else
{ // ïğèøåë ïåğåäíèé ôğîíò
period_cash[3] = T3CR;
pend_cash_counter[3] = 0;
}
// ìîíåòîïğèåìíèê 4
if (FIO0PIN_bit.P0_25)
{ // ïğèøåë çàäíèé ôğîíò
if (((T3CR-period[3]) > COIN_IMP_MIN_LEN)
&& ((T3CR-period[3]) < COIN_IMP_MAX_LEN))
{
CoinImpCounter[3]++;
}
}
else
{ // ïğèøåë ïåğåäíèé ôğîíò
period[3] = T3CR;
}
// ñèãíàë ïå÷àòè ÷åêà 4
if (FIO1PIN_bit.P1_27)
{
}
// ïîñò 5
// êóïşğîïğèåìíèê 5
if (FIO0PIN_bit.P0_9)
{ // ïğèøåë çàäíèé ôğîíò
CPU_INT32U cr=T3CR;
cr -= period_cash[4];
if ((cr > (cash_pulse - COIN_IMP_SPAN))
&& (cr < (cash_pulse + COIN_IMP_SPAN)))
{
pend_cash_counter[4] = 1;
pend_cash_timestamp[4] = OSTimeGet();
}
}
else
{ // ïğèøåë ïåğåäíèé ôğîíò
period_cash[4] = T3CR;
pend_cash_counter[4] = 0;
}
// ìîíåòîïğèåìíèê 5
if (FIO2PIN_bit.P2_2)
{ // ïğèøåë çàäíèé ôğîíò
if (((T3CR-period[4]) > COIN_IMP_MIN_LEN)
&& ((T3CR-period[4]) < COIN_IMP_MAX_LEN))
{
CoinImpCounter[4]++;
}
}
else
{ // ïğèøåë ïåğåäíèé ôğîíò
period[4] = T3CR;
}
// ñèãíàë ïå÷àòè ÷åêà 5
if (FIO1PIN_bit.P1_26)
{
}
// ïîñò 6
// êóïşğîïğèåìíèê 6
if (FIO0PIN_bit.P0_7)
{ // ïğèøåë çàäíèé ôğîíò
CPU_INT32U cr=T3CR;
cr -= period_cash[5];
if ((cr > (cash_pulse - COIN_IMP_SPAN))
&& (cr < (cash_pulse + COIN_IMP_SPAN)))
{
pend_cash_counter[5] = 1;
pend_cash_timestamp[5] = OSTimeGet();
}
}
else
{ // ïğèøåë ïåğåäíèé ôğîíò
period_cash[5] = T3CR;
pend_cash_counter[5] = 0;
}
// ìîíåòîïğèåìíèê 6
if (FIO0PIN_bit.P0_8)
{ // ïğèøåë çàäíèé ôğîíò
if (((T3CR-period[5]) > COIN_IMP_MIN_LEN)
&& ((T3CR-period[5]) < COIN_IMP_MAX_LEN))
{
CoinImpCounter[5]++;
}
}
else
{ // ïğèøåë ïåğåäíèé ôğîíò
period[5] = T3CR;
}
// ñèãíàë ïå÷àòè ÷åêà 5
if (FIO0PIN_bit.P0_0)
{
}
// ìîíåòîïğèåìíèê ïûëåñîñ 1
if (FIO0PIN_bit.P0_5)
{ // ïğèøåë çàäíèé ôğîíò
if (((T3CR-period[6]) > COIN_IMP_MIN_LEN)
&& ((T3CR-period[6]) < COIN_IMP_MAX_LEN))
{
CoinImpCounter[6]++;
}
}
else
{ // ïğèøåë ïåğåäíèé ôğîíò
period[6] = T3CR;
}
// ñèãíàë ïå÷àòè ÷åêà ïûëåñîñ 1
if (FIO0PIN_bit.P0_6)
{
}
// ìîíåòîïğèåìíèê ïûëåñîñ 2
if (FIO1PIN_bit.P1_25)
{ // ïğèøåë çàäíèé ôğîíò
if (((T3CR-period[7]) > COIN_IMP_MIN_LEN)
&& ((T3CR-period[7]) < COIN_IMP_MAX_LEN))
{
CoinImpCounter[7]++;
}
}
else
{ // ïğèøåë ïåğåäíèé ôğîíò
period[7] = T3CR;
}
// ñèãíàë ïå÷àòè ÷åêà ïûëåñîñ 2
if (FIO0PIN_bit.P0_10)
{
}
}
extern CPU_INT32U BSP_CPU_PclkFreq (CPU_INT08U pclk);
/*
P0.23 MK_P9 IMPULSE OUTPUT (èìïóëüñíûé âûõîä ìîíåòîïðèåìíèêà)
P0.24 MK_P8 INHIBIT (áëîêèðîâêà)
*/
// èíèöèàëèçàöèÿ èìïóëüñíûõ âõîäîâ
void InitImpInput (void)
{
@ -256,17 +494,141 @@ void InitImpInput (void)
PCONP_bit.PCTIM3 = 1;
PCLKSEL1_bit.PCLK_TIMER3 = 2;
PINSEL1_bit.P0_23 = 0x3;
PINMODE1_bit.P0_23 = 0;
FIO0DIR_bit.P0_23 = 0;
FIO0MASK_bit.P0_23 = 0;
PINSEL1_bit.P0_24 = 0x3;
PINMODE1_bit.P0_24 = 0;
FIO0DIR_bit.P0_24 = 0;
FIO0MASK_bit.P0_24 = 0;
// íàçíà÷èì âñå íîæêè
// êóïşğîïğèåìíèê 1
PINSEL3_bit.P1_20 = 0x3;
PINMODE3_bit.P1_20 = 0;
FIO1DIR_bit.P1_20 = 0;
FIO1MASK_bit.P1_20 = 0;
// ìîíåòîïğèåìíèê 1
PINSEL3_bit.P1_21 = 0x3;
PINMODE3_bit.P1_21 = 0;
FIO1DIR_bit.P1_21 = 0;
FIO1MASK_bit.P1_21 = 0;
// ñèãíàë ïå÷àòè ÷åêà ïîñò 1
PINSEL9_bit.P4_28 = 0x3;
PINMODE9_bit.P4_28 = 0;
FIO4DIR_bit.P4_28 = 0;
FIO4MASK_bit.P4_28 = 0;
// êóïşğîïğèåìíèê 2
PINSEL3_bit.P1_19 = 0x3;
PINMODE3_bit.P1_19 = 0;
FIO1DIR_bit.P1_19 = 0;
FIO1MASK_bit.P1_19 = 0;
// ìîíåòîïğèåìíèê 2
PINSEL3_bit.P1_18 = 0x3;
PINMODE3_bit.P1_18 = 0;
FIO1DIR_bit.P1_18 = 0;
FIO1MASK_bit.P1_18 = 0;
// ñèãíàë ïå÷àòè ÷åêà ïîñò 2
PINSEL0_bit.P0_4 = 0x3;
PINMODE0_bit.P0_4 = 0;
FIO0DIR_bit.P0_4 = 0;
FIO0MASK_bit.P0_4 = 0;
// êóïşğîïğèåìíèê 3
PINSEL7_bit.P3_25 = 0x3;
PINMODE7_bit.P3_25 = 0;
FIO3DIR_bit.P3_25 = 0;
FIO3MASK_bit.P3_25 = 0;
// ìîíåòîïğèåìíèê 3
PINSEL7_bit.P3_26 = 0x3;
PINMODE7_bit.P3_26 = 0;
FIO3DIR_bit.P3_26 = 0;
FIO3MASK_bit.P3_26 = 0;
// ñèãíàë ïå÷àòè ÷åêà ïîñò 3
PINSEL3_bit.P1_28 = 0x3;
PINMODE3_bit.P1_28 = 0;
FIO1DIR_bit.P1_28 = 0;
FIO1MASK_bit.P1_28 = 0;
// êóïşğîïğèåìíèê 4
PINSEL1_bit.P0_26 = 0x3;
PINMODE1_bit.P0_26 = 0;
FIO0DIR_bit.P0_26 = 0;
FIO0MASK_bit.P0_26 = 0;
// ìîíåòîïğèåìíèê 4
PINSEL1_bit.P0_25 = 0x3;
PINMODE1_bit.P0_25 = 0;
FIO0DIR_bit.P0_25 = 0;
FIO0MASK_bit.P0_25 = 0;
// ñèãíàë ïå÷àòè ÷åêà ïîñò 4
PINSEL3_bit.P1_27 = 0x3;
PINMODE3_bit.P1_27 = 0;
FIO1DIR_bit.P1_27 = 0;
FIO1MASK_bit.P1_27 = 0;
// êóïşğîïğèåìíèê 5
PINSEL0_bit.P0_9 = 0x3;
PINMODE0_bit.P0_9 = 0;
FIO0DIR_bit.P0_9 = 0;
FIO0MASK_bit.P0_9 = 0;
// ìîíåòîïğèåìíèê 5
PINSEL4_bit.P2_2 = 0x3;
PINMODE4_bit.P2_2 = 0;
FIO2DIR_bit.P2_2 = 0;
FIO2MASK_bit.P2_2 = 0;
// ñèãíàë ïå÷àòè ÷åêà ïîñò 5
PINSEL3_bit.P1_26 = 0x3;
PINMODE3_bit.P1_26 = 0;
FIO1DIR_bit.P1_26 = 0;
FIO1MASK_bit.P1_26 = 0;
// êóïşğîïğèåìíèê 6
PINSEL0_bit.P0_7 = 0x3;
PINMODE0_bit.P0_7 = 0;
FIO0DIR_bit.P0_7 = 0;
FIO0MASK_bit.P0_7 = 0;
// ìîíåòîïğèåìíèê 6
PINSEL0_bit.P0_8 = 0x3;
PINMODE0_bit.P0_8 = 0;
FIO0DIR_bit.P0_8 = 0;
FIO0MASK_bit.P0_8 = 0;
// ñèãíàë ïå÷àòè ÷åêà ïîñò 6
PINSEL0_bit.P0_0 = 0x3;
PINMODE0_bit.P0_0 = 0;
FIO0DIR_bit.P0_0 = 0;
FIO0MASK_bit.P0_0 = 0;
// ìîíåòîïğèåìíèê ïûëåñîñ 1
PINSEL0_bit.P0_5 = 0x3;
PINMODE0_bit.P0_5 = 0;
FIO0DIR_bit.P0_5 = 0;
FIO0MASK_bit.P0_5 = 0;
// ñèãíàë ïå÷àòè ÷åêà ïûëåñîñ 1
PINSEL0_bit.P0_6 = 0x3;
PINMODE0_bit.P0_6 = 0;
FIO0DIR_bit.P0_6 = 0;
FIO0MASK_bit.P0_6 = 0;
// ìîíåòîïğèåìíèê ïûëåñîñ 2
PINSEL3_bit.P1_25 = 0x3;
PINMODE3_bit.P1_25 = 0;
FIO1DIR_bit.P1_25 = 0;
FIO1MASK_bit.P1_25 = 0;
// ñèãíàë ïå÷àòè ÷åêà ïûëåñîñ 2
PINSEL0_bit.P0_10 = 0x3;
PINMODE0_bit.P0_10 = 0;
FIO0DIR_bit.P0_10 = 0;
FIO0MASK_bit.P0_10 = 0;
pclk_freq = BSP_CPU_PclkFreq(23);
rld_cnts = pclk_freq / INPUT_CAPTURE_FREQ;

View File

@ -18,7 +18,7 @@
<Column0>175</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
<Column0>162</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
</Workspace>
<Find-in-Files><ColumnWidth0>440</ColumnWidth0><ColumnWidth1>62</ColumnWidth1><ColumnWidth2>754</ColumnWidth2></Find-in-Files><TerminalIO/></Static>
<Windows>
@ -52,14 +52,14 @@
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\menu\menu.h</Filename><XPos>0</XPos><YPos>48</YPos><SelStart>1424</SelStart><SelEnd>1424</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\fram_map.h</Filename><XPos>0</XPos><YPos>36</YPos><SelStart>923</SelStart><SelEnd>923</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\app\control.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>49</SelStart><SelEnd>49</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\app\journal.h</Filename><XPos>0</XPos><YPos>54</YPos><SelStart>3357</SelStart><SelEnd>3357</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\app\journal.c</Filename><XPos>0</XPos><YPos>378</YPos><SelStart>10205</SelStart><SelEnd>10205</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\coin.c</Filename><XPos>0</XPos><YPos>29</YPos><SelStart>839</SelStart><SelEnd>849</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\datadesc.c</Filename><XPos>0</XPos><YPos>781</YPos><SelStart>34927</SelStart><SelEnd>34927</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\drivers\keyboard\keyboard.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>470</SelStart><SelEnd>470</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\menu\menu.c</Filename><XPos>0</XPos><YPos>206</YPos><SelStart>6049</SelStart><SelEnd>6049</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\OS\app\app.c</Filename><XPos>0</XPos><YPos>29</YPos><SelStart>1131</SelStart><SelEnd>1131</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\data.h</Filename><XPos>0</XPos><YPos>92</YPos><SelStart>2345</SelStart><SelEnd>2345</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\OS\app\app_cfg.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>58</SelStart><SelEnd>58</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\data.c</Filename><XPos>0</XPos><YPos>328</YPos><SelStart>9146</SelStart><SelEnd>9146</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\datadesc.h</Filename><XPos>0</XPos><YPos>196</YPos><SelStart>7215</SelStart><SelEnd>7215</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\menu\menudesc.c</Filename><XPos>0</XPos><YPos>993</YPos><SelStart>39828</SelStart><SelEnd>39828</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\8\positive_6_24\OS\app\app.c</Filename><XPos>0</XPos><YPos>26</YPos><SelStart>1431</SelStart><SelEnd>1431</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\app\app_serv.c</Filename><XPos>0</XPos><YPos>292</YPos><SelStart>9943</SelStart><SelEnd>9943</SelEnd></Tab><ActiveTab>16</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\fr.c</Filename><XPos>0</XPos><YPos>259</YPos><SelStart>8192</SelStart><SelEnd>8192</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\console.c</Filename><XPos>0</XPos><YPos>109</YPos><SelStart>3332</SelStart><SelEnd>3332</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\OS\uc\cpu\cpu.h</Filename><XPos>0</XPos><YPos>85</YPos><SelStart>4578</SelStart><SelEnd>4589</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\OS\uc\lib\lib_def.h</Filename><XPos>0</XPos><YPos>111</YPos><SelStart>5973</SelStart><SelEnd>5981</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\menu\menu.h</Filename><XPos>0</XPos><YPos>48</YPos><SelStart>1424</SelStart><SelEnd>1424</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\app\control.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>49</SelStart><SelEnd>49</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\app\journal.c</Filename><XPos>0</XPos><YPos>378</YPos><SelStart>10205</SelStart><SelEnd>10205</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\drivers\keyboard\keyboard.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>470</SelStart><SelEnd>470</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\datadesc.c</Filename><XPos>0</XPos><YPos>2603</YPos><SelStart>122054</SelStart><SelEnd>122054</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\menu\menu.c</Filename><XPos>0</XPos><YPos>206</YPos><SelStart>6049</SelStart><SelEnd>6049</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\OS\app\app.c</Filename><XPos>0</XPos><YPos>29</YPos><SelStart>1530</SelStart><SelEnd>1530</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\data.h</Filename><XPos>0</XPos><YPos>92</YPos><SelStart>2345</SelStart><SelEnd>2345</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\OS\app\app_cfg.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>58</SelStart><SelEnd>58</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\data.c</Filename><XPos>0</XPos><YPos>328</YPos><SelStart>9146</SelStart><SelEnd>9146</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\datadesc.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>257</SelStart><SelEnd>269</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\menu\menudesc.c</Filename><XPos>0</XPos><YPos>1809</YPos><SelStart>71012</SelStart><SelEnd>71012</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\8\positive_6_24\OS\app\app.c</Filename><XPos>0</XPos><YPos>26</YPos><SelStart>1431</SelStart><SelEnd>1431</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\app\app_serv.c</Filename><XPos>0</XPos><YPos>679</YPos><SelStart>18098</SelStart><SelEnd>18098</SelEnd></Tab><ActiveTab>13</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\coin.c</Filename><XPos>0</XPos><YPos>192</YPos><SelStart>1009</SelStart><SelEnd>1009</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\fr.c</Filename><XPos>0</XPos><YPos>259</YPos><SelStart>8192</SelStart><SelEnd>8192</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\services\console.c</Filename><XPos>0</XPos><YPos>109</YPos><SelStart>3332</SelStart><SelEnd>3332</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\OS\uc\cpu\cpu.h</Filename><XPos>0</XPos><YPos>85</YPos><SelStart>4578</SelStart><SelEnd>4589</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\OS\uc\lib\lib_def.h</Filename><XPos>0</XPos><YPos>111</YPos><SelStart>5973</SelStart><SelEnd>5981</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\data\fram_map.h</Filename><XPos>0</XPos><YPos>4</YPos><SelStart>414</SelStart><SelEnd>414</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\app\app_serv.h</Filename><XPos>0</XPos><YPos>28</YPos><SelStart>1710</SelStart><SelEnd>1740</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\PROJECT\app\journal.h</Filename><XPos>0</XPos><YPos>17</YPos><SelStart>1678</SelStart><SelEnd>1678</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-04462d18><key>iaridepm.enu1</key></Toolbar-04462d18></Sizes></Row0><Row1><Sizes/></Row1></Top><Left><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>566</Bottom><Right>266</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>156250</sizeHorzCX><sizeHorzCY>210305</sizeHorzCY><sizeVertCX>209375</sizeVertCX><sizeVertCY>597266</sizeVertCY></Rect></Wnd3></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>340</Bottom><Right>1282</Right><x>-2</x><y>-2</y><xscreen>1284</xscreen><yscreen>342</yscreen><sizeHorzCX>1003125</sizeHorzCX><sizeHorzCY>359621</sizeHorzCY><sizeVertCX>156250</sizeVertCX><sizeVertCY>210305</sizeVertCY></Rect></Wnd2></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
<Top><Row0><Sizes><Toolbar-04462d18><key>iaridepm.enu1</key></Toolbar-04462d18></Sizes></Row0><Row1><Sizes/></Row1></Top><Left><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>742</Bottom><Right>253</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>156250</sizeHorzCX><sizeHorzCY>210305</sizeHorzCY><sizeVertCX>199219</sizeVertCX><sizeVertCY>782334</sizeVertCY></Rect></Wnd3></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>164</Bottom><Right>1282</Right><x>-2</x><y>-2</y><xscreen>1284</xscreen><yscreen>166</yscreen><sizeHorzCX>1003125</sizeHorzCX><sizeHorzCY>174553</sizeHorzCY><sizeVertCX>156250</sizeVertCX><sizeVertCY>210305</sizeVertCY></Rect></Wnd2></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
</Desktop>
</Workspace>

View File

@ -761,6 +761,10 @@
<file>
<name>$PROJ_DIR$\PROJECT\app\app_serv.c</name>
<outputs>
<tool>
<name>ICCARM</name>
<file> 171</file>
</tool>
<tool>
<name>BICOMP</name>
<file> 35</file>