R1UWaterRS485/hardinterface/src/UWater_gp22_driver.c

2605 lines
135 KiB
C
Raw Normal View History

2024-06-03 15:49:39 +08:00
/*
* File: hc32_gp30_driver.c
* Author: Administrator
*
* Created on 2020-7-10
*/
/* Includes ------------------------------------------------------------------*/
#include "UWater_gp22_driver.h"
#include "UWater_timer1uS_driver.h"
#include "UWater_eeprom_driver.h"
#include "UWater_rtcc_driver.h"
#include "reset.h"
#include "UWater_frame_app.h"
#include "UWater_gp22_app.h"
#include "UWater_lcd_app.h"
#include "UWater_lptimer_driver.h"
extern uint16_t g_testself_result;//Ӳ<><D3B2><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD>־
static void GP22_IO_Init(void);
static void GP22_SPI_INIT(void);
static void gp22_spi_isr_machine(void);
static void GP22_SPI_Enable(void);
static void GP22_SPI_Disable(void);
static void GP22_SPI_IOInit(void);
//static void reg_config(void);
static void GP22_SPI_IO_AI_Init(void);
GP22_SPI_STRUCT gp22_spi;
U8TOU32 u8_to_u32_data;
const uint8_t command0[2] = {0x7A,0xC4}; //<2F><>ѯBootloader<65>Ƿ<EFBFBD><C7B7><EFBFBD>λ
const uint8_t command1[6] = {0x5A, 0xC0,0x48,0xDB,0xA3,0x99}; //<2F><><EFBFBD>ÿ<EFBFBD><C3BF>Ź<EFBFBD>
const uint8_t command2[6] = {0x5A, 0xDE,0x00,0x00,0x00,0x04}; //<2F><><EFBFBD><EFBFBD><EFBFBD>ⲿ<EFBFBD><E2B2BF><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
const uint8_t command3[6] = {0x5A, 0xDF,0x50,0xF5,0xB8,0xCA}; //Enable FW Transaction
const uint8_t command4[6] = {0x5A, 0xDE,0x00,0x08,0x00,0x00}; //FWC_RECALL
const uint8_t command5[2] = {0x7A, 0xE0}; //<2F><>ȡ interrupt FW_TRANS_FNS 0x5A 0xDE 0x00010000
const uint8_t command6[6] = {0x5A, 0xDE,0x00,0x01,0x00,0x00}; //Execute FW_STORE(0x5A 0xDE 0x00010000) / FW_STORE_LOCK(0x5A 0xDE 0x00020000)
const uint8_t command7[6] = {0x5A, 0xDF,0x00,0x00,0x00,0x00}; //Disable FW Transaction
const uint8_t command8[2] = {0x7A, 0x36}; //<2F><>ѯDIFTOFBuffer
const uint8_t command10[6] = {0x5A, 0xDA,0x00,0x00,0x00,0x19}; //FHL UP<55><50>ʼֵ<CABC><D6B5><EFBFBD><EFBFBD>Ϊ22mv
const uint8_t command11[6] = {0x5A, 0xDB,0x00,0x00,0x00,0x19}; //FHL DOWN<57><4E>ʼֵ<CABC><D6B5><EFBFBD><EFBFBD>Ϊ22mv
const uint8_t command12[2] = {0x7A, 0xAA}; //<2F><>ѯRAM<41><4D>FWCУ<43><D0A3><EFBFBD><EFBFBD>
const uint8_t command13[2] = {0x7A,0xA8}; //<2F><>ѯRAM<41><4D>FWD1У<31><D0A3><EFBFBD><EFBFBD>
const uint8_t command14[2] = {0x7A,0xA9}; //<2F><>ѯRAM<41><4D>FWD2У<32><D0A3><EFBFBD><EFBFBD>
uint8_t command9[2] = {0x7A, 0x46}; //<2F><>ѯDataTypeBuffer
const uint8_t command15[6] = {0x5A, 0x75,0x00,0x00,0x00,0x40}; //<2F><><EFBFBD>ڼ춨״̬<D7B4><CCAC><EFBFBD>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ʲ<EFBFBD><CAB2><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD>̼<EFBFBD>16Hz<48><7A><EFBFBD><EFBFBD>
const uint8_t command16[6] = {0x5A, 0x75,0x00,0x00,0x00,0x80}; //<2F><><EFBFBD>ڼ춨״̬<D7B4><CCAC><EFBFBD>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ʲ<EFBFBD><CAB2><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD>̼<EFBFBD>8Hz<48><7A><EFBFBD><EFBFBD>
const u8 command_reset = 0x99;//ϵͳ<CFB5><CDB3>ʼ<EFBFBD><CABC>
const u8 command_read0 = 0x8A;//Measure Cycle Off
const u8 command_read1 = 0x8D;//clear interrupt FW_TRANS_FNS
const u8 command_read2 = 0x8B;//Measure Cycle On
const u8 command_read3 = 0xB8;//ִ<><D6B4>У<EFBFBD><D0A3>FWC<57>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
///**********************GP30<33><30><EFBFBD><EFBFBD>*******************2019-11-28<32><38><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>ݲ<EFBFBD>ͬ<EFBFBD>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><DCA3>Լ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#if DOMESTIC_TYPE_METER
#if DN15_BRASS_40KPA_GP30_32768 || LLGS_DN15_BRASS_40KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},
{0x00,0x03,0x33,0x33},{0x01,0x38,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},//<2F><><EFBFBD><EFBFBD><EFBFBD>жϸ<D0B6>Ϊ95mV
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x00,0xEE,0x48},{0x00,0x00,0xE6,0x78},{0x00,0x00,0xF6,0x18},//0xEE48=0d61000,0xE678=0d59000,0x00F618=0d63000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x28,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0xB1},
{0x00,0x00,0x14,0xAD},{0x00,0x01,0x0D,0x8D}
};
#elif ROUND_LLGS_DN15_BRASS_40KPA_GP30_32768 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},
{0x00,0x03,0x33,0x33},{0x01,0x44,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},//<2F><><EFBFBD><EFBFBD><EFBFBD>жϸ<D0B6>Ϊ95mV 0x01440000 81ms
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x00,0xFA,0x00},{0x00,0x00,0xF2,0x30},{0x00,0x01,0x01,0xD0},//0xFA00=0d64000,0xF230=0d62000,0x0101D0=0d66000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x28,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0xB1},
{0x00,0x00,0x14,0xAD},{0x00,0x01,0x0D,0x8D}
};
#elif ROUND_LLGS_XFZ_DN15_BRASS_40KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},
{0x00,0x03,0x33,0x33},{0x01,0x40,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},//<2F><><EFBFBD><EFBFBD><EFBFBD>жϸ<D0B6>Ϊ95mV 0x01440000 81ms
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x00,0xF6,0x18},{0x00,0x00,0xEE,0x48},{0x00,0x00,0xFD,0xE8},//0x0105B8=0d67000,0xFDE8=0d65000,0x010D88=0d69000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x28,0x24},{0x03,0xE8,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},//0x03EC8F03(214) 0x03E88F03(550) 0x03E48F03(330)
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0xB1},
{0x00,0x00,0x14,0xAD},{0x00,0x01,0x0D,0x8D}
};
#elif WDFS_DN15_BRASS_40KPA_GP30_32768 || LLGS_WDFS_DN15_BRASS_40KPA_GP30_32768 || ROUND_LLGS_WDFS_DN15_BRASS_40KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},
{0x00,0x03,0x33,0x33},{0x01,0x38,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x0A},//<2F><><EFBFBD><EFBFBD><EFBFBD>жϸ<D0B6>Ϊ95mV
{0x00,0x00,0x00,0x39},{0x00,0x00,0x00,0x19},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},//0xEEAC=0d61100,0xE6DC=0d59100,0x00F67C=0d63100
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x28,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x08},{0x00,0x00,0x5E,0xA1},//{0x03,0xEB,0x0F,0x03}<7D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0xEB:550 0xE7<45><37>350 0xEF:214
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x05,0xEF},
{0x00,0x00,0x14,0xAD},{0x00,0x01,0x0D,0x8D}
};
#elif Buxiugang_LLGS_WDFS_DN15_BXG_40KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},
{0x00,0x03,0x33,0x33},{0x01,0x6C,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x0A},//<2F><><EFBFBD><EFBFBD><EFBFBD>жϸ<D0B6>Ϊ95mV
{0x00,0x00,0x00,0x40},{0x00,0x00,0x00,0x19},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},//0xEEAC=0d61100,0xE6DC=0d59100,0x00F67C=0d63100
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x35,0x24},{0x03,0xEC,0x8B,0x03},{0x00,0x00,0x2C,0x06},{0x00,0x00,0x5E,0xA1},//{0x03,0xEB,0x0F,0x03}<7D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0xEB:550 0xE7<45><37>350 0xEF:214//<2F><><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>maxTOF noise <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ײ<EFBFBD>֮<EFBFBD><D6AE><EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x05,0xEF},
{0x00,0x00,0x14,0xAD},{0x00,0x01,0x0D,0x8D}
};
#elif Plastic_LLGS_WDFS_DN15_PALSTIC_40KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},
{0x00,0x03,0x33,0x33},{0x01,0x58,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x0A},//<2F><><EFBFBD><EFBFBD><EFBFBD>жϸ<D0B6>Ϊ95mV
{0x00,0x00,0x00,0x39},{0x00,0x00,0x00,0x19},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},//0xEEAC=0d61100,0xE6DC=0d59100,0x00F67C=0d63100
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x30,0x24},{0x03,0xEC,0x8B,0x03},{0x00,0x00,0x2C,0x08},{0x00,0x00,0x5E,0xA1},//{0x03,0xEB,0x0F,0x03}<7D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0xEB:550 0xE7<45><37>350 0xEF:214
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x05,0xEF},
{0x00,0x00,0x14,0xAD},{0x00,0x01,0x0D,0x8D}
};
#elif DN20_BRASS_40KPA_GP30_32768 || LLGS_DN20_BRASS_40KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},
{0x00,0x03,0x33,0x33},{0x01,0x40,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x00,0xF6,0x18},{0x00,0x00,0xEE,0x48},{0x00,0x00,0xFD,0xE8},//0x00F618=0d63000,0xEE48=0d61000,0x00FDE8=0d65000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x28,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0x4D},
{0x00,0x00,0x14,0x38},{0x00,0x01,0x0D,0x8D}
};
#elif ROUND_LLGS_DN20_BRASS_40KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},
{0x00,0x03,0x33,0x33},{0x01,0x50,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},// 0x01500000 84ms
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x01,0x05,0xB8},{0x00,0x00,0xFD,0xE8},{0x00,0x01,0x0D,0x88},//0x0105B8=0d67000,0xFDE8=0d65000,0x010d88=0d69000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x28,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},//C9<43>Ĵ<EFBFBD><C4B4><EFBFBD> EC 8F every // EC 0F disable
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0x4D},
{0x00,0x00,0x14,0x38},{0x00,0x01,0x0D,0x8D}
};
#elif ROUND_LLGS_XFZ_DN20_BRASS_40KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},
{0x00,0x03,0x33,0x33},{0x01,0x58,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},// 0x01580000 86ms
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x01,0x0D,0x88},{0x00,0x01,0x05,0xB8},{0x00,0x01,0x15,0x58},//0x010D88=0d69000,0x105B8=0d67000,0x011558=0d71000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x28,0x24},{0x03,0xE8,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},//C9<43>Ĵ<EFBFBD><C4B4><EFBFBD> EC 8F every // EC 0F disable //0x03EC8F03(214) 0x03E88F03(550) 0x03E48F03(330)
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0x4D},
{0x00,0x00,0x14,0x38},{0x00,0x01,0x0D,0x8D}
};
#elif WDFS_DN20_BRASS_40KPA_GP30_32768 || LLGS_WDFS_DN20_BRASS_40KPA_GP30_32768 || ROUND_LLGS_WDFS_DN20_BRASS_40KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},
{0x00,0x03,0x33,0x33},{0x01,0x40,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x0A},
{0x00,0x00,0x00,0x46},{0x00,0x00,0x00,0x19},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},//<2F><><EFBFBD><EFBFBD><EFBFBD>ײ<EFBFBD><D7B2><EFBFBD><EFBFBD><EFBFBD>:70mV 0x00F67C=0d63100,0xEEAC=0d61100,0x00FE4C=0d65100
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x28,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x08},{0x00,0x00,0x5E,0xA1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0x4D},
{0x00,0x00,0x14,0x38},{0x00,0x01,0x0D,0x8D}
};
#elif Buxiugang_LLGS_WDFS_DN20_BXG_40KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},
{0x00,0x03,0x33,0x33},{0x01,0x74,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x0A},
{0x00,0x00,0x00,0x78},{0x00,0x00,0x00,0x19},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},//<2F><><EFBFBD><EFBFBD><EFBFBD>ײ<EFBFBD><D7B2><EFBFBD><EFBFBD><EFBFBD>:70mV 0x00F67C=0d63100,0xEEAC=0d61100,0x00FE4C=0d65100
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x37,0x24},{0x03,0xEC,0x8B,0x03},{0x00,0x00,0x2C,0x06},{0x00,0x00,0x5E,0xA1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0x4D},
{0x00,0x00,0x14,0x38},{0x00,0x01,0x0D,0x8D}
};
#elif DN25_BRASS_40KPA_GP30_32768 || LLGS_DN25_BRASS_40KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},
{0x00,0x03,0x33,0x33},{0x01,0x94,0x00,0x00},{0x00,0x00,0x00,0x46},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x01,0x48,0x20},{0x00,0x01,0x40,0x50},{0x00,0x01,0x4F,0xF0},//DN25 DLY<4C><59><EFBFBD><EFBFBD>84<38><34>82<38><32>86
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x28,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xF1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0xBA},
{0x00,0x00,0x14,0xC4},{0x00,0x01,0x0D,0x8D}
};
#elif DN32_BRASS_63KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x99,0x99},
{0x00,0x03,0x99,0x99},{0x01,0x9C,0x00,0x00},{0x00,0x00,0x00,0x46},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x01,0x4F,0xF0},{0x00,0x01,0x48,0x20},{0x00,0x01,0x57,0xC0},//(DN32<33>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)0x014FF0=0d86000,0x014820=0d84000,0x0157C0=0d88000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x3C,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xF1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0xBA},
{0x00,0x00,0x14,0xC4},{0x00,0x01,0x0D,0x8D}
};
#elif DN40_BRASS_63KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x99,0x99},
{0x00,0x03,0x99,0x99},{0x01,0xAC,0x00,0x00},{0x00,0x00,0x00,0x46},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x01,0x5F,0x90},{0x00,0x01,0x57,0xC0},{0x00,0x01,0x67,0x60},//(DN40<34>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)0x015F90=0d90000,0x0157C0=0d88000,0x016760=0d92000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x3C,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xF1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0xBA},
{0x00,0x00,0x14,0xC4},{0x00,0x01,0x0D,0x8D}
};
#endif
#elif OVERSEAS_TYPE_METER
#if BM_DN15_BRASS_63KPA_GP30_32768 || MID_DN15_BRASS_63KPA_GP30_32768 || EN_DN15_BRASS_63KPA_GP30_32768 || PF_DN15_BRASS_63KPA_GP30_32768//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},//-200~800ns
{0x00,0x03,0x33,0x33},{0x01,0x38,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},//<2F><><EFBFBD><EFBFBD><EFBFBD>жϸ<D0B6>Ϊ95mV
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x00,0xEE,0x48},{0x00,0x00,0xE6,0x78},{0x00,0x00,0xF6,0x18},//(<28>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)DN15 0xEE48=0d61000,0xE678=0d59000,0x00F618=0d63000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x28,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0xB1},
{0x00,0x00,0x14,0xAD},{0x00,0x01,0x0D,0x8D}
};
#elif BM_DN20_BRASS_63KPA_GP30_32768 || MID_DN20_BRASS_63KPA_GP30_32768 || EN_DN20_BRASS_63KPA_GP30_32768 || PF_DN20_BRASS_63KPA_GP30_32768 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},//-200~800ns
{0x00,0x03,0x33,0x33},{0x01,0x40,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},//<2F><><EFBFBD><EFBFBD><EFBFBD>жϸ<D0B6>Ϊ95mV
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x00,0xF6,0x18},{0x00,0x00,0xEE,0x48},{0x00,0x00,0xFD,0xE8},//(<28>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)0x00F618=0d63000,0xEE48=0d61000,0x00FDE8=0d65000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x28,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},//C9 <20>Ĵ<EFBFBD><C4B4><EFBFBD> Zero Cross Calibration Rate
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0x4D},
{0x00,0x00,0x14,0x38},{0x00,0x01,0x0D,0x8D}
};
#elif BM_DN25_BRASS_63KPA_GP30_32768 || MID_DN25_BRASS_63KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x99,0x99},//DLY -100~900
{0x00,0x03,0x99,0x99},{0x01,0x94,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x01,0x48,0x20},{0x00,0x01,0x40,0x50},{0x00,0x01,0x4F,0xF0},
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x28,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0xBA},
{0x00,0x00,0x14,0xC4},{0x00,0x01,0x0D,0x8D}
};
#elif PF_DN25_BRASS_63KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},//DLY -200~800
{0x00,0x03,0x33,0x33},{0x01,0x94,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x01,0x48,0x20},{0x00,0x01,0x40,0x50},{0x00,0x01,0x4F,0xF0},
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x28,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0xBA},
{0x00,0x00,0x14,0xC4},{0x00,0x01,0x0D,0x8D}
};
#elif BM_DN32_BRASS_63KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x99,0x99},//-100~900 DLY<4C>̼<EFBFBD>
{0x00,0x03,0x99,0x99},{0x01,0x9C,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x01,0x4F,0xF0},{0x00,0x01,0x48,0x20},{0x00,0x01,0x57,0xC0},//(DN32<33>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)0x014FF0=0d86000,0x014820=0d84000,0x0157C0=0d88000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x3C,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0xBA},
{0x00,0x00,0x14,0xC4},{0x00,0x01,0x0D,0x8D}
};
#elif PF_DN32_BRASS_63KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},//-200~800
{0x00,0x03,0x33,0x33},{0x01,0x9C,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x01,0x4F,0xF0},{0x00,0x01,0x48,0x20},{0x00,0x01,0x57,0xC0},//(DN32<33>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)0x014FF0=0d86000,0x014820=0d84000,0x0157C0=0d88000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x3C,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0xBA},
{0x00,0x00,0x14,0xC4},{0x00,0x01,0x0D,0x8D}
};
#elif BM_DN40_BRASS_63KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x99,0x99},
{0x00,0x03,0x99,0x99},{0x01,0xAC,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x01,0x5F,0x90},{0x00,0x01,0x57,0xC0},{0x00,0x01,0x67,0x60},//(DN40<34>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)0x015F90=0d90000,0x0157C0=0d88000,0x016760=0d92000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x3C,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0xBA},
{0x00,0x00,0x14,0xC4},{0x00,0x01,0x0D,0x8D}
};
#elif PF_DN40_BRASS_63KPA_GP30_32768
U8TOU32 init_reg[128] = { {0x00,0x00,0x5B,0x00},
// 1 2 3 4 5
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x80},{0xFF,0xFF,0x33,0x33},//DLY -200~800
{0x00,0x03,0x33,0x33},{0x01,0xAC,0x00,0x00},{0x00,0x00,0x00,0x5F},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0xFA},
{0x00,0x00,0x03,0xE8},{0x00,0x00,0x00,0x19},{0x00,0x01,0x5F,0x90},{0x00,0x01,0x57,0xC0},{0x00,0x01,0x67,0x60},//(DN40<34>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)0x015F90=0d90000,0x0157C0=0d88000,0x016760=0d92000
{0x00,0x00,0x00,0x01},{0x00,0x00,0x01,0x2C},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x20},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x01},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xE8,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},
{0x00,0x29,0xF0,0x00},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x03,0xC2,0x00,0x00},{0x00,0x01,0x00,0x00},
{0x00,0x01,0x00,0x00},{0x00,0x00,0x00,0x10},{0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00},{0x00,0x14,0x01,0x20},
{0x81,0x81,0x11,0x44},{0x10,0x21,0x50,0x00},{0x01,0x2E,0xF3,0xFF},{0x00,0x4E,0xCA,0xE8},{0x00,0x91,0xE0,0x80},
{0x00,0x79,0x34,0x00},{0x01,0x00,0x3C,0x24},{0x03,0xEC,0x8F,0x03},{0x00,0x00,0x2C,0x11},{0x00,0x00,0x5E,0xA1},
{0x84,0xA0,0xC4,0x7C},{0x40,0x17,0x00,0xCF},{0x00,0x25,0x08,0x08},{0xAB,0xCD,0x76,0x54},{0x00,0x00,0x0B,0xBA},
{0x00,0x00,0x14,0xC4},{0x00,0x01,0x0D,0x8D}
};
#endif
#endif
////#if DN15_BRASS_40KPA_GP30_32768 || BM_DN15_BRASS_63KPA_GP30_32768 || DN15_BRASS_63KPA_MCU_32768 || DN20_BRASS_40KPA_GP30_32768 || BM_DN20_BRASS_63KPA_GP30_32768 || DN20_BRASS_63KPA_MCU_32768
//#if DN15_BRASS_40KPA_GP30_32768 || BM_DN15_BRASS_63KPA_GP30_32768 || MID_DN15_BRASS_63KPA_GP30_32768 || DN20_BRASS_40KPA_GP30_32768 || BM_DN20_BRASS_63KPA_GP30_32768 || MID_DN20_BRASS_63KPA_GP30_32768
//#define AS6031_FWC_INFO \
// 0xF2, 0xDC, 0x61, 0x2B, 0xC9, 0x02, 0x4B, 0xF3, 0x0D, 0x77, 0xB2, 0x73, 0x34, 0x5F, 0xB2, 0x0B,\
// 0xCA, 0x01, 0xF9, 0xF2, 0xE2, 0x61, 0x03, 0xCA, 0x01, 0xC1, 0xF3, 0x14, 0x63, 0x03, 0xF2, 0xE1,\
// 0x61, 0x0F, 0xCA, 0x00, 0x2C, 0xF2, 0xE2, 0x61, 0x33, 0x64, 0x3F, 0xCD, 0xF2, 0x88, 0x73, 0xF2,\
// 0x90, 0x77, 0x21, 0xCE, 0x00, 0xAD, 0x7C, 0xCE, 0x70, 0xF3, 0x0E, 0x77, 0xCB, 0x51, 0xCE, 0x71,\
// 0xAC, 0x73, 0x31, 0xF3, 0x12, 0x77, 0x34, 0x4E, 0xCA, 0x01, 0xF9, 0x64, 0x0B, 0xF3, 0x13, 0x77,\
// 0x34, 0x5E, 0xCA, 0x01, 0xF9, 0x64, 0x01, 0xCF, 0xF2, 0x88, 0x73, 0x75, 0x00, 0x00, 0x00, 0x0A,\
// 0xCB, 0x71, 0xF9, 0xCE, 0x19, 0xF2, 0x9E, 0x7D, 0xCF, 0xF2, 0x80, 0x77, 0xF2, 0x84, 0x37, 0xF2,\
// 0xCA, 0x73, 0xCB, 0x80, 0x00, 0x00, 0x1F, 0x00, 0xCE, 0x70, 0xCB, 0x74, 0xAF, 0x73, 0xCB, 0x54,\
// 0xCA, 0xF2, 0x15, 0xCE, 0xB0, 0x74, 0xB4, 0x7D, 0xCA, 0x01, 0xB6, 0xB4, 0x77, 0xCB, 0x29, 0x35,\
// 0x00, 0x00, 0x01, 0x00, 0x4D, 0x64, 0x13, 0xB4, 0x77, 0xF2, 0x9F, 0x37, 0xCB, 0x29, 0x35, 0x00,\
// 0x00, 0x00, 0x80, 0x4D, 0xCA, 0x00, 0x58, 0x64, 0x15, 0xB4, 0x77, 0x73, 0xCB, 0x28, 0xF2, 0x9F,\
// 0x7B, 0xCB, 0x2A, 0x37, 0xCB, 0x29, 0xCE, 0x19, 0x31, 0x5D, 0xCA, 0x00, 0x58, 0xF2, 0xC6, 0x73,\
// 0xCB, 0x80, 0xFF, 0xFF, 0xE0, 0x00, 0xF3, 0x08, 0x77, 0xF2, 0x9E, 0x27, 0x0B, 0xCB, 0xA1, 0xF2,\
// 0xC6, 0x7C, 0xB4, 0x77, 0xB3, 0x0B, 0xF3, 0x09, 0x73, 0x31, 0x5D, 0x64, 0x0A, 0xF2, 0x9F, 0x77,\
// 0xA9, 0x73, 0xC0, 0xF2, 0xD8, 0x2C, 0xCA, 0x01, 0xB6, 0xB4, 0x77, 0xF3, 0x0B, 0x73, 0xF2, 0x88,\
// 0x7B, 0x38, 0x4E, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x02, 0xF3, 0x0B, 0x73, 0xF2, 0x90, 0x7B,\
// 0x38, 0x4E, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x02, 0xF3, 0x0A, 0x73, 0x79, 0x38, 0x5D, 0x64,\
// 0x11, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x04, 0xF2, 0x9F, 0x77, 0xA9, 0x73, 0xC0, 0xF2, 0xD8,\
// 0x2C, 0xF2, 0xE1, 0x63, 0x0F, 0xB2, 0x0B, 0x64, 0x0A, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x08,\
// 0xB2, 0xFB, 0x00, 0xF3, 0x0C, 0x73, 0xF2, 0x82, 0x7B, 0x32, 0x4E, 0xB3, 0xCB, 0xAF, 0x00, 0x00,\
// 0x00, 0x10, 0xF3, 0x0C, 0x73, 0xF2, 0x86, 0x7B, 0x32, 0x4E, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00,\
// 0x10, 0xF2, 0xE0, 0x62, 0x3B, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x20, 0xB3, 0x73, 0x30, 0x00,\
// 0x00, 0x00, 0x10, 0x5A, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x01, 0x64, 0x09, 0xB3, 0x73, 0x59, 0x7F,\
// 0x00, 0x00, 0x00, 0x01, 0xB5, 0x7B, 0x2A, 0x00, 0x00, 0x00, 0x36, 0xFE, 0xB3, 0x73, 0xF3, 0x0D,\
// 0x2B, 0xF7, 0x7C, 0x87, 0x7D, 0xF2, 0xD8, 0x73, 0xD0, 0x88, 0x7C, 0xB5, 0x7B, 0xF3, 0x0D, 0x73,\
// 0xFC, 0x38, 0x4D, 0x64, 0x0A, 0xB5, 0xFB, 0x64, 0x0D, 0xB4, 0x77, 0xF2, 0x9F, 0x7D, 0xB5, 0x0B,\
// 0xFB, 0xF2, 0xDD, 0xF1, 0xAF, 0xB4, 0x77, 0xF2, 0x9F, 0x7D, 0xF2, 0xDD, 0xF1, 0x27, 0xF1, 0x2B,\
// 0xF2, 0xDC, 0x0B, 0xCB, 0x01, 0xCD, 0xB5, 0x7B, 0x2A, 0x00, 0x00, 0x00, 0x36, 0xFE, 0xF7, 0x7D,\
// 0xCF, 0xF2, 0xE4, 0x73, 0x75, 0x01, 0xE8, 0x48, 0x00, 0xCB, 0x71, 0xCE, 0x78, 0xCE, 0x78, 0xCE,\
// 0x78, 0xCE, 0x38, 0xAE, 0x7C, 0xF2, 0xE4, 0x73, 0x75, 0x01, 0xE8, 0x48, 0x00, 0xCB, 0x61, 0xCE,\
// 0x30, 0x7A, 0x0F, 0xFF, 0xFF, 0xFF, 0xCB, 0x82, 0xAE, 0x77, 0x21, 0xAF, 0x7C, 0xCF, 0xF3, 0x10,\
// 0x73, 0xF2, 0xDA, 0x7C, 0xF2, 0xDB, 0x7C, 0x08, 0xCF, 0xF3, 0x11, 0x73, 0xF3, 0x0E, 0x77, 0xCB,\
// 0x71, 0xCE, 0x48, 0xF2, 0xD8, 0x7C, 0x08, 0x09, 0xCF, 0xF3, 0x0F, 0x73, 0xCE, 0x00, 0xF3, 0x0E,\
// 0x77, 0xCB, 0x71, 0xCE, 0x48, 0xA9, 0x7C, 0xF3, 0x15, 0x73, 0xAC, 0x7C, 0x08, 0x09, 0xCF, 0xF3,\
// 0x12, 0x73, 0xF3, 0x0E, 0x77, 0xCB, 0x71, 0xCE, 0x48, 0xAA, 0x7C, 0xA9, 0x77, 0x34, 0xAA, 0x7D,\
// 0xF3, 0x13, 0x73, 0xF3, 0x0E, 0x77, 0xCB, 0x71, 0xCE, 0x48, 0xA9, 0x77, 0x34, 0xAB, 0x7D, 0x08,\
// 0x09, 0xCF, 0x70, 0x10, 0x00, 0x00, 0x00, 0xAF, 0x7C, 0x08, 0xCF, 0xCA, 0xF6, 0xAA, 0xCA, 0x01,\
// 0xEE, 0xCA, 0x01, 0xF9, 0xCA, 0x02, 0x09, 0xCA, 0x02, 0x1F, 0xCA, 0x02, 0x42, 0xB5, 0xFB, 0xF2,\
// 0xDC, 0xF1, 0x17, 0xC9, 0xF0, 0x00, 0xCD, 0x00 ,0x00 ,0x00 ,0x00 ,0x00, 0x00 ,0x00 ,0x00 ,0x00,\
// 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00,\
// 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00
//#if DN15_BRASS_40KPA_GP30_32768 || BM_DN15_BRASS_63KPA_GP30_32768 || MID_DN15_BRASS_63KPA_GP30_32768 || DN20_BRASS_40KPA_GP30_32768 || BM_DN20_BRASS_63KPA_GP30_32768 || MID_DN20_BRASS_63KPA_GP30_32768 || DN25_BRASS_40KPA_GP30_32768 || BM_DN25_BRASS_63KPA_GP30_32768 || MID_DN25_BRASS_63KPA_GP30_32768
//#elif DN25_BRASS_40KPA_GP30_32768 || BM_DN25_BRASS_63KPA_GP30_32768 || MID_DN25_BRASS_63KPA_GP30_32768
#if WENDU_FANSUAN_OPEN
#if Buxiugang_LLGS_WDFS_DN20_BXG_40KPA_GP30_32768
#define AS6031_FWC_INFO \
0xF2, 0xDC, 0x61, 0x2B, 0xC9, 0x03, 0x23, 0xF2, 0xE2, 0x61, 0x4B, 0xCA, 0x02, 0x51, 0xF2, 0xE2,\
0x61, 0x43, 0xCA, 0x02, 0x32, 0xF3, 0x0D, 0x77, 0xB2, 0x73, 0x34, 0x5F, 0xB2, 0x0B, 0xCA, 0x02,\
0xB6, 0xF2, 0xE2, 0x61, 0x03, 0xCA, 0x01, 0xF5, 0xF2, 0xE2, 0x61, 0x33, 0x64, 0x13, 0xCD, 0xF2,\
0x88, 0x73, 0x75, 0x00, 0x00, 0x00, 0x0A, 0xCB, 0x71, 0xF9, 0xCE, 0x19, 0xF2, 0x9E, 0x7D, 0xCF,\
0xF2, 0x80, 0x77, 0xF2, 0x84, 0x37, 0xF2, 0xCA, 0x73, 0xCB, 0x80, 0x00, 0x00, 0x1F, 0x00, 0xCE,\
0x70, 0xCB, 0x74, 0xB1, 0x73, 0xCB, 0x54, 0xCA, 0xF2, 0x15, 0xCE, 0xB0, 0x74, 0xB4, 0x7D, 0xCA,\
0x01, 0xEA, 0xB4, 0x77, 0xCB, 0x29, 0x35, 0x00, 0x00, 0x01, 0x00, 0x4D, 0x64, 0x13, 0xB4, 0x77,\
0xF2, 0x9F, 0x37, 0xCB, 0x29, 0x35, 0x00, 0x00, 0x00, 0x80, 0x4D, 0xCA, 0x00, 0x2F, 0x64, 0x15,\
0xB4, 0x77, 0x73, 0xCB, 0x28, 0xF2, 0x9F, 0x7B, 0xCB, 0x2A, 0x37, 0xCB, 0x29, 0xCE, 0x19, 0x31,\
0x5D, 0xCA, 0x00, 0x2F, 0xF2, 0xC6, 0x73, 0xCB, 0x80, 0xFF, 0xFF, 0xE0, 0x00, 0xF2, 0x75, 0x77,\
0xF2, 0x9E, 0x27, 0x0B, 0xCB, 0xA1, 0xF2, 0xC6, 0x7C, 0xB4, 0x77, 0xB3, 0x0B, 0xF3, 0x09, 0x73,\
0x31, 0x5D, 0x64, 0x0D, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x04, 0xF3, 0x09, 0x77, 0xB4, 0x7D,\
0xCA, 0x01, 0xEA, 0xF3, 0x0B, 0x73, 0xF2, 0x88, 0x7B, 0x38, 0x4E, 0xB3, 0xCB, 0xAF, 0x00, 0x00,\
0x00, 0x02, 0xF3, 0x0B, 0x73, 0xF2, 0x90, 0x7B, 0x38, 0x4E, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00,\
0x02, 0xF3, 0x0A, 0x73, 0x79, 0x38, 0x5D, 0x64, 0x0D, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x04,\
0xF3, 0x0A, 0x77, 0xB4, 0x7D, 0xF2, 0xE1, 0x63, 0x0F, 0xB2, 0x0B, 0x64, 0x0A, 0xB3, 0xCB, 0xAF,\
0x00, 0x00, 0x00, 0x08, 0xB2, 0xFB, 0x00, 0xF3, 0x0C, 0x73, 0xF2, 0x78, 0x7B, 0x32, 0x4D, 0xCA,\
0x02, 0x22, 0xF2, 0xE0, 0x62, 0x3B, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x20, 0xB3, 0x73, 0x30,\
0x00, 0x00, 0x00, 0x10, 0x5A, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x01, 0x64, 0x09, 0xB3, 0x73, 0x59,\
0x7F, 0x00, 0x00, 0x00, 0x01, 0xB5, 0x7B, 0x2A, 0x00, 0x00, 0x00, 0x36, 0xFE, 0xB3, 0x73, 0xF3,\
0x0D, 0x2B, 0xF7, 0x7C, 0xF2, 0x70, 0xFB, 0xF2, 0x70, 0x77, 0x35, 0x00, 0x00, 0x00, 0x05, 0x4D,\
0x64, 0x37, 0x76, 0xF2, 0x71, 0xFB, 0x7B, 0xF7, 0x73, 0x79, 0xF3, 0x0D, 0x2B, 0xF2, 0x70, 0x77,\
0xFD, 0xCE, 0x09, 0x29, 0xF7, 0x7C, 0x76, 0xF2, 0x72, 0xFB, 0x7B, 0xF7, 0x73, 0x79, 0xFA, 0xF7,\
0x7C, 0xF2, 0x78, 0x73, 0xCE, 0x78, 0xCE, 0x78, 0xF2, 0x79, 0x77, 0xCB, 0x85, 0x00, 0x00, 0xFF,\
0xFF, 0xCB, 0xA1, 0xFA, 0xF7, 0x7C, 0x64, 0x0D, 0xF2, 0x70, 0x73, 0x30, 0x00, 0x00, 0x00, 0x05,\
0x4D, 0xCA, 0x02, 0xCA, 0xB5, 0x7B, 0xF3, 0x0D, 0x73, 0xFC, 0x38, 0x4D, 0x64, 0x05, 0xB5, 0xFB,\
0x64, 0x38, 0xB5, 0x0B, 0xFB, 0xF2, 0xE1, 0x61, 0x0B, 0xCA, 0x02, 0xB6, 0xF2, 0xE1, 0x61, 0x0F,\
0xCA, 0x02, 0x74, 0xF2, 0xDA, 0x73, 0xF3, 0x0E, 0x77, 0x34, 0x4D, 0xCA, 0x02, 0xB6, 0xF2, 0xDA,\
0x73, 0xF3, 0x0F, 0x77, 0x34, 0x5D, 0xCA, 0x02, 0xB6, 0xF2, 0x70, 0x73, 0x30, 0x00, 0x00, 0x00,\
0x0F, 0x4D, 0xCA, 0x03, 0x00, 0xF2, 0xDD, 0xF1, 0xAF, 0xB4, 0x77, 0xF2, 0x9F, 0x7D, 0xF2, 0xDD,\
0xF1, 0x27, 0xF1, 0x2B, 0xF2, 0xDC, 0x0B, 0xCB, 0x01, 0xCD, 0xB5, 0x7B, 0x2A, 0x00, 0x00, 0x00,\
0x36, 0xFE, 0xF7, 0x7D, 0xCF, 0xF2, 0xE4, 0x77, 0x70, 0x01, 0xE8, 0x48, 0x00, 0xCB, 0x71, 0xCE,\
0x78, 0xCE, 0x78, 0xCE, 0x78, 0xCE, 0x38, 0xAF, 0x7C, 0xF2, 0xE4, 0x77, 0x70, 0x01, 0xE8, 0x48,\
0x00, 0xCB, 0x61, 0xCE, 0x30, 0x7A, 0x0F, 0xFF, 0xFF, 0xFF, 0xCB, 0x82, 0xAF, 0x77, 0x21, 0xB1,\
0x7C, 0xCF, 0xF3, 0x0C, 0x73, 0xF2, 0x79, 0x7B, 0x32, 0x4E, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00,\
0x10, 0xCF, 0xF2, 0x82, 0x73, 0xF2, 0x77, 0x77, 0xCB, 0x51, 0xF2, 0x76, 0x77, 0x34, 0xF2, 0x78,\
0x7D, 0xF2, 0x86, 0x73, 0xF2, 0x77, 0x77, 0xCB, 0x51, 0xF2, 0x76, 0x77, 0x34, 0xF2, 0x79, 0x7D,\
0xCF, 0xF2, 0x87, 0x73, 0xF2, 0x83, 0x77, 0x31, 0x09, 0x25, 0x00, 0x00, 0x01, 0x8D, 0xCB, 0x64,\
0xF2, 0x77, 0x7D, 0xF2, 0x87, 0x73, 0x23, 0xF2, 0x83, 0x77, 0x34, 0xF2, 0x77, 0x73, 0xCB, 0x54,\
0xF2, 0x76, 0x7D, 0xCF, 0xF2, 0x73, 0x77, 0xF2, 0x74, 0x73, 0x31, 0x78, 0xF2, 0x6F, 0x77, 0x36,\
0x70, 0x00, 0x00, 0x00, 0x09, 0xCB, 0x74, 0x70, 0x00, 0x00, 0x00, 0x05, 0xCB, 0x74, 0xF2, 0xDA,\
0x7D, 0xF2, 0xDB, 0x7D, 0xCF, 0xF2, 0x76, 0x0B, 0x2F, 0x00, 0x00, 0x00, 0x12, 0xF2, 0x77, 0x0B,\
0x2F, 0x00, 0x4B, 0xAC, 0xE4, 0xF2, 0x78, 0x0B, 0x2F, 0x00, 0x00, 0x01, 0x8D, 0xF2, 0x79, 0x0B,\
0x2F, 0x00, 0x00, 0x01, 0x8D, 0xCF, 0xF3, 0x10, 0x73, 0xF2, 0xDA, 0x7C, 0xF2, 0xDB, 0x7C, 0x08,\
0xCF, 0x70, 0x10, 0x00, 0x00, 0x00, 0xB1, 0x7C, 0x08, 0xCF, 0xF2, 0x78, 0x73, 0xCE, 0x78, 0xCE,\
0x78, 0xF2, 0x79, 0x77, 0xCB, 0x85, 0x00, 0x00, 0xFF, 0xFF, 0xCB, 0xA1, 0x7A, 0x00, 0x00, 0x00,\
0x65, 0xF7, 0x7C, 0xF2, 0x79, 0x61, 0xFB, 0x75, 0x00, 0x00, 0x00, 0x00, 0xF2, 0x6F, 0x73, 0x31,\
0x4E, 0xF2, 0x6F, 0x7D, 0xF2, 0x74, 0x73, 0x31, 0x5E, 0xF2, 0x74, 0x7D, 0xF2, 0x73, 0x2D, 0xCF,\
0xF2, 0x70, 0x0B, 0xF2, 0x71, 0x7F, 0x00, 0x00, 0x00, 0x88, 0xF2, 0x72, 0x7F, 0x00, 0x00, 0x00,\
0x90, 0xF2, 0x73, 0x0B, 0xF2, 0x6F, 0x7F, 0x00, 0x00, 0x1F, 0xFF, 0xF2, 0x74, 0x7F, 0x00, 0x00,\
0x00, 0x00, 0xCF, 0xCA, 0xF6, 0xAA, 0xCA, 0x02, 0xB6, 0xCA, 0x02, 0xC1, 0xCA, 0x02, 0x95, 0xCA,\
0x03, 0x00, 0xB5, 0xFB, 0xF3, 0x08, 0x77, 0xF2, 0x75, 0x7D, 0xF2, 0xDC, 0xF1, 0x17, 0xC9, 0xF0,\
0x00, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
#else
#define AS6031_FWC_INFO \
0xF2, 0xDC, 0x61, 0x2B, 0xC9, 0x03, 0x23, 0xF2, 0xE2, 0x61, 0x4B, 0xCA, 0x02, 0x51, 0xF2, 0xE2,\
0x61, 0x43, 0xCA, 0x02, 0x32, 0xF3, 0x0D, 0x77, 0xB2, 0x73, 0x34, 0x5F, 0xB2, 0x0B, 0xCA, 0x02,\
0xB6, 0xF2, 0xE2, 0x61, 0x03, 0xCA, 0x01, 0xF5, 0xF2, 0xE2, 0x61, 0x33, 0x64, 0x13, 0xCD, 0xF2,\
0x88, 0x73, 0x75, 0x00, 0x00, 0x00, 0x0A, 0xCB, 0x71, 0xF9, 0xCE, 0x19, 0xF2, 0x9E, 0x7D, 0xCF,\
0xF2, 0x80, 0x77, 0xF2, 0x84, 0x37, 0xF2, 0xCA, 0x73, 0xCB, 0x80, 0x00, 0x00, 0x1F, 0x00, 0xCE,\
0x70, 0xCB, 0x74, 0xB1, 0x73, 0xCB, 0x54, 0xCA, 0xF2, 0x15, 0xCE, 0xB0, 0x74, 0xB4, 0x7D, 0xCA,\
0x01, 0xEA, 0xB4, 0x77, 0xCB, 0x29, 0x35, 0x00, 0x00, 0x01, 0x00, 0x4D, 0x64, 0x13, 0xB4, 0x77,\
0xF2, 0x9F, 0x37, 0xCB, 0x29, 0x35, 0x00, 0x00, 0x00, 0x80, 0x4D, 0xCA, 0x00, 0x2F, 0x64, 0x15,\
0xB4, 0x77, 0x73, 0xCB, 0x28, 0xF2, 0x9F, 0x7B, 0xCB, 0x2A, 0x37, 0xCB, 0x29, 0xCE, 0x19, 0x31,\
0x5D, 0xCA, 0x00, 0x2F, 0xF2, 0xC6, 0x73, 0xCB, 0x80, 0xFF, 0xFF, 0xE0, 0x00, 0xF2, 0x75, 0x77,\
0xF2, 0x9E, 0x27, 0x0B, 0xCB, 0xA1, 0xF2, 0xC6, 0x7C, 0xB4, 0x77, 0xB3, 0x0B, 0xF3, 0x09, 0x73,\
0x31, 0x5D, 0x64, 0x0D, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x04, 0xF3, 0x09, 0x77, 0xB4, 0x7D,\
0xCA, 0x01, 0xEA, 0xF3, 0x0B, 0x73, 0xF2, 0x88, 0x7B, 0x38, 0x4E, 0xB3, 0xCB, 0xAF, 0x00, 0x00,\
0x00, 0x02, 0xF3, 0x0B, 0x73, 0xF2, 0x90, 0x7B, 0x38, 0x4E, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00,\
0x02, 0xF3, 0x0A, 0x73, 0x79, 0x38, 0x5D, 0x64, 0x0D, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x04,\
0xF3, 0x0A, 0x77, 0xB4, 0x7D, 0xF2, 0xE1, 0x63, 0x0F, 0xB2, 0x0B, 0x64, 0x0A, 0xB3, 0xCB, 0xAF,\
0x00, 0x00, 0x00, 0x08, 0xB2, 0xFB, 0x00, 0xF3, 0x0C, 0x73, 0xF2, 0x78, 0x7B, 0x32, 0x4D, 0xCA,\
0x02, 0x22, 0xF2, 0xE0, 0x62, 0x3B, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x20, 0xB3, 0x73, 0x30,\
0x00, 0x00, 0x00, 0x10, 0x5A, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x01, 0x64, 0x09, 0xB3, 0x73, 0x59,\
0x7F, 0x00, 0x00, 0x00, 0x01, 0xB5, 0x7B, 0x2A, 0x00, 0x00, 0x00, 0x36, 0xFE, 0xB3, 0x73, 0xF3,\
0x0D, 0x2B, 0xF7, 0x7C, 0xF2, 0x70, 0xFB, 0xF2, 0x70, 0x77, 0x35, 0x00, 0x00, 0x00, 0x05, 0x4D,\
0x64, 0x37, 0x76, 0xF2, 0x71, 0xFB, 0x7B, 0xF7, 0x73, 0x79, 0xF3, 0x0D, 0x2B, 0xF2, 0x70, 0x77,\
0xFD, 0xCE, 0x09, 0x29, 0xF7, 0x7C, 0x76, 0xF2, 0x72, 0xFB, 0x7B, 0xF7, 0x73, 0x79, 0xFA, 0xF7,\
0x7C, 0xF2, 0x78, 0x73, 0xCE, 0x78, 0xCE, 0x78, 0xF2, 0x79, 0x77, 0xCB, 0x85, 0x00, 0x00, 0xFF,\
0xFF, 0xCB, 0xA1, 0xFA, 0xF7, 0x7C, 0x64, 0x0D, 0xF2, 0x70, 0x73, 0x30, 0x00, 0x00, 0x00, 0x05,\
0x4D, 0xCA, 0x02, 0xCA, 0xB5, 0x7B, 0xF3, 0x0D, 0x73, 0xFC, 0x38, 0x4D, 0x64, 0x05, 0xB5, 0xFB,\
0x64, 0x38, 0xB5, 0x0B, 0xFB, 0xF2, 0xE1, 0x61, 0x0B, 0xCA, 0x02, 0xB6, 0xF2, 0xE1, 0x61, 0x0F,\
0xCA, 0x02, 0x74, 0xF2, 0xDA, 0x73, 0xF3, 0x0E, 0x77, 0x34, 0x4D, 0xCA, 0x02, 0xB6, 0xF2, 0xDA,\
0x73, 0xF3, 0x0F, 0x77, 0x34, 0x5D, 0xCA, 0x02, 0xB6, 0xF2, 0x70, 0x73, 0x30, 0x00, 0x00, 0x00,\
0x0F, 0x4D, 0xCA, 0x03, 0x00, 0xF2, 0xDD, 0xF1, 0xAF, 0xB4, 0x77, 0xF2, 0x9F, 0x7D, 0xF2, 0xDD,\
0xF1, 0x27, 0xF1, 0x2B, 0xF2, 0xDC, 0x0B, 0xCB, 0x01, 0xCD, 0xB5, 0x7B, 0x2A, 0x00, 0x00, 0x00,\
0x36, 0xFE, 0xF7, 0x7D, 0xCF, 0xF2, 0xE4, 0x77, 0x70, 0x01, 0xE8, 0x48, 0x00, 0xCB, 0x71, 0xCE,\
0x78, 0xCE, 0x78, 0xCE, 0x78, 0xCE, 0x38, 0xAF, 0x7C, 0xF2, 0xE4, 0x77, 0x70, 0x01, 0xE8, 0x48,\
0x00, 0xCB, 0x61, 0xCE, 0x30, 0x7A, 0x0F, 0xFF, 0xFF, 0xFF, 0xCB, 0x82, 0xAF, 0x77, 0x21, 0xB1,\
0x7C, 0xCF, 0xF3, 0x0C, 0x73, 0xF2, 0x79, 0x7B, 0x32, 0x4E, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00,\
0x10, 0xCF, 0xF2, 0x82, 0x73, 0xF2, 0x77, 0x77, 0xCB, 0x51, 0xF2, 0x76, 0x77, 0x34, 0xF2, 0x78,\
0x7D, 0xF2, 0x86, 0x73, 0xF2, 0x77, 0x77, 0xCB, 0x51, 0xF2, 0x76, 0x77, 0x34, 0xF2, 0x79, 0x7D,\
0xCF, 0xF2, 0x87, 0x73, 0xF2, 0x83, 0x77, 0x31, 0x09, 0x25, 0x00, 0x00, 0x01, 0x8D, 0xCB, 0x64,\
0xF2, 0x77, 0x7D, 0xF2, 0x87, 0x73, 0x23, 0xF2, 0x83, 0x77, 0x34, 0xF2, 0x77, 0x73, 0xCB, 0x54,\
0xF2, 0x76, 0x7D, 0xCF, 0xF2, 0x73, 0x77, 0xF2, 0x74, 0x73, 0x31, 0x78, 0xF2, 0x6F, 0x77, 0x36,\
0x70, 0x00, 0x00, 0x00, 0x09, 0xCB, 0x74, 0x70, 0x00, 0x00, 0x00, 0x07, 0xCB, 0x74, 0xF2, 0xDA,\
0x7D, 0xF2, 0xDB, 0x7D, 0xCF, 0xF2, 0x76, 0x0B, 0x2F, 0x00, 0x00, 0x00, 0x12, 0xF2, 0x77, 0x0B,\
0x2F, 0x00, 0x4B, 0xAC, 0xE4, 0xF2, 0x78, 0x0B, 0x2F, 0x00, 0x00, 0x01, 0x8D, 0xF2, 0x79, 0x0B,\
0x2F, 0x00, 0x00, 0x01, 0x8D, 0xCF, 0xF3, 0x10, 0x73, 0xF2, 0xDA, 0x7C, 0xF2, 0xDB, 0x7C, 0x08,\
0xCF, 0x70, 0x10, 0x00, 0x00, 0x00, 0xB1, 0x7C, 0x08, 0xCF, 0xF2, 0x78, 0x73, 0xCE, 0x78, 0xCE,\
0x78, 0xF2, 0x79, 0x77, 0xCB, 0x85, 0x00, 0x00, 0xFF, 0xFF, 0xCB, 0xA1, 0x7A, 0x00, 0x00, 0x00,\
0x65, 0xF7, 0x7C, 0xF2, 0x79, 0x61, 0xFB, 0x75, 0x00, 0x00, 0x00, 0x00, 0xF2, 0x6F, 0x73, 0x31,\
0x4E, 0xF2, 0x6F, 0x7D, 0xF2, 0x74, 0x73, 0x31, 0x5E, 0xF2, 0x74, 0x7D, 0xF2, 0x73, 0x2D, 0xCF,\
0xF2, 0x70, 0x0B, 0xF2, 0x71, 0x7F, 0x00, 0x00, 0x00, 0x88, 0xF2, 0x72, 0x7F, 0x00, 0x00, 0x00,\
0x90, 0xF2, 0x73, 0x0B, 0xF2, 0x6F, 0x7F, 0x00, 0x00, 0x1F, 0xFF, 0xF2, 0x74, 0x7F, 0x00, 0x00,\
0x00, 0x00, 0xCF, 0xCA, 0xF6, 0xAA, 0xCA, 0x02, 0xB6, 0xCA, 0x02, 0xC1, 0xCA, 0x02, 0x95, 0xCA,\
0x03, 0x00, 0xB5, 0xFB, 0xF3, 0x08, 0x77, 0xF2, 0x75, 0x7D, 0xF2, 0xDC, 0xF1, 0x17, 0xC9, 0xF0,\
0x00, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
#endif
#else
#define AS6031_FWC_INFO \
0xF2, 0xDC, 0x61, 0x2B, 0xC9, 0x02, 0xD1, 0xF2, 0xE2, 0x61, 0x4B, 0xCA, 0x02, 0x30, 0xF2, 0xE2,\
0x61, 0x43, 0xCA, 0x02, 0x11, 0xF3, 0x0D, 0x77, 0xB2, 0x73, 0x34, 0x5F, 0xB2, 0x0B, 0xCA, 0x02,\
0x5E, 0xF2, 0xE2, 0x61, 0x03, 0xCA, 0x01, 0xD4, 0xF3, 0x14, 0x63, 0x03, 0xF2, 0xE1, 0x61, 0x0F,\
0xCA, 0x00, 0x3A, 0xF2, 0xE2, 0x61, 0x33, 0x64, 0x3F, 0xCD, 0xF2, 0x88, 0x73, 0xF2, 0x90, 0x77,\
0x21, 0xCE, 0x00, 0xAD, 0x7C, 0xCE, 0x70, 0xF3, 0x0E, 0x77, 0xCB, 0x51, 0xCE, 0x71, 0xAC, 0x73,\
0x31, 0xF3, 0x12, 0x77, 0x34, 0x4E, 0xCA, 0x02, 0x5E, 0x64, 0x0B, 0xF3, 0x13, 0x77, 0x34, 0x5E,\
0xCA, 0x02, 0x5E, 0x64, 0x01, 0xCF, 0xF2, 0x88, 0x73, 0x75, 0x00, 0x00, 0x00, 0x0A, 0xCB, 0x71,\
0xF9, 0xCE, 0x19, 0xF2, 0x9E, 0x7D, 0xCF, 0xF2, 0x80, 0x77, 0xF2, 0x84, 0x37, 0xF2, 0xCA, 0x73,\
0xCB, 0x80, 0x00, 0x00, 0x1F, 0x00, 0xCE, 0x70, 0xCB, 0x74, 0xAF, 0x73, 0xCB, 0x54, 0xCA, 0xF2,\
0x15, 0xCE, 0xB0, 0x74, 0xB4, 0x7D, 0xCA, 0x01, 0xC9, 0xB4, 0x77, 0xCB, 0x29, 0x35, 0x00, 0x00,\
0x01, 0x00, 0x4D, 0x64, 0x13, 0xB4, 0x77, 0xF2, 0x9F, 0x37, 0xCB, 0x29, 0x35, 0x00, 0x00, 0x00,\
0x80, 0x4D, 0xCA, 0x00, 0x66, 0x64, 0x15, 0xB4, 0x77, 0x73, 0xCB, 0x28, 0xF2, 0x9F, 0x7B, 0xCB,\
0x2A, 0x37, 0xCB, 0x29, 0xCE, 0x19, 0x31, 0x5D, 0xCA, 0x00, 0x66, 0xF2, 0xC6, 0x73, 0xCB, 0x80,\
0xFF, 0xFF, 0xE0, 0x00, 0xF2, 0x75, 0x77, 0xF2, 0x9E, 0x27, 0x0B, 0xCB, 0xA1, 0xF2, 0xC6, 0x7C,\
0xB4, 0x77, 0xB3, 0x0B, 0xF3, 0x09, 0x73, 0x31, 0x5D, 0x64, 0x07, 0xA9, 0x73, 0xC0, 0xF2, 0xD8,\
0x2C, 0xCA, 0x01, 0xC9, 0xB4, 0x77, 0xF3, 0x0B, 0x73, 0xF2, 0x88, 0x7B, 0x38, 0x4E, 0xB3, 0xCB,\
0xAF, 0x00, 0x00, 0x00, 0x02, 0xF3, 0x0B, 0x73, 0xF2, 0x90, 0x7B, 0x38, 0x4E, 0xB3, 0xCB, 0xAF,\
0x00, 0x00, 0x00, 0x02, 0xF3, 0x0A, 0x73, 0x79, 0x38, 0x5D, 0x64, 0x10, 0xB3, 0xCB, 0xAF, 0x00,\
0x00, 0x00, 0x04, 0xB4, 0x7D, 0xA9, 0x73, 0xC0, 0xF2, 0xD8, 0x2C, 0xF2, 0xE1, 0x63, 0x0F, 0xB2,\
0x0B, 0x64, 0x0A, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x08, 0xB2, 0xFB, 0x00, 0xF3, 0x0C, 0x73,\
0xF2, 0x78, 0x7B, 0x32, 0x4D, 0xCA, 0x02, 0x01, 0xF2, 0xE0, 0x62, 0x3B, 0xB3, 0xCB, 0xAF, 0x00,\
0x00, 0x00, 0x20, 0xB3, 0x73, 0x30, 0x00, 0x00, 0x00, 0x10, 0x5A, 0xCB, 0xAF, 0x00, 0x00, 0x00,\
0x01, 0x64, 0x09, 0xB3, 0x73, 0x59, 0x7F, 0x00, 0x00, 0x00, 0x01, 0xB5, 0x7B, 0x2A, 0x00, 0x00,\
0x00, 0x36, 0xFE, 0xB3, 0x73, 0xF3, 0x0D, 0x2B, 0xF7, 0x7C, 0x87, 0x7D, 0xF2, 0xD8, 0x73, 0xD0,\
0x88, 0x7C, 0x70, 0x00, 0x00, 0x00, 0x4E, 0x32, 0x5D, 0x64, 0x14, 0xF2, 0x78, 0x73, 0xF3, 0x0D,\
0x2B, 0xF7, 0x7C, 0xF3, 0x0D, 0x73, 0xCE, 0x00, 0x28, 0xF2, 0x79, 0x73, 0xF7, 0x7C, 0xB5, 0x7B,\
0xF3, 0x0D, 0x73, 0xFC, 0x38, 0x4D, 0x64, 0x0A, 0xB5, 0xFB, 0x64, 0x0D, 0xB4, 0x77, 0xF2, 0x9F,\
0x7D, 0xB5, 0x0B, 0xFB, 0xF2, 0xDD, 0xF1, 0xAF, 0xB4, 0x77, 0xF2, 0x9F, 0x7D, 0xF2, 0xDD, 0xF1,\
0x27, 0xF1, 0x2B, 0xF2, 0xDC, 0x0B, 0xCB, 0x01, 0xCD, 0xB5, 0x7B, 0x2A, 0x00, 0x00, 0x00, 0x36,\
0xFE, 0xF7, 0x7D, 0xCF, 0xF2, 0xE4, 0x77, 0x70, 0x01, 0xE8, 0x48, 0x00, 0xCB, 0x71, 0xCE, 0x78,\
0xCE, 0x78, 0xCE, 0x78, 0xCE, 0x38, 0xAE, 0x7C, 0xF2, 0xE4, 0x77, 0x70, 0x01, 0xE8, 0x48, 0x00,\
0xCB, 0x61, 0xCE, 0x30, 0x7A, 0x0F, 0xFF, 0xFF, 0xFF, 0xCB, 0x82, 0xAE, 0x77, 0x21, 0xAF, 0x7C,\
0xCF, 0xF3, 0x0C, 0x73, 0xF2, 0x79, 0x7B, 0x32, 0x4E, 0xB3, 0xCB, 0xAF, 0x00, 0x00, 0x00, 0x10,\
0xCF, 0xF2, 0x82, 0x73, 0xF2, 0x77, 0x77, 0xCB, 0x51, 0xF2, 0x76, 0x77, 0x34, 0xF2, 0x78, 0x7D,\
0xF2, 0x86, 0x73, 0xF2, 0x77, 0x77, 0xCB, 0x51, 0xF2, 0x76, 0x77, 0x34, 0xF2, 0x79, 0x7D, 0xCF,\
0xF2, 0x87, 0x73, 0xF2, 0x83, 0x77, 0x31, 0x09, 0x25, 0x00, 0x00, 0x01, 0x8D, 0xCB, 0x64, 0xF2,\
0x77, 0x7D, 0xF2, 0x87, 0x73, 0x23, 0xF2, 0x83, 0x77, 0x34, 0xF2, 0x77, 0x73, 0xCB, 0x54, 0xF2,\
0x76, 0x7D, 0xCF, 0xF3, 0x10, 0x73, 0xF2, 0xDA, 0x7C, 0xF2, 0xDB, 0x7C, 0x08, 0xCF, 0xF3, 0x11,\
0x73, 0xF3, 0x0E, 0x77, 0xCE, 0x48, 0xCB, 0x71, 0xF2, 0xD8, 0x7C, 0x08, 0x09, 0xCF, 0xF3, 0x0F,\
0x73, 0xCE, 0x00, 0xF3, 0x0E, 0x77, 0xCE, 0x48, 0xCB, 0x71, 0xA9, 0x7C, 0xF3, 0x15, 0x73, 0xAC,\
0x7C, 0x08, 0x09, 0xCF, 0xF3, 0x12, 0x73, 0xF3, 0x0E, 0x77, 0xCE, 0x48, 0xCB, 0x71, 0xAA, 0x7C,\
0xA9, 0x77, 0x34, 0xAA, 0x7D, 0xF3, 0x13, 0x73, 0xF3, 0x0E, 0x77, 0xCE, 0x48, 0xCB, 0x71, 0xA9,\
0x77, 0x34, 0xAB, 0x7D, 0x08, 0x09, 0xCF, 0x70, 0x10, 0x00, 0x00, 0x00, 0xAF, 0x7C, 0x08, 0xCF,\
0xF2, 0x76, 0x0B, 0x2F, 0x00, 0x00, 0x00, 0x12, 0xF2, 0x77, 0x0B, 0x2F, 0x00, 0x4B, 0xAC, 0xE4,\
0xF2, 0x78, 0x0B, 0x2F, 0x00, 0x00, 0x01, 0x8D, 0xF2, 0x79, 0x0B, 0x2F, 0x00, 0x00, 0x01, 0x8D,\
0xCF, 0xCA, 0xF6, 0xAA, 0xCA, 0x02, 0x53, 0xCA, 0x02, 0x5E, 0xCA, 0x02, 0x6E, 0xCA, 0x02, 0x84,\
0xCA, 0x02, 0xA7, 0xCA, 0x02, 0xB0, 0xB5, 0xFB, 0xF3, 0x08, 0x77, 0xF2, 0x75, 0x7D, 0xF2, 0xDC,\
0xF1, 0x17, 0xC9, 0xF0, 0x00, 0xCD, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\
0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00,\
0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00,\
0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00,\
0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00
#endif
volatile u8 *pTxBuffPtr;
volatile u8 *pRxBuffPtr;
//volatile u8 v_rcv_buf[32]; //<2F><><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>
volatile u8 v_rcv_buf[4]; //<2F><><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>
U8TOU32 v_rcv_buf_DIFTOF_DataType[48]; //ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͽ<EFBFBD><CDBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>
//U8TOU32 v_rcv_buf_DIFTOF[64]; //ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>
//U8TOU32 v_rcv_buf_DataType[64]; //ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͽ<EFBFBD><CDBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>
static const u8 sc_gp_fwc_info[] = {AS6031_FWC_INFO}; //FWC
static const u32 fwc_byte_cnt = sizeof(sc_gp_fwc_info); //FWC<57>ֽڸ<D6BD><DAB8><EFBFBD>
static u8 s_gp_fwc_block_buffer[AS6031_FWC_BLOCK_LENGTH + 3] = {0}; //cmd & fwc block buffer
/*fwc block num*/
static u32 s_gp_fwc_block_num = (0 == sizeof(sc_gp_fwc_info) % AS6031_FWC_BLOCK_LENGTH ? sizeof(sc_gp_fwc_info) / AS6031_FWC_BLOCK_LENGTH : sizeof(sc_gp_fwc_info) / AS6031_FWC_BLOCK_LENGTH + 1); //fwc block num
/*fwc last block length*/
static u32 s_gp_fwc_last_block_length = (0 == sizeof(sc_gp_fwc_info) % AS6031_FWC_BLOCK_LENGTH ? AS6031_FWC_BLOCK_LENGTH : sizeof(sc_gp_fwc_info) % AS6031_FWC_BLOCK_LENGTH);
static u8 s_gp_fwc_bolck_sub = 0;
//static float s_diff_averge = 0;
//////////////////////////////////////////
volatile uint32_t v_rx_count = 0; //<2F><><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>
volatile uint32_t v_tx_count = 0; //<2F><><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>
volatile uint8_t v_int_gp22_flag = 0; //GP22<32><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6>еı<D0B5>־
static uint8_t s_gp22_machine_state = GP22_S0;
volatile uint8_t v_spi_isr_machine_state = SPI_ISR_S0;
volatile uint8_t v_spi_rcv_complete = FALSE;
volatile uint8_t v_spi_tx_complete = FALSE;
static uint8_t s_g_sample_msg = SAMPLE_ING;
static uint8_t s_g_err_msg = 0;
static uint8_t para_change_msg = 0;
static uint8_t sample_rate_msg = 0; //<2F><><EFBFBD><EFBFBD>Ƶ<EFBFBD>ʸ<EFBFBD><CAB8>ı<EFBFBD>־
static u8 GP30Sleep_msg = 0; //GP30 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD>־
static u32 FWDload_eer_msg = 0; //GP30 FWD<57><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>־
static u32 FWDload_fail_msg = 0; //GP30 FWD<57><44><EFBFBD><EFBFBD>ʧ<EFBFBD>ܱ<EFBFBD>־
static u32 s_gp22_timer_tick = 0;
void Gp22Init()
{
GP22_IO_Init();
GP22_SPI_INIT();
v_rx_count = 0; //<2F><><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>
v_tx_count = 0; //<2F><><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>
v_int_gp22_flag = 0; //GP22<32><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6>еı<D0B5>־
s_gp22_machine_state = GP22_S0;
v_spi_isr_machine_state = SPI_ISR_S0;
v_spi_rcv_complete = FALSE;
v_spi_tx_complete = FALSE;
GP30Sleep_msg = 0; //GP30 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD>־
s_g_sample_msg = SAMPLE_ING;
s_g_err_msg = 0;
para_change_msg = 0; //GP30<33><30><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD>־
sample_rate_msg = 0;//<2F><><EFBFBD><EFBFBD>GP30<33><30><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>
s_gp22_timer_tick = 0;
FWDload_eer_msg = 0; //GP30 FWD<57><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>־
FWDload_fail_msg= 0;//GP30 FWD<57>²<EFBFBD><C2B2><EFBFBD>ȥ<EFBFBD><EFBFBD><ECB3A3>־
s_gp22_timer_tick = Timer1usGetTick();
// if(4 == FrameCheckParaApp(FramePara_GP30Freq))//<2F><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>
// {
// init_reg[9].data = 0x00010000;
// }
// else if(8 == FrameCheckParaApp(FramePara_GP30Freq))
// {
// init_reg[9].data = 0x80000000;
// }
// else if(16 == FrameCheckParaApp(FramePara_GP30Freq))
// {
// init_reg[9].data = 0x40000000;
// }
// else
// {
// init_reg[9].data = 0x20000000;
// }
init_reg[14].value[3]=(u8)FrameCheckParaApp(FramePara_GP30BufLen);//<2F><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
void Gp22ErrInit()
{
GP22_IO_Init();
GP22_SPI_INIT();
v_rx_count = 0; //<2F><><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>
v_tx_count = 0; //<2F><><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>
v_int_gp22_flag = 0; //GP22<32><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6>еı<D0B5>־
s_gp22_machine_state = GP22_S0;
v_spi_isr_machine_state = SPI_ISR_S0;
v_spi_rcv_complete = FALSE;
v_spi_tx_complete = FALSE;
GP30Sleep_msg = 0; //GP30 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD>־
//s_g_err_msg = 0;
para_change_msg = 0;
sample_rate_msg = 0;//<2F><><EFBFBD><EFBFBD>GP30<33><30><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>
s_gp22_timer_tick = 0;
FWDload_eer_msg = 0; //GP30 FWD<57><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>־
FWDload_fail_msg= 0;//GP30 FWD<57>²<EFBFBD><C2B2><EFBFBD>ȥ<EFBFBD><EFBFBD><ECB3A3>־
s_gp22_timer_tick = Timer1usGetTick();
}
/*GP22<32><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ų<EFBFBD>ʼ<EFBFBD><CABC>*/
static void GP22_IO_Init(void)
{
stc_gpio_cfg_t stcGpioCfg;
DDL_ZERO_STRUCT(stcGpioCfg);
/*********RSTN_GP22<32><32><EFBFBD><EFBFBD>***********/
///< <20>˿ڷ<CBBF><DAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-><3E><><EFBFBD><EFBFBD>
// stcGpioCfg.enDir = GpioDirOut;
// Gpio_Init(GP22_RSTN_PORT, GP22_RSTN_PIN, &stcGpioCfg);
// GP22_RSTN_DISABLE;
/**********nINT_GP22<32>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>**********/
///< <20>˿ڷ<CBBF><DAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
stcGpioCfg.enDir = GpioDirIn;
stcGpioCfg.enPu = GpioPuEnable;
Gpio_Init(GP22_INT_GPIO, GP22_INT_PIN, &stcGpioCfg);
Gpio_EnableIrq(GP22_INT_GPIO, GP22_INT_PIN, GP22_INT_GPIO_MODE);
EnableNvic(GP22_INT_IRQ, GP22_INT_IRQLevel, TRUE);
}
///*************************************************************************************
// * @fun_name: u8 Gp22CheckMeasureMsg(void)
// * @brief : <20><><EFBFBD>̳<EFBFBD><CCB3>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Msg
// * @param[in] : None
// * @param[out] : TRUE FLASE
// * @retval : None
// * @other :
// *************************************************************************************/
//uint8_t Gp22CheckMeasureMsg(void)
//{
// return s_g_measure_msg;
//}
///*************************************************************************************
// * @fun_name: u8 Gp22ClearMeasureMsg(void)
// * @brief : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Msg
// * @param[in] : None
// * @param[out] :None
// * @retval :None
// * @other :
// *************************************************************************************/
//
//void Gp22ClearMeasureMsg(void)
//{
// s_g_measure_msg = FALSE;
//}
/**************<2A><>ѯGP30<33>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>*************************
Function: u8 Gp22IfIdle()
Description:
Input:
return:
Others: <EFBFBD>պ<EFBFBD><EFBFBD><EFBFBD>
*****************************************************************/
u8 Gp22IfIdle(void)
{
return TASK_IDLE;
}
/*******************ǿ<><C7BF>GP30<33><30><EFBFBD><EFBFBD>****************************
Function: void Gp30Sleep ()
Description: GP30ǿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input:
return:
Others: <EFBFBD><EFBFBD>ֹGP30<EFBFBD>̼<EFBFBD><EFBFBD><EFBFBD><EFBFBD>󣬱<EFBFBD><EFBFBD><EFBFBD>һֱ<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD>
**************************************************************/
void Gp30Sleep(void)
{
GP30Sleep_msg = 1;
s_gp22_machine_state = GP22_S0;//<2F><>֤GP30<33>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
///****************<2A><><EFBFBD><EFBFBD>GP22***********************
//Function: u8 Gp22StartTask(u8 task)
//Description: <20><><EFBFBD><EFBFBD>GP22
//Input: task:01<30><31><EFBFBD><EFBFBD>
//return: 1 <20><>ȷ 0<><30><EFBFBD><EFBFBD>
//Others:
// *************************************************/
//u8 Gp22StartTask(u8 task)
//{
// if(GP22_APP_FLOW == task)
// {
// if(TASK_IDLE == Gp22IfIdle())
// {
// s_gp22_machine_state = GP22_S1;
// s_g_sample_msg = SAMPLE_ING;
// s_gp22_timer_tick = Timer1usGetTick();
// return 1;
// }
// else
// {
// s_g_sample_msg = SAMPLE_ERR;
// return 0;
// }
// }
// s_g_sample_msg = SAMPLE_ERR;
// return 0;
//}
/****************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ***********************
Function: u8 Gp22CheckErrMsg()
Description: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
Input:
return: Bit0 <EFBFBD>жϵȴ<EFBFBD><EFBFBD><EFBFBD>ʱ Bit1ͨ<EFBFBD>ų<EFBFBD>ʱ
Others:
*************************************************/
u8 Gp22CheckErrMsg()
{
return s_g_err_msg;
}
/****************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>־***********************
Function: void Gp22ClearErrMsg(u8 clear_bit)
Description: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>־,Msg <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input:
return:
Others:
*************************************************/
void Gp22ClearErrMsg(u8 clear_bit)
{
if (clear_bit >7)
{
return;
}
s_g_err_msg &= ~(1 << clear_bit);
}
/****************<2A><>ѯGP22<32><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ***********************
Function: u8 Gp22CheckSampleMsg()
Description: <EFBFBD><EFBFBD>ѯGP22<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
Input:
return: bit0<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> bit1<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>) bit2<EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD>
Others:
*************************************************/
u8 Gp22CheckSampleMsg()
{
return s_g_sample_msg;
}
/****************<2A><><EFBFBD><EFBFBD>GP30<33><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־***********************
Function: void Gp22ClearSampleMsg(void)
Description: <EFBFBD><EFBFBD><EFBFBD><EFBFBD>GP30<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD>Msg<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input:
return:
Others:
*************************************************/
void Gp22ClearSampleMsg(void)
{
s_g_sample_msg = SAMPLE_ING;
}
/****************<2A><>ѯGP30<33><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>***********************
Function: void Gp22DateBuf(u32 **date_buf)
Description: GP30<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input: date_buf<EFBFBD><EFBFBD> ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>ַ
return:
Others:
*************************************************/
void Gp22DateBuf(u32 **date_buf)
{
*date_buf = &v_rcv_buf_DIFTOF_DataType[0].data;
}
/****************<2A><>ѯGP30<33><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>***********************
Function: void Gp22TypeBuf(u32 **type_buf)
Description: GP30<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input: type_buf <EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>ַ
return:
Others:
*************************************************/
void Gp22TypeBuf(u32 **type_buf)
{
*type_buf = &v_rcv_buf_DIFTOF_DataType[0].data+init_reg[14].value[3];
}
/****************<2A><>ѯGP30<33><30><EFBFBD><EFBFBD>4-8<><38><EFBFBD><EFBFBD><EFBFBD><EFBFBD>TOF<4F><46><EFBFBD><EFBFBD><EFBFBD><EFBFBD>***********************
Function: void Gp22_TOF_AM_Buf(u32 **TOF_AM_buf)
Description: GP30<EFBFBD><EFBFBD><EFBFBD><EFBFBD>4-8<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>TOF<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input: TOF_AM_buf <EFBFBD><EFBFBD>4-8<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>TOF<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>ַ
return:
Others:
*************************************************/
void Gp22_TOF_AM_Buf(u32 **TOF_AM_buf)
{
*TOF_AM_buf = &v_rcv_buf_DIFTOF_DataType[0].data+(init_reg[14].value[3]<<1);
}
/****************<2A><>ѯGP30<33><30><EFBFBD><EFBFBD>UP<55><50><EFBFBD><EFBFBD>***********************
Function: void Gp22UP_AM_Buf(u32 **up_AM_buf)
Description: GP30<EFBFBD><EFBFBD><EFBFBD><EFBFBD>up<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input: up_AM_buf <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>ַ
return:
Others:
*************************************************/
void Gp22UP_AM_Buf(u32 **up_AM_buf)
{
*up_AM_buf = &v_rcv_buf_DIFTOF_DataType[0].data+(init_reg[14].value[3]<<1);
}
/****************<2A><>ѯGP30<33><30><EFBFBD><EFBFBD>DOWN<57><4E><EFBFBD><EFBFBD>***********************
Function: void Gp22UP_DOWN_Buf(u32 **down_AM_buf)
Description: GP30<EFBFBD><EFBFBD><EFBFBD><EFBFBD>down<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input: down_AM_buf <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>ַ
return:
Others:
*************************************************/
void Gp22DOWN_AM_Buf(u32 **down_AM_buf)
{
*down_AM_buf = &v_rcv_buf_DIFTOF_DataType[0].data+(init_reg[14].value[3]<<1)+(init_reg[14].value[3]>>1);
}
/****************<2A><><EFBFBD><EFBFBD>GP30<33><30><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>***********************
Function: void Gp22SetSampleRateMsg (u8 rate)
Description: GP30<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><EFBFBD>
Input: rate<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><EFBFBD>
return:
Others:
********************************************************/
void Gp22SetSampleRateMsg (u8 rate)
{
if(8 == rate)
{
sample_rate_msg = SAMPLE_8HZ;
}
else if(16 == rate)
{
sample_rate_msg= SAMPLE_16HZ;
}
else
{
sample_rate_msg = 0;
}
}
/****************<2A><><EFBFBD><EFBFBD>GP30<33><30><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD>л<EFBFBD><D0BB><EFBFBD>־***********************
Function: void Gp22ClearSampleRateMsg(void)
Description: <EFBFBD><EFBFBD><EFBFBD><EFBFBD>GP30Ƶ<EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD>Msg<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input:
return:
Others:
*************************************************/
void Gp22ClearSampleRateMsg(void)
{
sample_rate_msg = 0;
}
/****************<2A><><EFBFBD><EFBFBD>GP30<33><30><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD>л<EFBFBD><D0BB><EFBFBD>־***********************
Function: u8 Gp22ClearSampleRateMsg(void)
Description: <EFBFBD><EFBFBD><EFBFBD><EFBFBD>GP30Ƶ<EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><EFBFBD>Msg<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input: void
return: sample_rate_msg
Others:
*************************************************/
u8 Gp22CheckSampleRateMsg(void)
{
return sample_rate_msg ;
}
/****************<2A><><EFBFBD><EFBFBD>GP30 BufferLength<74><68><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>***********************
Function: void Gp22SetBufferLength (u32 lenth)
Description: GP30<EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><EFBFBD><EFBFBD>
Input: lenth<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><EFBFBD><EFBFBD>
return:
Others:
*************************************************/
void Gp22SetBufferLength(u8 lenth)
{
para_change_msg = 1;
if(lenth>=GP22_MAX_BUFFERLENTH)
{
lenth=16;
}
if(4 == lenth)
{
init_reg[14].data = 0x04000000;
}
else if(8 == lenth)
{
init_reg[14].data = 0x08000000;
}
else if(16 == lenth)
{
init_reg[14].data = 0x10000000;
}
// else if(32 == lenth)
// {
// init_reg[14].data= 0x20000000;
// }
}
/****************<2A><><EFBFBD><EFBFBD>GP30 maxDIFTOF<4F><46><EFBFBD><EFBFBD>ֵ***********************
Function: void Gp22SetmaxDIFTOF (u32 maxDIFTOF)
Description: GP30 maxDIFTOF
Input: maxDIFTOF<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
return:
Others:
*************************************************/
void Gp22SetmaxDIFTOF(u32 maxDIFTOF)
{
maxDIFTOF=(maxDIFTOF & 0x000000FFU) << 24 | (maxDIFTOF & 0x0000FF00U) << 8 | (maxDIFTOF & 0x00FF0000U) >> 8 | (maxDIFTOF & 0xFF000000U) >> 24;
para_change_msg = 1;
init_reg[11].data= maxDIFTOF;
}
/****************<2A><><EFBFBD><EFBFBD>GP30 minDIFTOF<4F><46><EFBFBD><EFBFBD>ֵ***********************
Function: void Gp22SetminDIFTOF (u32 minDIFTOF)
Description: GP30<EFBFBD><EFBFBD>Сʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
Input: minDIFTOF<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
return:
Others:
*************************************************/
void Gp22SetminDIFTOF(u32 minDIFTOF)
{
minDIFTOF=(minDIFTOF & 0x000000FFU) << 24 | (minDIFTOF & 0x0000FF00U) << 8 | (minDIFTOF & 0x00FF0000U) >> 8 | (minDIFTOF & 0xFF000000U) >> 24;
para_change_msg = 1;
init_reg[10].data= minDIFTOF;
}
/****************<2A><><EFBFBD><EFBFBD>GP30 maxTOF<4F><46><EFBFBD><EFBFBD>ֵ***********************
Function:void Gp22SetmaxTOF (u32 maxTOF)
Description: GP30 maxTOF<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
Input: maxTOF<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󵥳<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
return:
Others:
*************************************************/
void Gp22SetmaxTOF(u32 maxTOF)
{
maxTOF=(maxTOF & 0x000000FFU) << 24 | (maxTOF & 0x0000FF00U) << 8 | (maxTOF & 0x00FF0000U) >> 8 | (maxTOF & 0xFF000000U) >> 24;
para_change_msg = 1;
init_reg[12].data= maxTOF;
}
/****************<2A><><EFBFBD><EFBFBD>GP30 minAMP <20><>С<EFBFBD><D0A1><EFBFBD><EFBFBD>***********************
Function:void Gp22SetminAMP (u32 minAMP)
Description: GP30 minAMP <EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
Input: minAMP <EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
return:
Others:
*************************************************/
void Gp22SetminAMP(u32 minAMP)
{
minAMP=(minAMP & 0x000000FFU) << 24 | (minAMP & 0x0000FF00U) << 8 | (minAMP & 0x00FF0000U) >> 8 | (minAMP & 0xFF000000U) >> 24;
para_change_msg = 1;
init_reg[13].data= minAMP;
}
/****************<2A><>ѯGP22<32><32><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>***********************
Function: u32 Gp22TimeDiffer(u8 time)
Description: <EFBFBD><EFBFBD>ѯGP22<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>
Input: time: 0<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>1˳<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>2<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>3<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD>˳<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
return:
Others:
******************************************************/
uint32_t Gp22TimeDiffer(uint8_t time)
{
return 0;
}
/*****************<2A><>ѯ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>***********************
Function: u8 Gp22IfSleep ()
Description: <EFBFBD><EFBFBD>ѯGP22ģ<EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Input:
Return: 1<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0æµ
Others: <EFBFBD><EFBFBD><EFBFBD><EFBFBD>MainSpace<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӿڣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>ӿ<EFBFBD>
**************************************************************/
u8 Gp22IfSleep()
{
if (1 == GP30Sleep_msg)
return TASK_IDLE;
else
return TASK_BUSY;
}
/*******************<2A><><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0>ʼ<EFBFBD><CABC>****************************
Function: void Gp22PreSleep ()
Description: GP22<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>
Input:
return:
Others: <EFBFBD><EFBFBD><EFBFBD><EFBFBD>MainSpace<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӿڣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>ӿ<EFBFBD>
**************************************************************/
void Gp22PreSleep()
{
}
void Gp22WakeSleep(void)
{
}
/**
* @brief This function handles SPI3 global interrupt.
*/
/**
* @brief Transmit an amount of data in non-blocking mode with Interrupt.
* @param hspi: pointer to a SPI_HandleTypeDef structure that contains
* the configuration information for SPI module.
* @param pData: pointer to data buffer
* @param Size: amount of data to be sent
* @retval HAL status
*/
void GP22_SPI_Enable(void)
{
GP22_SPI_INIT();
gp22_spi.Instance->CR2_f.RXNEIE = 1;
gp22_spi.Instance->CR2_f.TXEIE = 1;
gp22_spi.Instance->CR2_f.INT_EN = 1;
}
void GP22_SPI_Disable(void)
{
GP22_SPI_IO_AI_Init();
if (gp22_spi.Instance == M0P_SPI0) {
EnableNvic(SPI0_IRQn, GP22_PRIORITY, FALSE);
} else if (gp22_spi.Instance == M0P_SPI1) {
EnableNvic(SPI1_IRQn, GP22_PRIORITY, FALSE);
}
gp22_spi.Instance->CR2 = 0x03;
gp22_spi.Instance->CR = 0x14;
Sysctrl_SetPeripheralGate(GP22_SPI_CLK, FALSE);
}
/**
* @brief This function handles SPI1 global interrupt.
*/
void Spi1_IRQHandler(void)
{
gp22_spi_isr_machine();
}
void Gp22MachineDriver()
{
u32 fwc_byte_sum = 0; //FWC csУ<73><D0A3><EFBFBD><EFBFBD>
u32 FWDCheck = 0; //FWD csУ<73><D0A3><EFBFBD><EFBFBD>
switch (s_gp22_machine_state)
{
case GP22_S0:
{
#if defined(DLY_SWITCH)
init_reg[21].data = 0x01000000;
#endif
// if (10 == LcdCheckStateApp()) //<2F>Ǽ춨״̬
// {
// init_reg[9].data = 0x80000000;
// }
// else
// {
// init_reg[9].data = 0x40000000;
// }
if(init_reg[14].value[3]>GP22_MAX_BUFFERLENTH)
{
init_reg[14].value[3]=0x10;
}
if(1 == para_change_msg)
{
para_change_msg = 0;
}
s_gp22_timer_tick = Timer1usGetTick();
s_gp22_machine_state = GP22_S1;
v_spi_isr_machine_state = SPI_ISR_S1;
v_spi_tx_complete = FALSE;
v_spi_rcv_complete = FALSE;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_reset;
GP22_SPI_Enable();
break;
}
case GP22_S1:
{
if(FrameCheckMsgApp(Msg_Por5VReset))
// if(RCC_CSR_BORRSTF == READ_BIT(RCC->CSR, RCC_CSR_BORRSTF)) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿѹ<C7B7><D1B9>Ӳ<EFBFBD><D3B2>λ
{
if((Timer1usGetTick() - s_gp22_timer_tick) > 50000)//50ms
{
// STM32_GPIO_WritePin(GPIOD, STM32_GPIO_PIN_3, STM32_GPIO_PIN_RESET);
// SET_BIT(RCC->CSR, RCC_CSR_RMVF);
FrameClearMsgApp(Msg_Por5VReset);
if (TRUE == v_spi_tx_complete )//ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB7A2> <20><><EFBFBD><EFBFBD>
{
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S2;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 2;
v_rx_count = 4;
pTxBuffPtr = (u8 *)&command5;
pRxBuffPtr = v_rcv_buf;
GP22_SPI_Enable();
}
}
}
else
{
if (TRUE == v_spi_tx_complete )//ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB7A2> <20><><EFBFBD><EFBFBD>
{
// STM32_GPIO_WritePin(GPIOD, STM32_GPIO_PIN_3, STM32_GPIO_PIN_SET);
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S2;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 2;
v_rx_count = 4;
pTxBuffPtr = (u8 *)&command5;
pRxBuffPtr = v_rcv_buf;
GP22_SPI_Enable();
}
}
break;
}
case GP22_S2:
{
if(TRUE == v_spi_rcv_complete)//<2F><>ȡ<EFBFBD><C8A1>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
{
v_spi_rcv_complete = FALSE;
u8_to_u32_data.value[1]=v_rcv_buf[3];
if(4 == ((u8_to_u32_data.value[1])&(1<<2)))
{
FWDload_eer_msg=0;
s_gp22_timer_tick = Timer1usGetTick();
s_gp22_machine_state = GP22_S25;
}
else
{
FWDload_eer_msg++;
if(FWDload_eer_msg>GP30_LOAD_EER_CNT)
{
FWDload_eer_msg=0;
s_g_sample_msg =SAMPLE_ERR;
s_g_err_msg |= 1<<0;
Gp22AppSetGp22Err();
}
else
{
v_spi_tx_complete = TRUE;
s_gp22_machine_state = GP22_S1;
}
}
}
break;
}
case GP22_S25:
{
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S3;
v_spi_isr_machine_state = SPI_ISR_S1;
s_gp22_timer_tick = Timer1usGetTick();
v_tx_count = 6;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command1;
GP22_SPI_Enable();
break;
}
case GP22_S3:
{
if (TRUE == v_spi_tx_complete)//<2F><><EFBFBD>ÿ<EFBFBD><C3BF>Ź<EFBFBD> <20><><EFBFBD><EFBFBD>
{
v_spi_tx_complete = FALSE;
s_gp22_timer_tick = Timer1usGetTick();
s_gp22_machine_state = GP22_S4;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_read0;
GP22_SPI_Enable();
}
break;
}
case GP22_S4:
{
if (TRUE == v_spi_tx_complete)//Measure Cycle Off<66><66><EFBFBD><EFBFBD><EEB7A2> <20><><EFBFBD><EFBFBD>
{
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S5;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 6;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command2;
GP22_SPI_Enable();
}
break;
}
case GP22_S5:
{
if (TRUE == v_spi_tx_complete)//<2F><><EFBFBD>ø<EFBFBD><C3B8><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB7A2> <20><><EFBFBD><EFBFBD>
{
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S20;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 6;
v_rx_count = 0;
s_gp_fwc_bolck_sub=0;
pTxBuffPtr = (u8 *)&command3;
GP22_SPI_Enable();
}
break;
}
case GP22_S20:
{
if(TRUE == v_spi_tx_complete)//<2F>̼<EFBFBD><CCBC><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
{
v_spi_tx_complete=FALSE;
s_gp22_machine_state = GP22_S21;
s_gp22_timer_tick = Timer1usGetTick();
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_read3;
GP22_SPI_Enable();
}
break;
}
case GP22_S21:
{
if (TRUE == v_spi_tx_complete)//<2F><><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
{
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S22;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 2;
v_rx_count = 4;
pTxBuffPtr = (u8 *)&command5;
pRxBuffPtr = v_rcv_buf;
GP22_SPI_Enable();
}
break;
}
case GP22_S22:
{
if(TRUE == v_spi_rcv_complete)//<2F><>ȡ interrupt CHKSUM_FNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
{
v_spi_rcv_complete = FALSE;
u8_to_u32_data.value[3]=v_rcv_buf[3];
if(8 == ((u8_to_u32_data.value[3])&(1<<3)))
{
FWDload_eer_msg=0;
v_spi_tx_complete=FALSE;
s_gp22_timer_tick = Timer1usGetTick();
s_gp22_machine_state = GP22_S23;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 2;
v_rx_count = 4;
pTxBuffPtr = (u8 *)&command12;//<2F><>ȡFWCУ<43><D0A3><EFBFBD><EFBFBD>
pRxBuffPtr = v_rcv_buf;
GP22_SPI_Enable();
}
else
{
FWDload_eer_msg++;
if(FWDload_eer_msg>GP30_LOAD_EER_CNT)
{
FWDload_eer_msg=0;
s_g_sample_msg =SAMPLE_ERR;
s_g_err_msg |= 1<<0;
Gp22AppSetGp22Err();
}
else
{
v_spi_tx_complete = TRUE;
s_gp22_machine_state = GP22_S21;
}
}
}
break;
}
case GP22_S23:
{
if(TRUE == v_spi_rcv_complete)//<2F><>ȡ interrupt FW_TRANS_FNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
{
v_spi_rcv_complete = FALSE;
v_spi_tx_complete=FALSE;
s_gp22_timer_tick = Timer1usGetTick();
u8_to_u32_data.value[3]=v_rcv_buf[0];
u8_to_u32_data.value[2]=v_rcv_buf[1];
u8_to_u32_data.value[1]=v_rcv_buf[2];
u8_to_u32_data.value[0]=v_rcv_buf[3];
//<2F><><EFBFBD><EFBFBD>FWD1<44><31>У<EFBFBD><D0A3><EFBFBD><EFBFBD>
for(u8 i=0;i<16;i++)
{
FWDCheck +=(u32)init_reg[9+i].value[0]+(u32)init_reg[9+i].value[1]+(u32)init_reg[9+i].value[2]+(u32)init_reg[9+i].value[3];//<2F><><EFBFBD><EFBFBD>FWD1У<31><D0A3><EFBFBD><EFBFBD>
}
init_reg[125].data=(FWDCheck & 0x000000FFU) << 24 | (FWDCheck & 0x0000FF00U) << 8 | (FWDCheck & 0x00FF0000U) >> 8 | (FWDCheck & 0xFF000000U) >> 24;
FWDCheck=0;
//<2F><><EFBFBD><EFBFBD>FWD2<44><32>У<EFBFBD><D0A3><EFBFBD><EFBFBD>
for(u8 j=0;j<46;j++)
{
FWDCheck +=(u32)init_reg[79+j].value[0]+(u32)init_reg[79+j].value[1]+(u32)init_reg[79+j].value[2]+(u32)init_reg[79+j].value[3];//<2F><><EFBFBD><EFBFBD>FWD1У<31><D0A3><EFBFBD><EFBFBD>
}
init_reg[126].data=(FWDCheck & 0x000000FFU) << 24 | (FWDCheck & 0x0000FF00U) << 8 | (FWDCheck & 0x00FF0000U) >> 8 | (FWDCheck & 0xFF000000U) >> 24;
//<2F><><EFBFBD><EFBFBD>FWC<57><43>У<EFBFBD><D0A3><EFBFBD><EFBFBD>
for(u16 k=0;k<fwc_byte_cnt;k++)
{
fwc_byte_sum=fwc_byte_sum+(u32)sc_gp_fwc_info[k];
}
init_reg[127].data=(fwc_byte_sum & 0x000000FFU) << 24 | (fwc_byte_sum & 0x0000FF00U) << 8 | (fwc_byte_sum & 0x00FF0000U) >> 8 | (fwc_byte_sum & 0xFF000000U) >> 24;
if(fwc_byte_sum != u8_to_u32_data.data)
{
s_gp22_machine_state = GP22_S6;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_read1;
GP22_SPI_Enable();
}
else
{
s_gp22_machine_state = GP22_S31;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 2;
v_rx_count = 4;
pTxBuffPtr = (u8 *)&command13;//<2F><>ȡFWD1У<31><D0A3><EFBFBD><EFBFBD>
pRxBuffPtr = v_rcv_buf;
GP22_SPI_Enable();
// SPI_tickstart_new = Timer1usGetTick();
}
}
break;
}
case GP22_S31:
{
if(TRUE == v_spi_rcv_complete)//<2F><>ȡ interrupt FW_TRANS_FNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
{
v_spi_rcv_complete = FALSE;
v_spi_tx_complete=FALSE;
s_gp22_timer_tick = Timer1usGetTick();
u8_to_u32_data.value[0]=v_rcv_buf[0];
u8_to_u32_data.value[1]=v_rcv_buf[1];
u8_to_u32_data.value[2]=v_rcv_buf[2];
u8_to_u32_data.value[3]=v_rcv_buf[3];
if(init_reg[125].data != u8_to_u32_data.data)
{
s_gp22_machine_state = GP22_S7;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_read1;
GP22_SPI_Enable();
}
else
{
s_gp22_machine_state = GP22_S32;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 2;
v_rx_count = 4;
pTxBuffPtr = (u8 *)&command14;//<2F><>ȡFWD2У<32><D0A3><EFBFBD><EFBFBD>
pRxBuffPtr = v_rcv_buf;
GP22_SPI_Enable();
}
}
break;
}
case GP22_S32:
{
if(TRUE == v_spi_rcv_complete)//<2F><>ȡ interrupt FW_TRANS_FNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
{
v_spi_rcv_complete = FALSE;
v_spi_tx_complete=FALSE;
s_gp22_timer_tick = Timer1usGetTick();
u8_to_u32_data.value[0]=v_rcv_buf[0];
u8_to_u32_data.value[1]=v_rcv_buf[1];
u8_to_u32_data.value[2]=v_rcv_buf[2];
u8_to_u32_data.value[3]=v_rcv_buf[3];
if(init_reg[126].data != u8_to_u32_data.data)
{
s_gp22_machine_state = GP22_S7;
}
else
{
s_gp22_machine_state = GP22_S30;
}
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_read1;
GP22_SPI_Enable();
}
break;
}
case GP22_S6://<2F><>ʼд<CABC><D0B4>FWC
{
if(TRUE == v_spi_tx_complete)
{
u32 temp_i=0;
v_spi_tx_complete=FALSE;
s_gp22_timer_tick = Timer1usGetTick();
if(s_gp_fwc_bolck_sub < s_gp_fwc_block_num - 1)
{
s_gp_fwc_block_buffer[0] = 0x5C;
s_gp_fwc_block_buffer[1] = s_gp_fwc_bolck_sub / 2;
s_gp_fwc_block_buffer[2] = (s_gp_fwc_bolck_sub % 2) * 128;
for(temp_i = 0; temp_i < AS6031_FWC_BLOCK_LENGTH; temp_i++)
{
s_gp_fwc_block_buffer[3 + temp_i] = sc_gp_fwc_info[temp_i + s_gp_fwc_bolck_sub * AS6031_FWC_BLOCK_LENGTH];
}
v_spi_isr_machine_state = SPI_ISR_S1;;
v_tx_count = AS6031_FWC_BLOCK_LENGTH + 3;
v_rx_count = 0;
pTxBuffPtr = (u8*)s_gp_fwc_block_buffer;
GP22_SPI_Enable();
s_gp_fwc_bolck_sub++;
}
else
{
s_gp_fwc_block_buffer[0] = 0x5C;
s_gp_fwc_block_buffer[1] = s_gp_fwc_bolck_sub / 2;
s_gp_fwc_block_buffer[2] = (s_gp_fwc_bolck_sub % 2) * 128;
for(temp_i = 0; temp_i < s_gp_fwc_last_block_length; temp_i++)
{
s_gp_fwc_block_buffer[3 + temp_i] = sc_gp_fwc_info[temp_i + s_gp_fwc_bolck_sub * AS6031_FWC_BLOCK_LENGTH];
}
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = s_gp_fwc_last_block_length + 3;
v_rx_count = 0;
pTxBuffPtr = (u8*)s_gp_fwc_block_buffer;
GP22_SPI_Enable();
s_gp22_machine_state = GP22_S7;
}
}
break;
}
case GP22_S7://<2F><>ʼд<CABC><D0B4>FWD
{
if(TRUE == v_spi_tx_complete)//Write Firmware Code<64><65><EFBFBD><EFBFBD><EEB7A2> <20><><EFBFBD><EFBFBD>
{
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S8;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 510;
v_rx_count = 0;
v_spi_isr_machine_state = SPI_ISR_S1;
pTxBuffPtr = (u8 *)&init_reg[0].value[2];
GP22_SPI_Enable();
}
break;
}
case GP22_S8:
{
if (TRUE == v_spi_tx_complete)//<2F><>GP30<33>жϱ<D0B6>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EEB7A2> <20><><EFBFBD><EFBFBD>
{
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S9;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_read1;
GP22_SPI_Enable();
}
break;
}
case GP22_S9:
{
if (TRUE == v_spi_tx_complete)//<2F><>GP30<33>жϱ<D0B6>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EEB7A2> <20><><EFBFBD><EFBFBD>
{
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S10;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 6;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command6;//<2F><>ʼִ<CABC>й̼<D0B9><CCBC>
GP22_SPI_Enable();
}
break;
}
case GP22_S10:
{
if (TRUE == v_spi_tx_complete)//Execute FW_STORE / FW_STORE_LOCK<43><4B><EFBFBD><EFBFBD><EEB7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
{
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S11;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 2;
v_rx_count = 4;
pTxBuffPtr = (u8 *)&command5;
pRxBuffPtr = v_rcv_buf;
GP22_SPI_Enable();
}
break;
}
case GP22_S11:
{
if(TRUE == v_spi_rcv_complete)//<2F><>ȡ interrupt FW_TRANS_FNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
{
v_spi_rcv_complete = FALSE;
u8_to_u32_data.value[3]=v_rcv_buf[3];
if(2 == ((u8_to_u32_data.value[3])&(1<<1)))
{
FWDload_eer_msg=0;
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S12;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_read1;
GP22_SPI_Enable();
}
else
{
FWDload_eer_msg++;
if(FWDload_eer_msg>GP30_LOAD_EER_CNT)
{
FWDload_eer_msg=0;
s_g_sample_msg =SAMPLE_ERR;
s_g_err_msg |= 1<<0;
Gp22AppSetGp22Err();
}
else
{
v_spi_tx_complete = TRUE;
s_gp22_machine_state = GP22_S10;
}
}
}
break;
}
case GP22_S12:
{
if (TRUE == v_spi_tx_complete)//<2F><><EFBFBD><EFBFBD> interrupt FW_TRANS_FNS<4E><53><EFBFBD><EFBFBD><EEB7A2> <20><><EFBFBD><EFBFBD>
{
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S26;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_read3;
GP22_SPI_Enable();
}
break;
}
case GP22_S26:
{
if (TRUE == v_spi_tx_complete)//<2F><><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
{
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S27;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 2;
v_rx_count = 4;
pTxBuffPtr = (u8 *)&command5;
pRxBuffPtr = v_rcv_buf;
GP22_SPI_Enable();
}
break;
}
case GP22_S27:
{
if(TRUE == v_spi_rcv_complete)//<2F><>ȡ interrupt CHKSUM_FNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
{
v_spi_rcv_complete = FALSE;
u8_to_u32_data.value[3]=v_rcv_buf[3];
if(8 == ((u8_to_u32_data.value[3])&(1<<3)))
{
FWDload_eer_msg=0;
v_spi_tx_complete=FALSE;
s_gp22_timer_tick = Timer1usGetTick();
s_gp22_machine_state = GP22_S28;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 2;
v_rx_count = 4;
pTxBuffPtr = (u8 *)&command13;//<2F><>ȡFWD1У<31><D0A3><EFBFBD><EFBFBD>
pRxBuffPtr = v_rcv_buf;
GP22_SPI_Enable();
}
else
{
FWDload_eer_msg++;
if(FWDload_eer_msg>GP30_LOAD_EER_CNT)
{
FWDload_eer_msg=0;
s_g_sample_msg =SAMPLE_ERR;
s_g_err_msg |= 1<<0;
Gp22AppSetGp22Err();
}
else
{
v_spi_tx_complete = TRUE;
s_gp22_machine_state = GP22_S26;
}
}
}
break;
}
case GP22_S28:
{
if(TRUE == v_spi_rcv_complete)//<2F><>ȡ interrupt FW_TRANS_FNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
{
v_spi_rcv_complete = FALSE;
v_spi_tx_complete=FALSE;
s_gp22_timer_tick = Timer1usGetTick();
u8_to_u32_data.value[0]=v_rcv_buf[0];
u8_to_u32_data.value[1]=v_rcv_buf[1];
u8_to_u32_data.value[2]=v_rcv_buf[2];
u8_to_u32_data.value[3]=v_rcv_buf[3];
// //<2F><><EFBFBD><EFBFBD>FWC<57><43>У<EFBFBD><D0A3><EFBFBD><EFBFBD>
// for(u16 k=0;k<fwc_byte_cnt;k++)
// {
// fwc_byte_sum=fwc_byte_sum+(u32)sc_gp_fwc_info[k];
// }
// init_reg[127].data=(fwc_byte_sum & 0x000000FFU) << 24 | (fwc_byte_sum & 0x0000FF00U) << 8 | (fwc_byte_sum & 0x00FF0000U) >> 8 | (fwc_byte_sum & 0xFF000000U) >> 24;
if(init_reg[125].data != u8_to_u32_data.data)
{
FWDload_fail_msg++;
if(FWDload_fail_msg>GP30_LOAD_FAIL_CNT)
{
FWDload_fail_msg=0;
s_g_sample_msg =SAMPLE_ERR;
s_g_err_msg |= 1<<0;
Gp22AppSetGp22Err();
}
else
{
s_gp22_machine_state = GP22_S7;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_read1;
GP22_SPI_Enable();
}
}
else
{
s_gp22_machine_state = GP22_S29;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 2;
v_rx_count = 4;
pTxBuffPtr = (u8 *)&command14;//<2F><>ȡFWD2У<32><D0A3><EFBFBD><EFBFBD>
pRxBuffPtr = v_rcv_buf;
GP22_SPI_Enable();
}
}
break;
}
case GP22_S29:
{
if(TRUE == v_spi_rcv_complete)//<2F><>ȡ interrupt FW_TRANS_FNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
{
v_spi_rcv_complete = FALSE;
v_spi_tx_complete=FALSE;
s_gp22_timer_tick = Timer1usGetTick();
u8_to_u32_data.value[0]=v_rcv_buf[0];
u8_to_u32_data.value[1]=v_rcv_buf[1];
u8_to_u32_data.value[2]=v_rcv_buf[2];
u8_to_u32_data.value[3]=v_rcv_buf[3];
if(init_reg[126].data != u8_to_u32_data.data)
{
FWDload_fail_msg++;
if(FWDload_fail_msg>GP30_LOAD_FAIL_CNT)
{
FWDload_fail_msg=0;
s_g_sample_msg =SAMPLE_ERR;
s_g_err_msg |= 1<<0;
Gp22AppSetGp22Err();
}
else
{
s_gp22_machine_state = GP22_S7;
}
}
else
{
FWDload_fail_msg=0;
s_gp22_machine_state = GP22_S30;
}
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_read1;
GP22_SPI_Enable();
}
break;
}
case GP22_S30:
{
if (TRUE == v_spi_tx_complete)//<2F><><EFBFBD><EFBFBD> interrupt FW_TRANS_FNS<4E><53><EFBFBD><EFBFBD><EEB7A2> <20><><EFBFBD><EFBFBD>
{
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S13;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 6;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command7;//<2F>رչ̼<D5B9><CCBC><EFBFBD><EFBFBD><EFBFBD>
GP22_SPI_Enable();
}
break;
}
case GP22_S13:
{
if (TRUE == v_spi_tx_complete)//Disable FW Transaction<6F><6E><EFBFBD><EFBFBD><EEB7A2> <20><><EFBFBD><EFBFBD>
{
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_reset;//ϵͳ<CFB5><CDB3>λ
GP22_SPI_Enable();
s_gp22_machine_state = GP22_S33;
}
break;
}
case GP22_S33:
{
if (TRUE == v_spi_tx_complete )//ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB7A2> <20><><EFBFBD><EFBFBD>
{
s_gp22_timer_tick = Timer1usGetTick();
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S34;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 2;
v_rx_count = 4;
pTxBuffPtr = (u8 *)&command5;
pRxBuffPtr = v_rcv_buf;
GP22_SPI_Enable();
}
break;
}
case GP22_S34:
{
if(TRUE == v_spi_rcv_complete)//<2F><>ȡ<EFBFBD><C8A1>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
{
v_spi_rcv_complete = FALSE;
u8_to_u32_data.value[1]=v_rcv_buf[3];
if(4 == ((u8_to_u32_data.value[1])&(1<<2)))
{
FWDload_eer_msg=0;
s_gp22_timer_tick = Timer1usGetTick();
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_read1;
GP22_SPI_Enable();
s_gp22_machine_state = GP22_S14;
}
else
{
FWDload_eer_msg++;
if(FWDload_eer_msg>GP30_LOAD_EER_CNT)
{
FWDload_eer_msg=0;
s_g_sample_msg =SAMPLE_ERR;
s_g_err_msg |= 1<<0;
Gp22AppSetGp22Err();
}
else
{
v_spi_tx_complete = TRUE;
s_gp22_machine_state = GP22_S33;
}
}
}
break;
}
case GP22_S14:
{
if (TRUE == v_spi_tx_complete)//Disable FW Transaction<6F><6E><EFBFBD><EFBFBD><EEB7A2> <20><><EFBFBD><EFBFBD>
{
v_int_gp22_flag = 0;
v_spi_tx_complete = FALSE;
s_gp22_timer_tick = Timer1usGetTick();
RtccSetTimer(RTCC_GP30_INTERRUPT_TIME, (u16)((init_reg[9].value[3]*init_reg[14].value[3]*125/128)/1000+3)); //GP30<33>жϳ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
// LPTimer0Init((init_reg[9].value[3]*init_reg[14].value[3]*125/128)+3000);
// RtccWakeupClearMsg();
// RtccAutoWakeupTimerEnable((u16)((init_reg[9].value[3]*init_reg[14].value[3]*125/128)+3000));
//s_gp22_machine_state = GP22_S14;
s_gp22_machine_state = GP22_S15;
}
break;
}
case GP22_S15:
{
if(0 == RtccCheckTimer(RTCC_GP30_INTERRUPT_TIME))
{
// RtccWakeupClearMsg();
s_g_sample_msg =SAMPLE_ERR;
s_g_err_msg |= 1<<0;
Gp22AppSetGp22Err();
}
else
{
if(1 == v_int_gp22_flag)//<2F>ж<EFBFBD>GP30<33>жϱ<D0B6>־
{
g_testself_result |= 0x0100;
GP30Sleep_msg = 0;
v_int_gp22_flag = 0;
RtccSetTimer(RTCC_GP30_INTERRUPT_TIME, (u16)((init_reg[9].value[3]*init_reg[14].value[3]*125/128)/1000+3)); //GP30<33>жϳ<D0B6>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
// while (!M0P_LPTIMER0->CR_f.WT_FLAG)
// {
// ;
// }
// M0P_LPTIMER0->ARR = 65536 - ((init_reg[9].value[3]*init_reg[14].value[3]*125/128)+3000);
// RtccWakeupClearMsg();
// RtccAutoWakeupTimerEnable((u16)((init_reg[9].value[3]*init_reg[14].value[3]*125/128)+3000));
s_gp22_timer_tick = Timer1usGetTick();
s_gp22_machine_state = GP22_S18;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 2;
// v_rx_count = 4*init_reg[14].value[3];
v_rx_count = 12*init_reg[14].value[3];//<2F><>ΪTYPE<50><45>DIFTOFһ<46><D2BB>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>
pTxBuffPtr = (u8 *)&command8;
pRxBuffPtr = &v_rcv_buf_DIFTOF_DataType[0].value[0];
GP22_SPI_Enable();
}
else
{
if((1 == para_change_msg)&&(TASK_IDLE == EepIfIdle()))
{
GP30Sleep_msg = 0;
para_change_msg = 0;
s_gp22_machine_state = GP22_S0;
}
else if(SAMPLE_8HZ==Gp22CheckSampleRateMsg())
{
Gp22ClearSampleRateMsg();
GP30Sleep_msg = 0;
s_gp22_timer_tick = Timer1usGetTick();
s_gp22_machine_state = GP22_S16;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 6;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command16;
GP22_SPI_Enable();
}
else if(SAMPLE_16HZ==Gp22CheckSampleRateMsg())
{
Gp22ClearSampleRateMsg();
GP30Sleep_msg = 0;
s_gp22_timer_tick = Timer1usGetTick();
s_gp22_machine_state = GP22_S16;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 6;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command15;
GP22_SPI_Enable();
}
else
{
GP30Sleep_msg = 1;
s_gp22_machine_state = GP22_S15;
}
}
}
break;
}
case GP22_S16:
{
if(TRUE == v_spi_tx_complete)
{
v_spi_rcv_complete = FALSE;
v_spi_tx_complete = FALSE;
v_tx_count = 0;
v_rx_count = 0;
s_gp22_machine_state = GP22_S15;
}
else
{
s_gp22_machine_state = GP22_S16;
}
break;
}
// case GP22_S17:
// {
// s_gp22_machine_state = GP22_S18;
// v_spi_isr_machine_state = SPI_ISR_S1;
// v_tx_count = 2;
// v_rx_count = 4*init_reg[14].value[3];
// command9[1] = 54+init_reg[14].value[3];
// pTxBuffPtr = (u8 *)&command9;
// pRxBuffPtr = &v_rcv_buf_DataType[0].value[0];
// GP22_SPI_Enable();
// break;
// }
case GP22_S18:
{
if (TRUE == v_spi_rcv_complete)
{
v_spi_rcv_complete = FALSE;
v_spi_tx_complete = FALSE;
s_gp22_machine_state = GP22_S19;
v_spi_isr_machine_state = SPI_ISR_S1;
v_tx_count = 1;
v_rx_count = 0;
pTxBuffPtr = (u8 *)&command_read1;//<2F><><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>
GP22_SPI_Enable();
}
else
{
s_gp22_machine_state = GP22_S18;
}
break;
}
case GP22_S19:
{
if(TRUE == v_spi_tx_complete)
{
v_spi_rcv_complete = FALSE;
v_spi_tx_complete = FALSE;
v_tx_count = 0;
v_rx_count = 0;
s_g_sample_msg =SAMPLE_OK;
s_gp22_machine_state = GP22_S15;
}
else
{
s_gp22_machine_state = GP22_S19;
}
break;
}
default:
{
break;
}
}
if ((s_gp22_machine_state != GP22_S15)&&(s_gp22_machine_state != GP22_S0))
{
if((Timer1usGetTick() - s_gp22_timer_tick) >= GP22_OVERTIME)
{
s_g_err_msg |= 1<<1;
s_g_sample_msg = SAMPLE_ERR;
v_rx_count = 0;
v_tx_count = 0;
//devi
// SET_BIT(RCC->APB1ENR1, RCC_APB1ENR1_PWREN); //ON
// __NOP();
// __NOP();
// SET_BIT(PWR->CR1, PWR_CR1_DBP); //enable
// while(PWR_CR1_DBP != READ_BIT(PWR->CR1, PWR_CR1_DBP)); /* Wait for Backup domain Write protection disable */
// MODIFY_REG(RCC->BDCR, RCC_BDCR_LSCOSEL | RCC_BDCR_LSCOEN, RCC_BDCR_LSCOSEL | RCC_BDCR_LSCOEN); //RCC_LSCOSOURCE_LSE
// __NOP();
// __NOP();
// CLEAR_BIT(PWR->CR1, PWR_CR1_DBP); //Disable
// CLEAR_BIT(RCC->APB1ENR1, RCC_APB1ENR1_PWREN);
Gp22AppSetGp22Err();
}
}
}
void gp22_spi_isr_machine(void)
{
volatile uint8_t temp = 0;
Spi_ClearStatus(GP22_SPI); //<2F><><EFBFBD>жϱ<D0B6>־
switch (v_spi_isr_machine_state)
{
case SPI_ISR_S0:
{
// temp = SPIBUF;
// FREE_SSN;
v_spi_isr_machine_state = SPI_ISR_S0;
break;
}
case SPI_ISR_S1:
{
gp22_spi.Instance->CR2_f.TXEIE = 0;
GP22_SSN_ENABLE;
Spi_SendData(GP22_SPI, *pTxBuffPtr++);
v_tx_count--;
v_spi_isr_machine_state = SPI_ISR_S2;
break;
}
case SPI_ISR_S2:
{
if(v_tx_count == 0)
{
if(v_rx_count == 0)
{
GP22_SSN_DISABLE;
v_spi_isr_machine_state = SPI_ISR_S0;
v_spi_tx_complete = TRUE;
GP22_SPI_Disable();
}
else
{
temp = Spi_ReceiveData(GP22_SPI);
Spi_SendData(GP22_SPI, 0x00);
v_spi_isr_machine_state = SPI_ISR_S3;
}
}
else
{
temp = Spi_ReceiveData(GP22_SPI);
Spi_SendData(GP22_SPI, *pTxBuffPtr++);
v_tx_count--;
v_spi_isr_machine_state = SPI_ISR_S2;
}
break;
}
case SPI_ISR_S3:
{
*pRxBuffPtr++ = Spi_ReceiveData(GP22_SPI);
v_rx_count--;
if(v_rx_count == 0)
{
GP22_SSN_DISABLE;
v_spi_isr_machine_state = SPI_ISR_S0;
v_spi_rcv_complete = TRUE;
GP22_SPI_Disable();
}
else
{
Spi_SendData(GP22_SPI, 0x00);
v_spi_isr_machine_state = SPI_ISR_S3;
}
break;
}
default:
{
break;
}
}
}
/* SPI init function */
void GP22_SPI_INIT(void)
{
stc_spi_cfg_t stcSpiCfg;
Reset_RstPeripheral0(GP22_SPI_RESET);
GP22_SPI_IOInit();
Sysctrl_SetPeripheralGate(GP22_SPI_CLK, TRUE); ///<ʹ<><CAB9>SPIģ<49><C4A3>ʱ<EFBFBD><CAB1>
gp22_spi.Instance = GP22_SPI;
gp22_spi.Instance->CR_f.SPEN = 0;
gp22_spi.Init.CLKPolarity = GP22_SPI_POLARITY_LOW;
gp22_spi.Init.CLKPhase = GP22_SPI_PHASE_2EDGE;
gp22_spi.Init.BaudRatePrescaler = GP22_SPI_BR_USE;
stcSpiCfg.enSpiMode = SpiMskMaster; //<2F><><EFBFBD><EFBFBD>
stcSpiCfg.enPclkDiv = (en_spi_clk_div_t)gp22_spi.Init.BaudRatePrescaler;
stcSpiCfg.enCPHA = (en_spi_cpha_t)gp22_spi.Init.CLKPhase;
stcSpiCfg.enCPOL = (en_spi_cpol_t)gp22_spi.Init.CLKPolarity;
Spi_Init(gp22_spi.Instance, &stcSpiCfg);
if (gp22_spi.Instance == M0P_SPI0)
{
EnableNvic(SPI0_IRQn, GP22_PRIORITY, TRUE);
}
else if (gp22_spi.Instance == M0P_SPI1)
{
EnableNvic(SPI1_IRQn, GP22_PRIORITY, TRUE);
}
gp22_spi.Instance->CR_f.SPEN = 1;
}
/**
* @brief This function handles INT_GP22 interrupt.
*/
void Gp22_INT_IRQHandler(void)
{
if (TRUE == Gpio_GetIrqStatus(GP22_INT_GPIO, GP22_INT_PIN))
{
v_int_gp22_flag = 1;
Gpio_ClearIrq(GP22_INT_GPIO, GP22_INT_PIN);
}
}
void PortD_IRQHandler(void)
{
Gp22_INT_IRQHandler();
}
void GP22_SPI_IOInit(void)
{
stc_gpio_cfg_t stcGpioCfg;
DDL_ZERO_STRUCT(stcGpioCfg);
stcGpioCfg.enDir = GpioDirOut;
//SSN
Gpio_Init(GP22_SSN_PORT, GP22_SSN_PIN, &stcGpioCfg);
Gpio_SetAfMode(GP22_SSN_PORT, GP22_SSN_PIN, GP22_SSN_AF);
Gpio_WriteOutputIO(GP22_SSN_PORT, GP22_SSN_PIN, GPIO_PIN_SET);
GP22_SSN_DISABLE;
//SCK
Gpio_Init(GP22_SCK_GPIO, GP22_SCK_PIN, &stcGpioCfg);
Gpio_SetAfMode(GP22_SCK_GPIO, GP22_SCK_PIN, GP22_SCK_AF);
Gpio_WriteOutputIO(GP22_SCK_GPIO, GP22_SCK_PIN, GPIO_PIN_RESET);
//MOSI
Gpio_Init(GP22_SI_GPIO, GP22_SI_PIN, &stcGpioCfg);
Gpio_SetAfMode(GP22_SI_GPIO, GP22_SI_PIN, GP22_SI_AF);
Gpio_WriteOutputIO(GP22_SI_GPIO, GP22_SI_PIN, GPIO_PIN_RESET);
//MISO
stcGpioCfg.enDir = GpioDirIn;
stcGpioCfg.enPd = GpioPdEnable; //<2F><><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
Gpio_Init(GP22_SO_GPIO, GP22_SO_PIN, &stcGpioCfg);
Gpio_SetAfMode(GP22_SO_GPIO, GP22_SO_PIN, GP22_SO_AF); //<2F>˿<EFBFBD>ΪGPIO
}
void GP22_SPI_IO_AI_Init(void)
{
//<2F>ָ<EFBFBD>Ϊ<EFBFBD><CEAA>ͨGPIO <20><><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>ƽ
stc_gpio_cfg_t stcGpioCfg;
DDL_ZERO_STRUCT(stcGpioCfg);
stcGpioCfg.enDir = GpioDirOut;
//SCK
Gpio_Init(GP22_SCK_GPIO, GP22_SCK_PIN, &stcGpioCfg);
Gpio_SetAfMode(GP22_SCK_GPIO, GP22_SCK_PIN, GP22_GPIO_AF_NULL); //<2F>˿<EFBFBD>ΪGPIO
Gpio_WriteOutputIO(GP22_SCK_GPIO, GP22_SCK_PIN, GPIO_PIN_RESET);
//MOSI
Gpio_Init(GP22_SI_GPIO, GP22_SI_PIN, &stcGpioCfg);
Gpio_SetAfMode(GP22_SI_GPIO, GP22_SI_PIN, GP22_GPIO_AF_NULL); //<2F>˿<EFBFBD>ΪGPIO
Gpio_WriteOutputIO(GP22_SI_GPIO, GP22_SI_PIN, GPIO_PIN_RESET);
//MISO
Gpio_Init(GP22_SO_GPIO, GP22_SO_PIN, &stcGpioCfg);
Gpio_SetAfMode(GP22_SO_GPIO, GP22_SO_PIN, GP22_GPIO_AF_NULL); //<2F>˿<EFBFBD>ΪGPIO
Gpio_WriteOutputIO(GP22_SO_GPIO, GP22_SO_PIN, GPIO_PIN_RESET);
//SSN
Gpio_Init(GP22_SSN_PORT, GP22_SSN_PIN, &stcGpioCfg);
Gpio_SetAfMode(GP22_SSN_PORT, GP22_SSN_PIN, GP22_GPIO_AF_NULL); //<2F>˿<EFBFBD>ΪGPIO
Gpio_WriteOutputIO(GP22_SSN_PORT, GP22_SSN_PIN, GPIO_PIN_SET);
}
u8 GP22_Check_IntMsg(void)
{
return v_int_gp22_flag;
}