📄 scib_lib.h
字号:
/*H**************************************************************************
* NAME: scib_lib.h
*----------------------------------------------------------------------------
* Copyright (c) 2003 Atmel.
*----------------------------------------------------------------------------
* RELEASE: c5122-scib-usb-hid-2_4_0
* REVISION: 1.11
*----------------------------------------------------------------------------
* PURPOSE:
* This file contains the SCIB low level driver definition
*****************************************************************************/
#ifndef _SCIB_LIB_H_
#define _SCIB_LIB_H_
/*_____ I N C L U D E S ____________________________________________________*/
#include "lib_sc\scib_api\scib_api.h"
/*select the PLL source for CK_ISO */
#define PLL_FOR_CK_ISO
/*number of measurement to confirm the card presence*/
#define DEB_MAX_COUNT 50
/*_____ M A C R O S ________________________________________________________*/
#define Scib_hw_save_context_scrs(save_scrs) (save_scrs =(bit)(SCSR & MSK_SCSR_SCRS) )
#define Scib_hw_restore_context_scrs(save_scrs) (SCSR = (SCSR &~MSK_SCSR_SCRS) | ((Byte)(save_scrs)) )
#define Scib_hw_clear_SCRS() (SCSR &= ~MSK_SCSR_SCRS)
#define Scib_hw_set_SCRS() (SCSR |= MSK_SCSR_SCRS)
#define Scib_hw_disable_it_empty_buffer() (SCIER &= ~ MSK_SCIER_ESCTBI )
#define Scib_hw_enable_it_empty_buffer() (SCIER |= MSK_SCIER_ESCTBI )
#define Scib_hw_disable_it_transmit_buffer() (SCIER &= ~ MSK_SCIER_ESCTI)
#define Scib_hw_enable_it_transmit_buffer() (SCIER |= MSK_SCIER_ESCTI)
#define Scib_hw_clear_scier_escri() (SCIER &= ~ MSK_SCIER_ESCRI)
#define Scib_hw_enable_scier_escri() (SCIER |= MSK_SCIER_ESCRI)
#define Scib_hw_enable_it_transmit_and_bwt_rx() (SCIER |= (MSK_SCIER_ESCWT | MSK_SCIER_ESCTI | MSK_SCIER_ESCRI))
#define scib_hw_clear_it_rxtx() (SCIER &= ~ (MSK_SCIER_ESCTI | MSK_SCIER_ESCTBI | MSK_SCIER_ESCWT | MSK_SCIER_ESCRI))
#define scib_hw_set_or_scicr(c) (SCICR|=(c))
#define Scib_hw_clear_and_scicr(c) (SCICR&=(c))
#define Scib_hw_set_or_ien1(c) (IEN1 |=(c))
#define Scib_hw_set_and_ien1(c) (IEN1 &=(c))
#define scib_hw_read_scisr() (SCISR)
//#define scib_set_block_guard_time() (SCSR |= (MSK_SCSR_BGTEN))
//#define scib_clear_block_guard_time() (SCSR &= ~(MSK_SCSR_BGTEN))
#define scib_hw_set_block_guard_time() (SCSR |= (0x40))
#define scib_hw_clear_block_guard_time() (SCSR &= ~(0x40))
//#define Scib_rx_char() (MSK_SCISR_SCRC == (SCISR & MSK_SCISR_SCRC))
//#define Scib_tx_char() (MSK_SCISR_SCTC == (SCISR & MSK_SCISR_SCTC))
#define Scib_hw_getchar() (SCRBUF)
#define Scib_hw_putchar(c) (SCTBUF=c)
#ifdef NO_SCIB_API
#define scib_api_card_out empty_fct
#define scib_api_card_in empty_fct
#define scib_api_card_mvt empty_fct
#endif
/*#ifdef SCIB_HARD #endif*/
/*M**************************************************************************
* NAME: SCIB "Hardware" management
*----------------------------------------------------------------------------
* PARAMS:
*----------------------------------------------------------------------------
* PURPOSE:
* These macros manage the SCIB hardware.
*----------------------------------------------------------------------------
* EXAMPLE:
*----------------------------------------------------------------------------
* NOTE:
*----------------------------------------------------------------------------
* REQUIREMENTS:
*****************************************************************************/
#define Scib_getchar Scib_hw_getchar
#define Scib_putchar(c) Scib_hw_putchar(c)
#define Scib_set_SCRS Scib_hw_set_SCRS
#define Scib_clear_SCRS Scib_hw_clear_SCRS
#define Scib_disable_it_transmit_buffer Scib_hw_disable_it_transmit_buffer
#define Scib_enable_it_transmit_buffer Scib_hw_enable_it_transmit_buffer
#define Scib_disable_it_empty_buffer Scib_hw_disable_it_empty_buffer
#define Scib_enable_it_empty_buffer Scib_hw_enable_it_empty_buffer
#define Scib_disable_it_empty_buffer Scib_hw_disable_it_empty_buffer
#define Scib_enable_it_empty_buffer Scib_hw_enable_it_empty_buffer
#define Scib_enable_it_transmit_and_bwt_rx Scib_hw_enable_it_transmit_and_bwt_rx
#define Scib_set_scicr Scib_hw_set_scicr
#define Scib_set_and_ien1 Scib_hw_set_and_ien1
#define Scib_clear_scier_escri Scib_hw_clear_scier_escri
#define Scib_enable_scier_escri Scib_hw_enable_scier_escri
#define scib_set_block_guard_time scib_hw_set_block_guard_time
#define scib_clear_block_guard_time scib_hw_clear_block_guard_time
#define scib_activ_card scib_hw_activ_card
#define scib_send_byte scib_hw_send_byte
#define scib_init scib_hw_init
#define scib_activ_card scib_hw_activ_card
#define scib_send_byte scib_hw_send_byte
#define scib_clk_config scib_hw_clk_config
#define scib_init_card_det scib_hw_init_card_det
#define scib_set_etu scib_hw_set_etu
#define scib_store_waiting_time scib_hw_store_waiting_time
#define scib_test_scri scib_hw_test_scri
#define scib_store_guard_time scib_hw_store_guard_time
#define scib_test_scri scib_hw_test_scri
#define scib_test_scti scib_hw_test_scti
#define scib_test_scpe scib_hw_test_scpe
#define scib_cardvcc_off scib_hw_cardvcc_off
#define scib_cardvcc_on scib_hw_cardvcc_on
#define scib_cardrst_on scib_hw_cardrst_on
#define scib_cardrst_off scib_hw_cardrst_off
#define scib_cardclk_on scib_hw_cardclk_on
#define scib_cardclk_off scib_hw_cardclk_off
#define scib_vcard_ok scib_hw_vcard_ok
#define scib_card_there scib_hw_card_there
#define scib_cardio_on scib_hw_cardio_on
#define scib_en_wait_time_count scib_hw_en_wait_time_count
#define scib_dis_wait_time_count scib_hw_dis_wait_time_count
#define scib_en_wait_time_inter scib_hw_en_wait_time_inter
#define scib_en_receiver_inter scib_hw_en_receiver_inter
#define scib_en_inter scib_hw_en_inter
#define scib_enable_it_power scib_hw_enable_it_power
#define scib_disable_it_power scib_hw_disable_it_power
#define scib_enable_parity_error scib_hw_enable_parity_error
#define scib_disable_parity_error scib_hw_disable_parity_error
#define scib_direct_conv scib_hw_direct_conv
#define scib_inverse_conv scib_hw_inverse_conv
#define scib_set_conv scib_hw_set_conv
#define scib_enable_car_rep scib_hw_enable_car_rep
#define scib_disable_car_rep scib_hw_disable_car_rep
#define scib_init_card_det scib_hw_init_card_det
#define scib_volt_config scib_hw_volt_config
#define scib_reset_uart scib_hw_reset_uart
#define scib_atr_config scib_hw_atr_config
#define Scib_clear_and_scicr Scib_hw_clear_and_scicr
#define Scib_clear_and_scicr Scib_hw_clear_and_scicr
#define scib_set_or_scicr scib_hw_set_or_scicr
#define scib_clear_it_rxtx scib_hw_clear_it_rxtx
#define scib_read_scisr scib_hw_read_scisr
/*_____ D E C L A R A T I O N ______________________________________________*/
void scib_init(void);
void scib_hw_activ_card(void);
void scib_hw_send_byte(Uchar uc_data_to_send);
void scib_hw_clk_config(Uchar );
Uchar scib_hw_set_etu(Uchar uc_FiDi);
void scib_hw_store_guard_time(Union16 gt);
void scib_hw_store_waiting_time(Union32 udw_timeout);
Uchar scib_hw_test_scri(void);
Uchar scib_hw_test_scti(void);
Uchar scib_hw_test_scpe(void);
void scib_hw_cardvcc_off(void);
void scib_hw_cardvcc_on(void);
void scib_hw_cardrst_on(void);
void scib_hw_cardrst_off(void);
void scib_hw_cardclk_on(void);
void scib_hw_cardclk_off(void);
Uchar scib_hw_vcard_ok(void);
Uchar scib_hw_card_there(void);
void scib_hw_cardio_on(void);
void scib_hw_en_wait_time_count();
void scib_hw_dis_wait_time_count();
void scib_hw_en_wait_time_inter(void);
void scib_hw_en_receiver_inter(void);
void scib_hw_en_inter(void);
void scib_hw_enable_it_power();
void scib_hw_disable_it_power();
void scib_hw_enable_parity_error();
void scib_hw_disable_parity_error();
void scib_hw_direct_conv();
void scib_hw_inverse_conv();
void scib_hw_set_conv(Uchar uc_conv);
void scib_hw_enable_car_rep();
void scib_hw_disable_car_rep();
void scib_hw_init_card_det();
void scib_hw_volt_config(Uchar );
void scib_hw_reset_uart (void);
void scib_hw_atr_config(void);
#ifdef APDU_MODE
void stop_timer1_etu(void);
void start_timer1_etu(Uint16);
#endif
#ifdef DCDC_INIT_PROCEDURE
bit scib_hw_start_dcdc(void);
#endif
#endif /* _SCIB_LIB_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -