با سلام من یه lpc1768 رو هرچی با مثال adc پروگرام میکنم جواب درست نمیده. وقتی پایه ADC را به زمین وصل میکنم 0 یا 255 میده وقتی هم ولتاژ پایه ADC از 0 بالاتر میره صفر میده (led پورت 2 کاملا خاموش میشه).بار اول که پروگرامش کردم vreff را on کرده بودم اما چیزی بش وصل نکرده بودم کسی میدونه مشکلش چیه؟
کد هم اینه البته با lcd هم چک کردم عددها همون عددهای بالا بود.از vreff برد هم استفاده کردم بازهم نشد
کد هم اینه البته با lcd هم چک کردم عددها همون عددهای بالا بود.از vreff برد هم استفاده کردم بازهم نشد
کد:
#include <lpc17xx.h> main(){ int a; SystemInit(); LPC_PINCON->PINSEL1 |= (1UL<<14); /* P1.31 is AD0.5 */ LPC_PINCON->PINMODE1 |= 0x00008000; LPC_SC->PCONP |= (1<<12); /* Enable power to ADC block */ LPC_ADC->ADCR = (1<< 0) | /* select AD0.5 pin */ (4<< 8) | /* ADC clock is 25MHz/5 */ (1<<21); /* enable ADC */ while(1){ LPC_ADC->ADCR &= ~(7<<24); /* stop conversion */ LPC_ADC->ADCR |= (1<<24); /* start conversion */ while (!(LPC_ADC->ADGDR & (1UL<<31))); /* Wait for Conversion end */ a = (LPC_ADC->ADGDR>>8 & 0xff); if(a > 127) { LPC_GPIO2->FIODIR = 0xfff; LPC_GPIO2->FIOPIN = 0xff; } else { LPC_GPIO2->FIOPIN = 0x00; } } }