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

📄 adc.c

📁 Philips LPC22xx A/D Example Program
💻 C
字号:

#include <lpc22xx.h>					/* LPC2200 definitions             */
#include <stdio.h>                      /* standard I/O .h-file            */
#define VREF  3

unsigned int val;


extern void init_serial (void);  


int main(void) {

init_serial();                            /* Initialize Serial Interface */


/* Setup the A/D converter */
IODIR1 = 0x00FF0000;   				   /* P1.16..23 defined as Outputs       */
VPBDIV = 0x02;			               /*Set the Pclk to 30 Mhz              */
ADCR   = 0x00210601;                   /* Setup A/D: 10-bit AIN0 @ 3MHz      */


while(1) {

ADCR  |= 0x01000000;                   /* Start A/D Conversion               */
while ((ADDR & 0x80000000) == 0); 	   /*Wait for the conversion to complete */
val = ((ADDR >> 6) & 0x03FF);	       /*Extract the A/D result 	         */

  printf ("Digital Value %4u = %01u.%04u Volts\r",
         (unsigned) val,
         (unsigned) (val * VREF) >> 10,                          /* Output Integer Portion */
         (unsigned) ((val * VREF * 10000UL) >> 10UL) % 10000);   /* Output Decimal Portion */

  }

}

⌨️ 快捷键说明

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