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

📄 adc.c

📁 pulse width modulation code using servo motor
💻 C
字号:
#include <LPC21xx.H> // LPC21xx definitions
extern void UART0_Init(void);
extern void Print(unsigned short w);
extern void PrintString(const char *s);
static unsigned short ADC_Read(unsigned char ch)
{
unsigned int i;
ADCR = 0x00200300 | ch; // Init ADC (Pclk = 12MHz) and select channel
ADCR |= 0x01000000; // Start A/D Conversion
do
{
i = ADDR; // Read A/D Data Register
	} while ((i & 0x80000000) == 0); // Wait for end of A/D Conversion
	return (i >> 6) & 0x03FF; // bit 6:15 is 10 bit AD value
}
int main(void)
{
	UART0_Init(); // Initialize UART0
	PrintString("\nLPC2129 ADC test:\n\n"
	"AIN0 AIN1 AIN2 AIN3\n\n");
while (1)
{
	Print(ADC_Read(1)); // convert and print channel AIN0
	PrintString(" ");
	Print(ADC_Read(2)); // convert and print channel AIN1
	PrintString(" ");
	Print(ADC_Read(4)); // convert and print channel AIN2
	PrintString(" ");
	Print(ADC_Read(8)); // convert and print channel AIN3
	PrintString("\r");
}
}

⌨️ 快捷键说明

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