久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 926|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

MSP430單片機多通道ADC采集,串口無法打印ADC值

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1128884 發(fā)表于 2024-7-13 10:20 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
static void ConfigADCInit(void)
{
    // 復(fù)位GPIO
    GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P6,GPIO_PIN0);
    GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P6,GPIO_PIN1);
    GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P6,GPIO_PIN2);
    GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P6,GPIO_PIN5);
    GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P6,GPIO_PIN6);

    // 配置ADC參數(shù)
    ADC12_A_init(ADC12_A_BASE,ADC12_A_SAMPLEHOLDSOURCE_SC, ADC12_A_CLOCKSOURCE_ADC12OSC, ADC12_A_CLOCKDIVIDER_1);

    // 啟用ADC12_A模塊
    ADC12_A_enable(ADC12_A_BASE);

    // 配置ADC12_A模塊的采樣計時器,以控制采樣/保持信號的持續(xù)時間以及采樣過程中的時鐘周期數(shù)
    ADC12_A_setupSamplingTimer(ADC12_A_BASE,ADC12_A_CYCLEHOLD_128_CYCLES,ADC12_A_CYCLEHOLD_4_CYCLES,ADC12_A_MULTIPLESAMPLESENABLE);

    // 配置ADC P6.0
    ADC12_A_configureMemoryParam  ADCA0_InitStructure = {
    .inputSourceSelect = ADC12_A_INPUT_A0,                  // A0作為輸入通道
    .endOfSequence = ADC12_A_NOTENDOFSEQUENCE,              // 不是序列結(jié)束
    .memoryBufferControlIndex = ADC12_A_MEMORY_0,           // 內(nèi)存0
    .negativeRefVoltageSourceSelect = ADC12_A_VREFPOS_AVCC, // 參考電壓為AVCC
    .positiveRefVoltageSourceSelect = ADC12_A_VREFNEG_AVSS, // 參考電壓為AVSS
    };

    // 配置ADC P6.1
    ADC12_A_configureMemoryParam  ADCA1_InitStructure = {
    .inputSourceSelect = ADC12_A_INPUT_A1,
    .endOfSequence = ADC12_A_NOTENDOFSEQUENCE,
    .memoryBufferControlIndex = ADC12_A_MEMORY_1,
    .negativeRefVoltageSourceSelect = ADC12_A_VREFPOS_AVCC,
    .positiveRefVoltageSourceSelect = ADC12_A_VREFNEG_AVSS,
    };

    // 配置ADC P6.2
    ADC12_A_configureMemoryParam  ADCA2_InitStructure = {
    .inputSourceSelect = ADC12_A_INPUT_A2,
    .endOfSequence = ADC12_A_NOTENDOFSEQUENCE,
    .memoryBufferControlIndex = ADC12_A_MEMORY_2,
    .negativeRefVoltageSourceSelect = ADC12_A_VREFPOS_AVCC,
    .positiveRefVoltageSourceSelect = ADC12_A_VREFNEG_AVSS,
    };

    // 配置ADC P6.5
    ADC12_A_configureMemoryParam  ADCA5_InitStructure = {
    .inputSourceSelect = ADC12_A_INPUT_A5,
    .endOfSequence = ADC12_A_NOTENDOFSEQUENCE,
    .memoryBufferControlIndex = ADC12_A_MEMORY_5,
    .negativeRefVoltageSourceSelect = ADC12_A_VREFPOS_AVCC,
    .positiveRefVoltageSourceSelect = ADC12_A_VREFNEG_AVSS,
    };

    // 配置ADC P6.6
    ADC12_A_configureMemoryParam ADCA6_InitStructure = {
    .endOfSequence = ADC12_A_ENDOFSEQUENCE,
    .inputSourceSelect = ADC12_A_INPUT_A6,
    .memoryBufferControlIndex = ADC12_A_MEMORY_6,
    .negativeRefVoltageSourceSelect = ADC12_A_VREFPOS_AVCC,
    .positiveRefVoltageSourceSelect = ADC12_A_VREFNEG_AVSS,
    };

    // 配置ADC
    ADC12_A_configureMemory(ADC12_A_BASE ,&ADCA0_InitStructure);
    ADC12_A_configureMemory(ADC12_A_BASE ,&ADCA1_InitStructure);
    ADC12_A_configureMemory(ADC12_A_BASE ,&ADCA2_InitStructure);
    ADC12_A_configureMemory(ADC12_A_BASE ,&ADCA5_InitStructure);
    ADC12_A_configureMemory(ADC12_A_BASE ,&ADCA6_InitStructure);

    // 開始轉(zhuǎn)換
    ADC12_A_startConversion(ADC12_A_BASE, ADC12_A_MEMORY_0, ADC12_A_REPEATED_SEQOFCHANNELS);
    ADC12_A_startConversion(ADC12_A_BASE, ADC12_A_MEMORY_1, ADC12_A_REPEATED_SEQOFCHANNELS);
    ADC12_A_startConversion(ADC12_A_BASE, ADC12_A_MEMORY_2, ADC12_A_REPEATED_SEQOFCHANNELS);
    ADC12_A_startConversion(ADC12_A_BASE, ADC12_A_MEMORY_3, ADC12_A_REPEATED_SEQOFCHANNELS);

}

