83 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef JQDRIVER_H_
 | ||
| #define JQDRIVER_H_
 | ||
| 
 | ||
| #include "base/define.h"
 | ||
| #include "hardware/gpio_cfg.h"
 | ||
| #include "hardware/adc_cfg.h"
 | ||
| #include "base/delay.h"
 | ||
| 
 | ||
| 
 | ||
| #define JQBUS_IDLE						JQBUS_W_1
 | ||
| #define JQBUS_RWIDLE					JQBUS_W_1
 | ||
| 
 | ||
| 
 | ||
| #define JQBUS_H_PLUS					300
 | ||
| #define JQBUS_L_PLUS          700
 | ||
| #define JQ_Read_AD_Sample_C  		 140
 | ||
| #define JQ_Read_AD_Sample_C_IDLE 80
 | ||
| 
 | ||
| extern volatile uint16_t JQ_FreeBack_MaxCur;
 | ||
| extern volatile uint16_t JQ_FreeBack_MaxTime;
 | ||
| extern volatile uint16_t JQ_FreeBack_MinCur;
 | ||
| extern volatile uint16_t JQ_FreeBack_MinTime;
 | ||
| extern volatile uint16_t JQ_CommEnd_MaxCur ;
 | ||
| extern volatile uint8_t JQ_CommEnd_CurEn ;
 | ||
| 
 | ||
| 
 | ||
| //@brief 读OTP
 | ||
| uint8_t JQ_ReadOTP(uint16_t netid,uint8_t otp_bgaddr,uint8_t read_count,uint8_t* readbuf);
 | ||
| //@breif 读取单发状态
 | ||
| uint8_t JQ_ReadState(uint16_t netid,uint8_t* state);
 | ||
| //@brief 写延时
 | ||
| void JQ_WriteDelay(uint16_t netid,uint16_t delay);
 | ||
| //@brief 读延时
 | ||
| uint8_t JQ_ReadDelay(uint16_t netid,uint16_t* delaybuf);
 | ||
| //@brief 启动UID扫描
 | ||
| void JQ_ScanUIDBegin(void);
 | ||
| //@brief 扫描模式读取UID
 | ||
| uint8_t JQ_ScanReadUID(uint16_t begnet,uint8_t* uidbuf);
 | ||
| //@brief 充电
 | ||
| void JQ_Chage(uint16_t bgnet);
 | ||
| //@brief 放电
 | ||
| void JQ_DisChage(void);
 | ||
| //@brief 复位
 | ||
| void JQ_Reset(void);
 | ||
| //@brief 使能起爆
 | ||
| void JQ_BoomActive(void);
 | ||
| //@brief 时钟校准
 | ||
| void JQ_TimeAmend(uint16_t cycle,uint16_t delay_ms);
 | ||
| //写OTP使能
 | ||
| void JQ_EnWOTP(void);
 | ||
| //@brief 写OTP
 | ||
| 
 | ||
| uint8_t JQ_WriteOTP(uint8_t otp_bgaddr,uint8_t write_count,uint8_t* writebuf);
 | ||
| /*
 | ||
| @breif 起爆命令
 | ||
| @param cmd_count 起爆命令发送次数
 | ||
| @param read_buf 读取ACK数据,1bit代表一个网络号
 | ||
| @param run_type  0 不读取应答信号 =1 读取应答信号 >1 读取应答信号,且强制反馈收到应答
 | ||
| */
 | ||
| 
 | ||
| void JQ_BoomCmd(uint8_t cmd_count,uint8_t* read_buf,uint8_t run_type);
 | ||
| /*
 | ||
| @breif 起爆命令
 | ||
| @param plus_count 巡检脉冲个数
 | ||
| @rtv   巡检应答Ack 的脉冲个数
 | ||
| */
 | ||
| uint16_t JQ_CheckerBoomCmd(uint16_t plus_count,uint16_t* us_shake);
 | ||
| //@breif 巡检
 | ||
| void JQ_Inspect(uint16_t maxcount,uint8_t* buf,uint8_t state);
 | ||
| //@brief 设置充电检测判线
 | ||
| void JQ_ChargJudge(uint8_t dac);
 | ||
| //@brief 验证密码
 | ||
| void JQ_VerifyPWD(uint8_t* pwd);
 | ||
| //@breif 读芯片ID
 | ||
| uint8_t JQ_ReadChipID(uint16_t netid,uint16_t* chipid);
 | ||
| //@brief 快速放电
 | ||
| void JQ_FastDisChage(uint8_t sw);
 | ||
| /*
 | ||
| @brief 通信反码信息初始化
 | ||
| */
 | ||
| void JQ_FreeBack_Prapare(uint8_t enable_flag);
 | ||
| #endif
 | 
