色另类_婷婷激情四月_亚洲精品无码不卡在线播放he_欧美第七页_精品国产综合区久久久久99_青娱乐极品盛宴在线

產品分類

當前位置: 首頁 > 工業電氣產品 > 端子與連接器 > 線路板連接器 > FFC連接器

類型分類:
科普知識
數據分類:
FFC連接器

IWR1642/AWR1642 GPADC功能介紹與實現

發布日期:2022-04-28 點擊率:24

Other Parts Discussed in Post: AWR1642, IWR1642, IWR1642BOOST, AWR1443, IWR1443

作者:TI 工程師 Chris Meng


GPADC功能介紹      

       IWR1642/AWR1642的毫米波傳感器芯片上集成了通用ADC(GPADC)的功能。用戶可以利用GPADC對外部電壓,例如電源電壓進行監控。IWR1642/AWR1642上的ADC采樣率為625Ksps,精度為10-bit,提供給用戶6個ADC管腳進行測量。其中5個ADC支持緩沖模式和非緩沖模式,一個ADC僅支持非緩沖模式。在非緩沖模式下,ADC的測量范圍是0V~1.8V,而緩沖模式下,測量范圍是0.4V~1.3V。

       GPADC本身是由雷達子系統控制,用戶可以通過在MSS或者DSS調用檢測GPADC的API,向雷達子系統發送相關請求來獲取GPADC相關信息。雷達子系統收到ADC檢測的消息后,會調度ADC測量和其他射頻和模擬的檢測功能。用戶可以配置ADC設定時間,也就是跳過多少采樣點后開始正式采用,以及連續采樣點數。雷達子系統會在一幀結束的時候把ADC采樣的最小值,最大值和平均值通過消息發給GPADC采樣的發起者(MSS或者DSS)。

注意事項

        這里有兩點需要注意。一個是BSS里面異步消息發送對象的設置。對于GPADC這個檢測,是調用配置GPADC的那個核會收到BSS發出的消息。一個是mmwave link下消息發送的對象。在mmw demo里面使用了mmwave link的消息,這個消息是不同于BSS的異步消息配置。在mmw demo里MMS代碼的消息處理函數MmwDemo_mssMmwaveEventCallbackFxn()的返回值默認為0,表示在接收到消息后,同樣需要把消息發給DSS。所以當MSS發起了GPADC的配置,默認情況下不僅MSS會收到GPADC的消息,DSS也是會收到GPADC的消息。如果DSS不處理收到的GPADC消息,DSS側就會報錯。所以如果不需要DSP處理相關事件,可以在DSP側的MmwDemo_dssMmwaveEventCallbackFxn函數里添加GPADC消息的處理,例如收到消息后break。但是,更好的方法是在mss側把相應消息事件的返回值設置為1。這樣可以減少對DSS的打斷。默認的代碼MmwDemo_mssMmwaveEventCallbackFxn()函數的返回值只有統一的一個值,因為mmw demo每個核都會處理多個消息,所以最好修改一下MmwDemo_mssMmwaveEventCallbackFxn為不需要傳給dss的消息返回值為1,而需要的返回值為0。如果用戶需要在DSS側調用GPADC的配置代碼,也需要類似的處理。

GPADC功能實現

         下面以MSS讀取GPADC為例,介紹一下如何在mmWave SDK2.0的mmw demo下實現多次獲取GPADC數值的功能。下面的測試基于IWR1642 BOOST ES2.0。DSS讀取GPADC,也可以使用類似方法。

         首先需要在mss_main.c里面添加GPADC配置的相關代碼。每調用一次配置GPADC,就能夠收到一個相關GPADC的消息,獲取GPADC的值。如果需要多次讀取GPADC的值,需要多次調用GPADC的配置。

#include

#include

rlUInt8_t isGetGpAdcMeasData = 0U;

rlRecvdGpAdcData_t rcvGpAdcData = {0};

 

const rlGpAdcCfg_t gpAdcCfg =

