12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- /*******************************************************************************
- * @file alipay_rom.h
- * @author ZS308A Team
- * @version V1.0
- * @date 2022-12-13
- * @brief alipay rom api
- *******************************************************************************/
- #ifndef _ALIPAY_ROM_H
- #define _ALIPAY_ROM_H
- /******************************************************************************/
- //includes
- /******************************************************************************/
- #include <stdint.h>
- #include <stdarg.h>
- #include "alipay_third.h"
- /******************************************************************************/
- //constants
- /******************************************************************************/
- /******************************************************************************/
- //typedef
- /******************************************************************************/
- #ifdef __CC_ARM /* ARM Compiler */
- #pragma anon_unions
- #endif
- /* alipay os api */
- typedef struct {
- void (*alipay_slave_write)(uint8_t buf[],uint8_t len);
- void (*alipay_ble_timer_start)(void);
- void (*wxpay_slave_write)(uint8_t buf[],uint8_t len);
- void (*wxpay_ble_timer_start)(void);
- void (*get_mac_addr)(uint8_t mac_addr[]);
- uint32_t (*get_unix_second)(void);
- void (*rand_get_value)(uint8_t rand_buf[],uint8_t *len);
- uint32_t (*flash_get_start)(void);
- void (*flash_read_data)(uint32_t addr,uint8_t read_data[],unsigned short len);
- void (*flash_write_data)(uint32_t addr,uint8_t write_data[],unsigned short len);
- void (*flash_erase_page)(uint32_t addr);
- void (*printf)(const char *format, int32_t value);
- } alipay_os_api_t;
- /* alipay api */
- typedef struct {
- /* Init env and os api */
- void (*init)(const alipay_os_api_t *api);
-
- /* pay lib api */
- uint8_t (*pay_lib_init)(uint8_t type);
- void (*alipay_send_ble_data_proc)(void);
- void (*alipay_master_write_data)(uint8_t buf[],uint8_t len);
- alipay_status_e (*alipay_get_bind_status)(uint32_t unix_second,uint8_t is_connected,uint8_t type);
- void (*alipay_get_bind_code)(uint8_t buf[],uint8_t *buf_size);
- void (*alipay_get_pay_code)(uint8_t buf[],uint16_t *buf_size);
- void (*alipay_get_userinfo)(uint8_t nick_name[],uint16_t *name_len,uint8_t login_id[],uint16_t *id_len);
- void (*alipay_detect_bind)(void);
- void (*wxpay_send_ble_data_proc)(void);
- void (*wxpay_master_write_data)(uint8_t buf[],uint8_t len);
- wxpay_status_e (*wxpay_get_bind_status)(uint32_t unix_second,uint8_t is_connected,uint8_t type);
- void (*wxpay_get_bind_code)(uint8_t buf[],uint8_t *buf_size);
- void (*wxpay_get_pay_code)(uint8_t buf[],uint16_t *buf_size);
- void (*wxpay_get_userinfo)(uint8_t nick_name[],uint16_t *name_len,uint8_t login_id[],uint16_t *id_len);
- void (*wxpay_detect_bind)(void);
- } alipay_api_t;
- /******************************************************************************/
- //function
- /******************************************************************************/
- extern void alipay_rom_init(const alipay_os_api_t *api);
-
- /******************************************************************************/
- //api
- /******************************************************************************/
- #define p_alipay_api ((const alipay_api_t*)CONFIG_ALIPAY_WXPAY_ROM_BASE)
- #endif /* _ALIPAY_ROM_H */
|