CC3200 ADC
时间:10-02
整理:3721RD
点击:
大家好:
我在使用cc3200 adc功能的时候遇见了一些问题,希望可以得到大家的帮助。使用官方的例程我的引脚没有接任何器件得出的结果是:
1.请问下上面的结果是属于正常的吗?
下面的是我在demo的基础上更改的: 我在PIN_60 引脚接的是光线传感器(文档上说PIN_60使用的是通道3),可yi发现将传感器放到不同的位置采集到的数据有很大
的变化,可是接在pin_57 pin_58引脚上却没有效果
void PinMuxConfig(void) { MAP_PRCMPeripheralClkEnable(PRCM_UARTA0,PRCM_RUN_MODE_CLK); MAP_PRCMPeripheralClkEnable(PRCM_ADC, PRCM_RUN_MODE_CLK); //UART0_TX MAP_PinTypeUART(PIN_07, PIN_MODE_5); //UART0_RX MAP_PinTypeUART(PIN_08, PIN_MODE_5); } void main() { unsigned long uiAdcInputPin = PIN_60; unsigned int uiChannel; unsigned int uiIndex=0; unsigned long ulSample; BoardInit(); PinMuxConfig(); InitTerm(); DisplayBanner(APP_NAME); while(FOREVER) { uiIndex=0; #ifdef CC3200_ES_1_2_1 // // Enable ADC clocks.###IMPORTANT###Need to be removed for PG 1.32 // HWREG(GPRCM_BASE + GPRCM_O_ADC_CLK_CONFIG) = 0x00000043; HWREG(ADC_BASE + ADC_O_ADC_CTRL) = 0x00000004; HWREG(ADC_BASE + ADC_O_ADC_SPARE0) = 0x00000100; HWREG(ADC_BASE + ADC_O_ADC_SPARE1) = 0x0355AA00; #endif MAP_PinTypeADC(uiAdcInputPin,PIN_MODE_255); switch(uiAdcInputPin) { case PIN_57: uiChannel = ADC_CH_0; break; case PIN_58: uiChannel = ADC_CH_1; break; case PIN_59: uiChannel = ADC_CH_2; break; case PIN_60: uiChannel = ADC_CH_3;//0x18 24 break; default: break; } MAP_ADCTimerConfig(ADC_BASE,2^17); MAP_ADCTimerEnable(ADC_BASE); MAP_ADCEnable(ADC_BASE); MAP_ADCChannelEnable(ADC_BASE, uiChannel); while(1){ while(uiIndex < NO_OF_SAMPLES) { if(MAP_ADCFIFOLvlGet(ADC_BASE, uiChannel)) { ulSample = MAP_ADCFIFORead(ADC_BASE, uiChannel); pulAdcSamples[uiIndex] = ulSample; uiIndex++; } } uiIndex = 0; while(uiIndex < NO_OF_SAMPLES) { UART_PRINT("\n\r%d %14ld\n\r",uiIndex,(pulAdcSamples[uiIndex] >> 2 ) & 0x0FFF); uiIndex++; } uiIndex = 0; UART_PRINT("\n\r"); } } }
上面两幅图是pin_60 接传感器结果
如果有知道请告诉我一下 谢谢。
使用ADC请参考,详细的介绍了CC3200的ADC使用注意事项
http://processors.wiki.ti.com/index.php/CC32xx_ADC_Appnote
Terry Han:
你好,我测的结果不正确是因为我接错了引脚,因为板子上有两个PIN_58,和PIN_59引脚,现在我换了另外一个引脚已经可以测得数据了,谢谢你,还有我发现PIN_57 引脚还是无法测得数据,我将pin_07,和 PIN_08作为串口输入输出了,是不是还需要其它的配置呢?
注意查看Launchpad的原理图,UART0_RX必须将跳线帽连接才能将该引脚分配到LP外扩的PIN脚!--才能使用ADC-CH0,注意必须将跳线帽J6(1-2 PIN脚)连接才能将该引脚分配到LP外扩的PIN脚,查看你的Launchpad引脚的跳线帽是否没有连接。