{

    .enable = 0x3F,

.bufferEnable = 0,//0表示非緩沖模式,

                               //1表示使能緩沖模式,如果全部ADC使能緩沖模式則配置0x3F

    .numOfSamples[0].sampleCnt = 20,

    .numOfSamples[0].settlingTime = 3,

    .numOfSamples[1].sampleCnt = 14,

    .numOfSamples[1].settlingTime = 3,

    .numOfSamples[2].sampleCnt = 14,

    .numOfSamples[2].settlingTime = 3,

    .numOfSamples[3].sampleCnt = 14,

    .numOfSamples[3].settlingTime = 3,

    .numOfSamples[4].sampleCnt = 14,

    .numOfSamples[4].settlingTime = 3,

    .numOfSamples[5].sampleCnt = 14,

    .numOfSamples[5].settlingTime = 3,

    .numOfSamples[6].sampleCnt = 14,

    .numOfSamples[6].settlingTime = 3,

     .numOfSamples[7].sampleCnt = 14,

.numOfSamples[7].settlingTime = 3

.numOfSamples[8].sampleCnt = 14,

    .numOfSamples[8].settlingTime = 3,

     .numOfSamples[9].sampleCnt = 14,

    .numOfSamples[9].settlingTime = 3,

     .numOfSamples[10].sampleCnt = 14,

    .numOfSamples[10].settlingTime = 3,

     .numOfSamples[11].sampleCnt = 14,

    .reserved0 = 0

};

 

int32_t Mmwavelink_setGpAdcConfig (void)

{

   int32_t         retVal;

  

   retVal = rlSetGpAdcConfig(RL_DEVICE_MAP_INTERNAL_BSS, (rlGpAdcCfg_t*)&gpAdcCfg);

 

  

   if(retVal != 0)

   {

      

       System_printf("Error: rlSetGpAdcConfig retVal=%d ", retVal);

       return -1;

   }

 while(isGetGpAdcMeasData == 0U)

   {

      

       Task_sleep(1);

   }

   return 0;

}

       下面是具體調用GPADC配置的代碼,可以添加在用戶需要測試外部電壓的地方。

                if (Mmwavelink_setGpAdcConfig() < 0)               

                {                 

                                System_printf ("Error: Mmwavelink_setGpAdcConfig ");                                                                                       break;  

                }

        接下來在MSS側添加GPADC消息的處理代碼。下面的處理代碼是在CCS輸出窗口打印出ADC5的平均值。相關代碼添加在MmwDemo_mssMmwaveEventCallbackFxn()函數里。將MmwDemo_mssMmwaveEventCallbackFxn函數的返回值設置為1,這樣DSP就不會收到該消息,也就不需要在DSP側添加消息處理代碼了。當GPADC的配置代碼被調用的時候,用戶就可以在CCS打印輸出窗口看到測量的GPADC的值。

               case RL_RF_AE_GPADC_MEAS_DATA_SB:

               {

                   isGetGpAdcMeasData = 1U;

                   memcpy(&rcvGpAdcData, payload, sizeof(rlRecvdGpAdcData_t));

                     System_printf ("GPADC value: %d V ", rcvGpAdcData.sensor[4].avg);                           

                    break;

               }

      

     下面是在IWR1642BOOST上實測的數據和萬用表測量的數據的比較。


萬用表測量(V)

ADC5的平均值

GPADC值轉換為電壓 (V)

IWR1642 ES2.0 EVM

1.7176

980

1.8/1024*980=1.722656

0

0

1.8/1024*0=0

              

       上面介紹的GPADC使用方法適用于IWR1642/AWR1642,對于IWR1443/AWR1443上的GPADC的使用也是很好的參考。

下一篇: PLC、DCS、FCS三大控

上一篇: SimpleLink MCU代碼移

推薦產品

更多
主站蜘蛛池模板: 国产精品观看在线亚洲人成网 | 狠狠干狠狠操 | 日本欧美国产精品第一页久久 | 日日爽 | 精品在线一区二区三区 | 欧美性a视频| 日韩在线国产 | 亚洲欧美日韩综合二区三区 | 青娱在线视频 | 久热久热 | 久久久久中文字幕 | 久久精品国产2020 | 国产精品不卡 | 久久国产精品视频 | 亚洲高清免费视频 | 天堂最新在线资源 | 一级性生活免费视频 | 欧美视频第一页 | 日韩av资源站 | 奇米777me| 欧美日韩精品综合 | 久久人人爱 | 欧美性猛交一区二区三区精品 | 波多野结衣在线高清视频 | 国产视频在线免费观看 | 欧美一区二区三区在线视频 | 无遮挡羞羞视频 | 日日干日日插 | 亚洲一区二区免费看 | 日本永久视频 | 91久久青青草原免费 | 人人天天操 | 国产成人免费 | 久久久日韩精品一区二区 | 久久99免费观看 | 91久久精品国产 | 中国一级特黄真人毛片免费看 | a级片免费视频 | 久热国产在线视频 | 久久aⅴ乱码一区二区三区 日韩精品一区二区在线观看 | 久久精品免费一区二区三区 |