📄 hw_hadc.h
字号:
/******************************************************************/
/* Copyright (C) 2007 ROCK-CHIPS FUZHOU . All Rights Reserved. */
/*******************************************************************
File : HW_HADC.h
Desc : 高速ADC控制器
Author : lingzj
Date : 2007-06-30
Notes :
$Log: HW_HADC.h,v $
Revision 1.2 2007/10/08 02:38:43 Lingzhaojun
添加版本自动注释脚本
*********************************************************************/
#ifndef __HADC_H
#define __HADC_H
#include "hw_include.h"
#define RegHADCBase AHB1_HS_ADC_BASE //0x1e780000
#define RegHadcData RegHADCBase+0x00 /*样本数据寄存器*/
#define RegHadcCtrl RegHADCBase+0x04 /*采样控制寄存器*/
#define RegHadcIntCtrl RegHADCBase+0x08 /*中断控制寄存器*/
#define RegHadcIntState RegHADCBase+0x0C /*中断状态寄存器*/
#define HW_HadcSample_10bit() SetRegBit32(RegHadcCtrl, 2) /* 10bit 采样*/
#define HW_HadcSample_8bit() ClrRegBit32(RegHadcCtrl, 2) /* 8bit 采样*/
#define HW_HadcEnable() SetRegBit32(RegHadcCtrl, 1) /* 使能 HADC*/
#define HW_HadcDisable() ClrRegBit32(RegHadcCtrl, 0) /* 挂起 HADC*/
#define HW_HadcDMAReqFull() SetRegBit32(RegHadcCtrl, 5) /* 使能FIFO满DMA请求*/
#define HW_HadcDMAReqEmpty() ClrRegBit32(RegHadcCtrl, 5) /* 使能FIFO空DMA请求*/
#define HW_HadcEmptyIntEn() SetRegBit32(RegHadcIntCtrl, 1) /* 使能FIFO空中断*/
#define HW_HadcFullIntEn() SetRegBit32(RegHadcIntCtrl, 0) /* 使能FIFO满中断*/
#define HW_HadcStoreH() SetRegBit32(RegHadcCtrl, 3) /* 数据存高位*/
#define HW_HadcStoreL() ClrRegBit32(RegHadcCtrl, 3) /* 数据存低位*/
#define HW_HadcSMSB() SetRegBit32(RegHadcCtrl, 4) /* 数据高位取反*/
#define HW_HadcCPHA() SetRegBit32(RegHadcCtrl, 1) /* clk取反*/
#define HW_GetFullIntState() GetRegBit32(RegHadcIntState, 0) /* 获取满中断标志*/
#define HW_GetEmptyIntState() GetRegBit32(RegHadcIntState, 1) /* 获取空中断标志*/
//HADC模式设置
#define HadcMode_10Bit (1<<0)
#define HadcMode_8Bit (1<<1)
#define HadcMode_En (1<<2)
#define HadcMode_Dis (1<<3)
#define HadcMode_DMA (1<<4)
#define HadcMode_Int (1<<5)
#define HadcMode_DataH (1<<6)
#define HadcMode_DataL (1<<7)
#define HadcMode_ClkNe (1<<8)
#define HadcMode_DatNe (1<<9)
static const UINT32 HadcModeNormal = (HadcMode_10Bit
| HadcMode_En
| HadcMode_DMA
| HadcMode_Int
| HadcMode_DataL);
typedef int (*HADCCallBack)(void); /*hadc 回调函数*/
int HadcSet(UINT32 Mode);
int HadcStart(UINT32 Mode, UINT32 Size, UINT32*pBuf, HADCCallBack CB);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -