crcdrv.h

来自「启动代码」· C头文件 代码 · 共 38 行

H
38
字号
/*
 *	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 + =
减小字号Ctrl + -
显示快捷键?