⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 crcdrv.h

📁 启动代码
💻 H
字号:
/*
 *	AK3220 CRC driver
 */

#ifndef _CRC_DRV_H_
#define _CRC_DRV_H_

#include "types.h"

// CRC 是在控制寄存器的第二位起
#define CRC_TYPE_START_BIT	2

// AK3220 support CRC type list
typedef enum {
	CRC_TYPE_CRC8 = 0, 
	CRC_TYPE_CRC12,
	CRC_TYPE_CRC16,
	CRC_TYPE_CRC24,
	CRC_TYPE_CRC32
} T_AK3220_CRC_TYPE;

/*********  CRC registers address ***************/
#define DMA_MODULE_BASE_ADDR			0x200C0000	// DMA registers
#define DMACRC_CMD_REG					(DMA_MODULE_BASE_ADDR + 0x0000)
#define DMACRC_STATUS_REG 				(DMA_MODULE_BASE_ADDR + 0x0004)
#define DMACRC_CNT_REG 					(DMA_MODULE_BASE_ADDR + 0x0008)
#define DMACRC_SRC_ADDR_REG				(DMA_MODULE_BASE_ADDR + 0x000C)
#define DMACRC_SRC_ADDR_REG				(DMA_MODULE_BASE_ADDR + 0x000C)
#define DMACRC_DEST_ADDR_REG			(DMA_MODULE_BASE_ADDR + 0x0010)
#define DMACRC_MEM_TYPE_REG				(DMA_MODULE_BASE_ADDR + 0x0014)
#define DMACRC_VALUE_REG				(DMA_MODULE_BASE_ADDR + 0x0018)
#define DMACRC_CMD_START_BIT		0x01
#define DMACRC_STATUS_FINISH_BIT	0x01

UINT32 MakeCRC(T_AK3220_CRC_TYPE crc_type, const UINT8 *pdata, UINT32 data_len);

#endif	// _CRC_DRV_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -