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

📄 adcprivate.h

📁 philips arm7 lpc2103的常用功能的库函数第二部分
💻 H
字号:
/***********************************************Copyright (c)*********************************************
**                                Guangzou ZLG-MCU Development Co.,LTD.
**                                     
**                                       http://www.zlgmcu.com
**
**--------------File Info---------------------------------------------------------------------------------
** File name:               ADC.c
** Last modified Date:      2007-11-13
** Last Version:		    2.0
** Descriptions:		    模数转换模块 函数实现,采用设备描述符来操作
**
**--------------------------------------------------------------------------------------------------------
** Created by:			    WangGuoguang
** Created date:		    2007-11-08
** Version:				    1.0
** Descriptions:		    此头文件可在config.h中包含.
**
**--------------------------------------------------------------------------------------------------------
** Modified by:             WangGuoguang 
** Modified Date:		    2007-11-13 
** Version:	                2.2
** Descriptions:		    完善数据缓存处理.
**
*********************************************************************************************************/
#ifndef __ADC_PRIVATE_H                                                     
#define __ADC_PRIVATE_H


/*********************************************************************************************************
  ADC 最大个数定义
*********************************************************************************************************/
#define __ADC_MAX_NUM                  1                              /*  LPC22xx 最多ADC个数总共有1个   */
#define __ADC_CHN_NUM                  8                              /*  LPC22xx 最多ADC采样通道数      */

/*********************************************************************************************************
  ADC 管脚配置判断 (注意要最外层加上()号,因为是条件判断表达式宏.)
*********************************************************************************************************/
#define __ADC_AIN_45(No)                            \
        (((PINSEL2 >> 4 ) & 0x03 != 0x02) &&        \
         ((PINSEL2 >> (No + 17)) & 0x01 == 0x01)) 


#define __ADC_AIN_67(No)                            \
        (((PINSEL2 >> 4 ) & 0x03 != 0x02) &&        \
         ((PINSEL2 >> No) & 0x01 == 0x01)) 
         
/*********************************************************************************************************
  ADC 寄存器偏移地址 
*********************************************************************************************************/
#define __B_ADC_ADCR				   0x0
#define __B_ADC_ADDR				   0x1

/*********************************************************************************************************
  ADC 寄存器字长偏移地址宏参数
*********************************************************************************************************/
#define __ADC_OFFSET_BASE               0

/*********************************************************************************************************
  ADC 设备信息结构体
*********************************************************************************************************/
struct __adc_info {

                uint32  uiADCID;                                        /*  模数转换器ID编号            */
                
                uint32  uiAdcState;                                     /*  ADC状态标志.下面是状态标识  */
                                                                        /*  ADC_BUSY   :   通道工作忙   */
                                                                        /*  ADC_IDLE   :   通道空闲     */
							                                            /*  ADC_OK     :   操作成功     */
							                                            /*  ADC_ERR    :   操作失败     */
							                                            /*  ADC_PAUSE  :   Burst转换暂停*/
							                                            /*  ADC_BUF_FULL:  队列满       */
       
                uint32  uiBurst;                                        /*  是否采用Burst模式           */
                uint32  uiStart;                                        /*  是否已启动ADC               */
						                                           
    volatile    uint8   ucUseChn[__ADC_CHN_NUM];                        /*  记录已打开的采样通道        */
    volatile    uint8   ucDoneFlg[__ADC_CHN_NUM];                       /*  对应通道是否已一次转换完成  */
                uint32  uiChnNum;                                       /*  记录通道号个数值            */

    volatile    uint32  uiOffsetBase;                                   /*  ADC寄存器偏移地址           */
    volatile    uint32 *puiAddrBase;                                    /*  ADC寄存器基地址             */
              			                                            	
         __PDATA_QUEUE  AdcQueAddr;                                     /*  ADC采样结果缓冲队列指针     */


};

typedef struct __adc_info         __ADC_INFO;                           /*  定义结构体类型              */
typedef        __ADC_INFO        *__PADC_INFO;                          /*  定义结构体指针类型          */




#endif                                                                  /*  __ADC_PRIVATE_H             */
/*********************************************************************************************************
  END FILE
*********************************************************************************************************/                    

⌨️ 快捷键说明

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