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

📄 adc.c

📁 示波器
💻 C
字号:
#define IN_ADC
#include "config.h"
#include "stdio.h"
#define	AD0STAT			(*((volatile unsigned long *) 0xE0034030))	
#define	AD0DR0			(*((volatile unsigned long *) 0xE0034010))	
#define AD0CR           (*((volatile unsigned long *) 0xE0034000))      

/***********************************************
初始化函数
****************************************************/


void ADCInit(void)
{
	 PINSEL1 = PINSEL1 & (~(0x03 << 12));                                //  将P0.22设置为AD功能       
     PINSEL1 = PINSEL1 | (0x03 << 12);
     AD0CR  = (1 << 0)  |                                                 /*  选择通道0                   */
            (((Fpclk / 4000000) - 1) << 8)  |                           /*  转换时钟为1MHz              */
            (0 << 16) |                                                 /*  BURST = 0,软件控制转换操作  */
            (0 << 17) |                                                 /*  CLKS = 0,使用11clock转      */
            (1 << 21) |                                                 /*  PDN = 1,正常工作模式       */
            (0 << 22) |                                                 /*  TEST = 0,正常工作模式      */
            (1 << 24) |                                                 /*  设置直接启动模式            */
            (0 << 27 );   
}
/*********************************************************
延时函数
*************************************************************/
void adc_delay(uint16 t)
{
	while(t--);
}
/***********************************************************.
AD转换函数
*******************************************************************/
uint16 GetAdc(void)
{
	uint16 ADResult;
	AD0CR |= (1 <<24);
    while ((AD0STAT & 0x01) == 0);                                  /*  读取AD0STAT的通道0的Done    */
    AD0CR |= (1 <<24);
    while ((AD0STAT & 0x01) == 0);                                  /*  读取AD0STAT的通道0的Done    */            
        
    adc_delay(200);  
    ADResult	=	AD0DR0;     
    ADResult = (ADResult >> 6) & 0x3FF;  
    ADResult = ADResult>>4; 
    return ADResult;            
}

⌨️ 快捷键说明

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