#pragma vector=ADC12_VECTOR
__interrupt void ADC12_interrupt (void)
{
    static unsigned int index = 0;
    switch (__even_in_range(ADC12IV,34)){
        case  0: break;   //Vector  0:  No interrupt
        case  2: break;   //Vector  2:  ADC overflow
        case  4: break;   //Vector  4:  ADC timing overflow
        case  6: break;   //Vector  6:  ADC12IFG0
        case  8: break;   //Vector  8:  ADC12IFG1
        case 10: break;   //Vector 10:  ADC12IFG2
        case 12: break;   //Vector 12:  ADC12IFG3
        case 14: break;   //Vector 14:  ADC12IFG4
        case 16: break;   //Vector 16:  ADC12IFG5
        case 18:
            A0results[index] = ADC12_A_getResults(ADC12_A_BASE, ADC12_A_MEMORY_0);           // Move A0 results, IFG is cleared
            UART_printf(USCI_A1_BASE,"%f",A0results[index] / 0xffff * 3.3);
            A1results[index] = ADC12_A_getResults(ADC12_A_BASE, ADC12_A_MEMORY_1);           // Move A1 results, IFG is cleared
            UART_printf(USCI_A1_BASE,"%f",A1results[index] / 0xffff * 3.3);
            A2results[index] = ADC12_A_getResults(ADC12_A_BASE, ADC12_A_MEMORY_2);           // Move A2 results, IFG is cleared
            UART_printf(USCI_A1_BASE,"%f",A2results[index] / 0xffff * 3.3);
            A5results[index] = ADC12_A_getResults(ADC12_A_BASE, ADC12_A_MEMORY_5);           // Move A5 results, IFG is cleared
            UART_printf(USCI_A1_BASE,"%f",A5results[index] / 0xffff * 3.3);
            A6results[index] = ADC12_A_getResults(ADC12_A_BASE, ADC12_A_MEMORY_6);           // Move A6 results, IFG is cleared
            UART_printf(USCI_A1_BASE,"%f",A6results[index] / 0xffff * 3.3);
            index++;

            if (index == 8)
            {
              (index = 0);
            }
            break;   //Vector 18:  ADC12IFG6
        case 20: break;   //Vector 20:  ADC12IFG7
        case 22: break;   //Vector 22:  ADC12IFG8
        case 24: break;   //Vector 24:  ADC12IFG9
        case 26: break;   //Vector 26:  ADC12IFG10
        case 28: break;   //Vector 28:  ADC12IFG11
        case 30: break;   //Vector 30:  ADC12IFG12
        case 32: break;   //Vector 32:  ADC12IFG13
        case 34: break;   //Vector 34:  ADC12IFG14
        default: break;
    }
}
串口無法打印ADC值


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚州国产 | 亚洲一级淫片 | 日本二区| 欧美激情综合色综合啪啪五月 | 久久久久久久久久影视 | 羞羞在线视频 | 欧美在线日韩 | 日韩a在线 | 亚洲精品视频在线观看视频 | 午夜精品久久久久久久99黑人 | 久久国产精品-久久精品 | 久久国产精品免费视频 | 国产精品久久久久久久久久久久久久 | 欧美成人精品一区二区男人看 | 一区二区三区四区av | 欧美国产亚洲一区二区 | 亚洲一区二区三区在线播放 | 美女福利网站 | 青草青草久热精品视频在线观看 | 黑人巨大精品欧美一区二区一视频 | 久久久久资源 | 国产 日韩 欧美 在线 | 欧美一级在线 | 午夜在线| h在线免费观看 | 日本电影免费完整观看 | 亚洲精品久久久久久一区二区 | 中文字幕第三页 | 欧美亚洲日本 | 国产精品视频免费 | 精品伊人 | 欧美日韩一区二区在线 | 日韩在线观看网站 | 国产一区影院 | 亚洲欧美在线一区 | 丁香一区二区 | 黄色亚洲 | www.97国产| 亚洲成人一区 | 国产精品视频一 | 四虎成人av |