20 changed files with 583 additions and 53 deletions
@ -0,0 +1,50 @@ |
|||
////////////////////////////////////////////////////////////////////////////
|
|||
///@copyright Copyright (c) 2018, 传控科技 All rights reserved.
|
|||
///-------------------------------------------------------------------------
|
|||
/// @file bsp_drv.c
|
|||
/// @brief bsp @ driver config
|
|||
///-------------------------------------------------------------------------
|
|||
/// @version 1.0
|
|||
/// @author CC
|
|||
/// @date 20180331
|
|||
/// @note cc_AS_stc02
|
|||
//////////////////////////////////////////////////////////////////////////////
|
|||
|
|||
#include "task_bled.h" |
|||
#include "../app/app_config.h" |
|||
#include "../bsp/bsp_config.h" |
|||
#include "../msp/uart0.h" |
|||
#include "../bsp/bsp_led.h" |
|||
|
|||
S_TASK_BLED _s_task_bled; |
|||
static int i; |
|||
|
|||
void L3_task_bled_init(void) |
|||
{ |
|||
L1_task_init(&_s_task_bled.task); |
|||
L3_task_s_go(_s_task_bled,D_task_init); |
|||
} |
|||
|
|||
#define D_task_BLED_SET 0x50 |
|||
|
|||
void L3_task_bled_handler(S_TASK_BLED *s) |
|||
{ |
|||
TTSS_Task_init() |
|||
L2_task_go(D_task_BLED_SET); |
|||
|
|||
TTSS_Task_step(D_task_BLED_SET) |
|||
//L0_uart0_sendArrayHex(R.led_status, 14);
|
|||
for(i=0;i<LED_BTN_NUM; i++) |
|||
{ |
|||
//BLED_SET_STATUS(i, R.led_status[i]);
|
|||
bsp_bled_set(i, R.led_status[i]); |
|||
} |
|||
L2_task_go_Tdelay(D_task_BLED_SET,D_Tdelay_200ms); |
|||
//L2_task_go_Tdelay(D_task_BLED_SET,D_Tdelay_1s);
|
|||
|
|||
TTSS_Task_end(); |
|||
} |
|||
|
|||
|
|||
|
|||
|
@ -0,0 +1,33 @@ |
|||
////////////////////////////////////////////////////////////////////////////
|
|||
///@copyright Copyright (c) 2018, 传控科技 All rights reserved.
|
|||
///-------------------------------------------------------------------------
|
|||
/// @file bsp_drv.h
|
|||
/// @brief bsp @ driver config
|
|||
///-------------------------------------------------------------------------
|
|||
/// @version 1.0
|
|||
/// @author CC
|
|||
/// @date 20180331
|
|||
/// @note cc_AS_stc02
|
|||
|
|||
//////////////////////////////////////////////////////////////////////////////
|
|||
|
|||
#ifndef _APP_TASK_BLED_H |
|||
#define _APP_TASK_BLED_H |
|||
|
|||
#include "../ctask/task.h" |
|||
#include "../clib/clib.h" |
|||
#include "../tpc/debug.h" |
|||
|
|||
typedef struct _s_task_bled |
|||
{ |
|||
TS_task task; |
|||
}S_TASK_BLED; |
|||
|
|||
extern S_TASK_BLED _s_task_bled; |
|||
|
|||
extern void L3_task_bled_init(void); |
|||
extern void L3_task_bled_handler(S_TASK_BLED *s); |
|||
|
|||
|
|||
#endif // #ifndef _APP_TASK_BLED_H
|
|||
|
@ -0,0 +1,71 @@ |
|||
////////////////////////////////////////////////////////////////////////////
|
|||
///@copyright Copyright (c) 2018, 传控科技 All rights reserved.
|
|||
///-------------------------------------------------------------------------
|
|||
/// @file bsp_drv.c
|
|||
/// @brief bsp @ driver config
|
|||
///-------------------------------------------------------------------------
|
|||
/// @version 1.0
|
|||
/// @author CC
|
|||
/// @date 20180331
|
|||
/// @note cc_AS_stc02
|
|||
//////////////////////////////////////////////////////////////////////////////
|
|||
|
|||
#include "task_btn.h" |
|||
#include "../app/app_config.h" |
|||
#include "../bsp/bsp_config.h" |
|||
#include "../msp/uart0.h" |
|||
#include "../bsp/bsp_key.h" |
|||
#include "../bsp/bsp_led.h" |
|||
|
|||
S_TASK_BTN _s_task_btn; |
|||
static int i; |
|||
static U8 key; |
|||
|
|||
void L3_task_btn_init(void) |
|||
{ |
|||
L1_task_init(&_s_task_btn.task); |
|||
L3_task_s_go(_s_task_btn,D_task_init); |
|||
} |
|||
|
|||
#define D_task_BTN_SET 0x50 |
|||
|
|||
void L3_task_btn_handler(S_TASK_BTN *s) |
|||
{ |
|||
TTSS_Task_init() |
|||
L2_task_go(D_task_BTN_SET); |
|||
|
|||
TTSS_Task_step(D_task_BTN_SET) |
|||
key = bsp_key_scan(); |
|||
if(key != BSP_KEY_NUM_MAX){ |
|||
L0_uart0_uc('#'); |
|||
L0_uart0_uchex(key); |
|||
|
|||
//功能按键
|
|||
if(key == 0) |
|||
{ |
|||
R.func_btn = 1; |
|||
} |
|||
else |
|||
{ |
|||
//如果不需要授权 or 需要但已经授权
|
|||
if(!(R.auth_flag & 0xF0) || (R.auth_flag & 0x0F)) |
|||
{ |
|||
//L0_uart0_uc('$');
|
|||
//L0_uart0_uchex(key);
|
|||
|
|||
//设置对应的rfid
|
|||
L3_new_rfid(R.rfid_table[key], 0, 0xFF); |
|||
|
|||
//亮灯
|
|||
R.led_status[key] = BLED0_ON; |
|||
} |
|||
} |
|||
} |
|||
L2_task_go_Tdelay(D_task_BTN_SET,0); |
|||
|
|||
TTSS_Task_end(); |
|||
} |
|||
|
|||
|
|||
|
|||
|
@ -0,0 +1,32 @@ |
|||
////////////////////////////////////////////////////////////////////////////
|
|||
///@copyright Copyright (c) 2018, 传控科技 All rights reserved.
|
|||
///-------------------------------------------------------------------------
|
|||
/// @file bsp_drv.h
|
|||
/// @brief bsp @ driver config
|
|||
///-------------------------------------------------------------------------
|
|||
/// @version 1.0
|
|||
/// @author CC
|
|||
/// @date 20180331
|
|||
/// @note cc_AS_stc02
|
|||
|
|||
//////////////////////////////////////////////////////////////////////////////
|
|||
|
|||
#ifndef _APP_TASK_BTN_H |
|||
#define _APP_TASK_BTN_H |
|||
|
|||
#include "../ctask/task.h" |
|||
#include "../clib/clib.h" |
|||
|
|||
typedef struct _s_task_btn |
|||
{ |
|||
TS_task task; |
|||
}S_TASK_BTN; |
|||
|
|||
extern S_TASK_BTN _s_task_btn; |
|||
|
|||
extern void L3_task_btn_init(void); |
|||
extern void L3_task_btn_handler(S_TASK_BTN *s); |
|||
|
|||
|
|||
#endif // #ifndef _APP_TASK_BTN_H
|
|||
|
@ -0,0 +1,59 @@ |
|||
////////////////////////////////////////////////////////////////////////////
|
|||
///@copyright Copyright (c) 2018, 传控科技 All rights reserved.
|
|||
///-------------------------------------------------------------------------
|
|||
/// @file bsp_drv.c
|
|||
/// @brief bsp @ driver config
|
|||
///-------------------------------------------------------------------------
|
|||
/// @version 1.0
|
|||
/// @author CC
|
|||
/// @date 20180331
|
|||
/// @note cc_AS_stc02
|
|||
//////////////////////////////////////////////////////////////////////////////
|
|||
|
|||
#include "task_nfc_auth.h" |
|||
#include "../app/app_config.h" |
|||
#include "../bsp/bsp_config.h" |
|||
#include "../msp/uart0.h" |
|||
#include "../msp/uart2.h" |
|||
|
|||
S_TASK_AUTH _s_task_auth; |
|||
|
|||
//=============================================
|
|||
void L3_task_auth_init(void) |
|||
{ |
|||
// _s_task_auth.auth_flag = R.auth_flag;
|
|||
_s_task_auth.auth_flag = 0x00; |
|||
L1_task_init(&_s_task_auth.task); |
|||
L3_task_s_go(_s_task_auth,D_task_init); |
|||
} |
|||
|
|||
#define D_task_AUTH_READ 0x50 |
|||
#define D_task_AUTH_SETZERO 0x52 |
|||
#define D_task_AUTH_PRINT 0x53 |
|||
|
|||
void L3_task_auth_handler(S_TASK_AUTH *s) |
|||
{ |
|||
TTSS_Task_init() |
|||
L2_task_go(D_task_AUTH_READ); |
|||
|
|||
TTSS_Task_step(D_task_AUTH_READ) |
|||
if(s->auth_flag != R.auth_flag){ |
|||
s->auth_flag = R.auth_flag; |
|||
//授权中
|
|||
if(R.auth_flag & 0x0F != 0){ |
|||
L2_task_go_Tdelay(D_task_AUTH_SETZERO,D_Tdelay_10s); |
|||
} |
|||
} |
|||
|
|||
TTSS_Task_step(D_task_AUTH_SETZERO) |
|||
//清除授权标志
|
|||
R.auth_flag &= 0xF0; |
|||
L0_uart0_sendstr("Auth Expired."); |
|||
L2_task_go_Tdelay(D_task_AUTH_READ,0); |
|||
|
|||
TTSS_Task_end(); |
|||
} |
|||
|
|||
|
|||
|
|||
|
@ -0,0 +1,34 @@ |
|||
////////////////////////////////////////////////////////////////////////////
|
|||
///@copyright Copyright (c) 2018, 传控科技 All rights reserved.
|
|||
///-------------------------------------------------------------------------
|
|||
/// @file bsp_drv.h
|
|||
/// @brief bsp @ driver config
|
|||
///-------------------------------------------------------------------------
|
|||
/// @version 1.0
|
|||
/// @author CC
|
|||
/// @date 20180331
|
|||
/// @note cc_AS_stc02
|
|||
|
|||
//////////////////////////////////////////////////////////////////////////////
|
|||
|
|||
#ifndef _APP_TASK_NFC_AUTH_H |
|||
#define _APP_TASK_NFC_AUTH_H |
|||
|
|||
#include "../ctask/task.h" |
|||
#include "../clib/clib.h" |
|||
#include "../tpc/debug.h" |
|||
|
|||
typedef struct _s_task_auth |
|||
{ |
|||
TS_task task; |
|||
U8 auth_flag; |
|||
}S_TASK_AUTH; |
|||
|
|||
extern S_TASK_AUTH _s_task_auth; |
|||
|
|||
extern void L3_task_auth_init(void); |
|||
extern void L3_task_auth_handler(S_TASK_AUTH *s); |
|||
|
|||
|
|||
#endif // #ifndef _APP_TASK_NFC_AUTH_H
|
|||
|
@ -0,0 +1,55 @@ |
|||
#include "bsp_led.h" |
|||
|
|||
void bsp_led_init(void) |
|||
{ |
|||
//LED0
|
|||
D_stdIO_P2(BITN3); |
|||
|
|||
//BLED0-13
|
|||
D_stdIO_P4(BITN2); |
|||
D_stdIO_P4(BITN1); |
|||
D_stdIO_P3(BITN7); |
|||
D_stdIO_P3(BITN5); |
|||
D_stdIO_P1(BITN6); |
|||
D_stdIO_P1(BITN5); |
|||
D_stdIO_P1(BITN4); |
|||
D_stdIO_P4(BITN7); |
|||
D_stdIO_P1(BITN1); |
|||
D_stdIO_P2(BITN6); |
|||
D_stdIO_P2(BITN5); |
|||
D_stdIO_P2(BITN1); |
|||
D_stdIO_P4(BITN4); |
|||
D_stdIO_P2(BITN2); |
|||
|
|||
//初始化
|
|||
BLED0 = BLED1 = BLED2 = BLED3 = BLED4 = BLED5 = BLED6 = BLED0_OFF; |
|||
BLED7 = BLED8 = BLED9 = BLED10 = BLED11 = BLED12 = BLED13 = BLED0_OFF; |
|||
LED0 = LED0_OFF; |
|||
} |
|||
|
|||
void bsp_led_set(U8 status) |
|||
{ |
|||
LED0 = status; |
|||
} |
|||
|
|||
void bsp_bled_set(U8 index, U8 status) |
|||
{ |
|||
switch (index) |
|||
{ |
|||
case 0: BLED0 = status; break; |
|||
case 1: BLED1 = status; break; |
|||
case 2: BLED2 = status; break; |
|||
case 3: BLED3 = status; break; |
|||
case 4: BLED4 = status; break; |
|||
case 5: BLED5 = status; break; |
|||
case 6: BLED6 = status; break; |
|||
case 7: BLED7 = status; break; |
|||
case 8: BLED8 = status; break; |
|||
case 9: BLED9 = status; break; |
|||
case 10:BLED10 = status; break; |
|||
case 11:BLED11 = status; break; |
|||
case 12:BLED12 = status; break; |
|||
case 13:BLED13 = status; break; |
|||
default: break; |
|||
} |
|||
} |
@ -0,0 +1,14 @@ |
|||
#ifndef _BSP_LED_H |
|||
#define _BSP_LED_H |
|||
|
|||
#include "bsp_config.h" |
|||
|
|||
extern void bsp_led_init(void); |
|||
extern void bsp_bled_set(U8 index, U8 status); |
|||
extern void bsp_led_set(U8 status); |
|||
|
|||
#define BLED_SET_STATUS(N, status); do { \ |
|||
BLED##N = status; \ |
|||
}while(0); |
|||
|
|||
#endif //_BSP_LED_H
|
Loading…
Reference in new issue