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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2889|回復: 3
打印 上一主題 下一主題
收起左側(cè)

AD7705模塊(雙路16位ADC)配套資料

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:574118 發(fā)表于 2022-1-5 13:58 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
出廠的AD7606模塊缺省是8080 并行接口。
如果用SPI接口模式,需要修改 R1 R2電阻配置。

并口模式跳線:   R1 懸空(不貼),R2貼10K電阻
SPI接口模式跳線:R1 貼10K電阻, R2 懸空(不貼)


AD7606 的配置很簡單,它沒有內(nèi)部寄存器。量程范圍和過采樣參數(shù)是通過外部IO控制的。
采樣速率由MCU或DSP提供的脈沖頻率控制。


AD7606 必須使用單5V供電。
AD7606 和MCU之間的通信接口電平由VIO引腳控制。也就是說 VIO必須接單片機的電源,可以是3.3V也可以是5V。

【模塊引腳說明】
    OS2 OS1 OS2 : 的組合狀態(tài)選擇過采樣模式。
        000表示無過采樣,最大200Ksps采樣速率。
        001表示2倍過采樣, 也就是硬件內(nèi)部采集2個樣本求平均
        010表示4倍過采樣, 也就是硬件內(nèi)部采集4個樣本求平均
        011表示8倍過采樣, 也就是硬件內(nèi)部采集8個樣本求平均
        100表示16倍過采樣, 也就是硬件內(nèi)部采集16個樣本求平均
        101表示32倍過采樣, 也就是硬件內(nèi)部采集32個樣本求平均
        110表示64倍過采樣, 也就是硬件內(nèi)部采集64個樣本求平均

        過采樣倍率越高,ADC轉(zhuǎn)換時間越長,可得到的最大采樣頻率就越低。

    CVA,CVB : 啟動AD轉(zhuǎn)換的控制信號。CVA決定1-4通道,CVB決定5-8通道。
        2個信號可以錯開短暫的時間。一般情況可以將CVA,CVB并聯(lián)在一起。

    RAGE : 量程范圍選擇。0表示正負5V, 1表示正負10V.
    RD : 讀信號
    RST : 復位信號
    BUSY : 忙信號
    CS : 片選信號
    FRST : 第1個通道樣本的指示信號
    VIO : 通信接口電平
    DB0-DB15 : 數(shù)據(jù)總線


【16位并行模式接線圖】 --- AD7606也支持8位總線模式,請參見AD7606數(shù)據(jù)手冊

AD7606模塊             MCU側(cè)
    GND       <-----    地
    +5V       <-----    5V電源
    RAGE      <-----    可接GPIO也可接固定電平
    OS2       <-----    可接GPIO也可接固定電平
    OS1       <-----    可接GPIO也可接固定電平
    OS0       <-----    可接GPIO也可接固定電平

    CVA       <-----    接GPIO(輸出)用于啟動AD轉(zhuǎn)換 【推薦接具有PWM輸出能力的引腳】
    CVB       <---|

    RD        <-----    8080總線讀信號 NOE
    RST       <-----    GPIO輸出  硬件復位AD606
    BUSY      ----->    GPIO輸入  AD606正在轉(zhuǎn)換指示。【推薦接具有外部中斷能力的引腳】
    CS        <-----    8080總線片選 NCS

    VIO       <-----    單片機的電源

    DB0-DB15  ----->    8080數(shù)據(jù)總線(16位)

    FRST      可不接

【SPI接口模式接線圖】

AD7606模塊             MCU側(cè)
    GND       <-----    地
    +5V       <-----    5V電源
    RAGE      <-----    任意輸出GPIO,可接固定電平
    OS2       <-----    任意輸出GPIO,可接固定電平
    OS1       <-----    任意輸出GPIO,可接固定電平
    OS0       <-----    任意輸出GPIO, 可接固定電平

    CVA       <-----    接GPIO(輸出)用于啟動AD轉(zhuǎn)換 【推薦接具有PWM輸出能力的引腳】
    CVB       <---|

    RD/SCLK   <-----    SPI總線時鐘 SCK
    RST       <-----    任意輸出GPIO, 用于硬件復位AD606
    BUSY      ----->    GPIO輸入, AD606正在轉(zhuǎn)換指示。【推薦接具有外部中斷能力的引腳】
    CS        <-----    SPI總線片選 SCS

    VIO       <-----    單片機電源

    DB7(DOUTA) ----->   SPI總線數(shù)據(jù)線MISO
    DB15      ------    GND

    其他數(shù)據(jù)線: 可不接或接GND
    FRST      可不接


【軟件定時采集的實現(xiàn)方案1】 --- 我們提供的 spi 的例子采用這種方案  見 bsp_spi_ad7606.c 文件

    在定時器中斷服務程序中實現(xiàn):

    定時器中斷ISR:
    {
        中斷入口;

        讀取8個通道的采樣結果保存到RAM;     ----> 讀取的其實是上次的采集結果,對于連續(xù)采集來說,是沒有關系的

        啟動下次ADC采集;(翻轉(zhuǎn)CVA和CVB)

        中斷返回;
    }

    定時器的頻率就是ADC采樣頻率。這種模式可以不連接 BUSY 口線。


【軟件定時采集的實現(xiàn)方案2】 --- 我們提供的 8080接口例子采用這種方案   見 bsp_ad7606.c 文件

    配置CVA CVB 引腳為PWM輸出模式,周期設置為需要的采樣頻率;  ---> 之后MCU將產(chǎn)生周期非常穩(wěn)定的AD轉(zhuǎn)換信號

    將BUSY口線設置為中斷下降沿觸發(fā)模式;

    外部中斷ISR
    {
        中斷入口;

        讀取8個通道的采樣結果保存到RAM;

        中斷返回;
    }

【軟件定時采集的實現(xiàn)方案1和方案2的差異】
(1)方案1 可以少用 BUSY口線, 但是其他中斷服務程序或者主程序臨時關閉全局中斷時,可能導致ADC轉(zhuǎn)換周期存在輕微抖動。

(2)方案2 可以確保采集時鐘的穩(wěn)定性,因為它是MCU硬件產(chǎn)生的。但是需要多接一根 BUSY口線。

單片機源程序如下:
  1. #include "stm32f10x.h"
  2. #include <stdio.h>
  3. #include "bsp.h"
  4. #include "bsp_spi_ad7606.h"
  5. #include "bsp_timer.h"

  6. FIFO_T        g_tAD;        /* 定義一個交換緩沖區(qū),用于存儲AD采集數(shù)據(jù),并用于寫入SD卡 */

  7. void bsp_TIM4_Configuration(void);

  8. /*
  9. *********************************************************************************************************
  10. *        函 數(shù) 名: bsp_InitAD7606
  11. *        功能說明: 初始化AD7606 SPI口線
  12. *        形    參:無
  13. *        返 回 值: 無
  14. *********************************************************************************************************
  15. */
  16. void bsp_InitAD7606(void)
  17. {
  18.         GPIO_InitTypeDef  GPIO_InitStructure;
  19.         SPI_InitTypeDef   SPI_InitStructure;
  20.        
  21.         /* AD_SPI_CS_GPIO, AD_SPI_MOSI_GPIO, AD_SPI_MISO_GPIO, AD_SPI_DETECT_GPIO
  22.            and AD_SPI_SCK_GPIO Periph clock enable */
  23.         RCC_APB2PeriphClockCmd(AD_CS_GPIO_CLK | AD_SPI_MISO_GPIO_CLK | AD_SPI_SCK_GPIO_CLK
  24.                         , ENABLE);
  25.        
  26.         /* AD_SPI Periph clock enable */
  27.         RCC_APB1PeriphClockCmd(AD_SPI_CLK, ENABLE);
  28.        
  29.         /* Configure AD_SPI pins: SCK */
  30.         GPIO_InitStructure.GPIO_Pin = AD_SPI_SCK_PIN;
  31.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  32.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
  33.         GPIO_Init(AD_SPI_SCK_GPIO_PORT, &GPIO_InitStructure);
  34.        
  35.         /* Configure AD_SPI pins: MISO */
  36.         GPIO_InitStructure.GPIO_Pin = AD_SPI_MISO_PIN;
  37.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;  
  38.         GPIO_Init(AD_SPI_MISO_GPIO_PORT, &GPIO_InitStructure);
  39.        
  40.         GPIO_InitStructure.GPIO_Pin = AD_CS_PIN;
  41.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  42.         GPIO_Init(AD_CS_GPIO_PORT, &GPIO_InitStructure);
  43.        
  44.         /* AD_SPI Config */
  45.         SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex;
  46.         //SPI_InitStructure.SPI_Direction = SPI_Direction_1Line_Rx;
  47.         SPI_InitStructure.SPI_Mode = SPI_Mode_Master;
  48.         SPI_InitStructure.SPI_DataSize = SPI_DataSize_16b;
  49.         SPI_InitStructure.SPI_CPOL = SPI_CPOL_High;
  50.         SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;
  51.         SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;
  52.         SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_8;
  53.         SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB;
  54.         SPI_InitStructure.SPI_CRCPolynomial = 7;
  55.         SPI_Init(AD_SPI, &SPI_InitStructure);
  56.        
  57.         SPI_Cmd(AD_SPI, ENABLE); /* AD_SPI enable */
  58.        
  59.         /* 配置其它的GPIO */

  60.         /* 使能GPIO時鐘 */
  61.         RCC_APB2PeriphClockCmd(AD_RESET_GPIO_CLK | AD_CONVST_GPIO_CLK | AD_OS0_GPIO_CLK
  62.                 | AD_OS1_GPIO_CLK | AD_OS2_GPIO_CLK, ENABLE);

  63.         /* 配置RESET GPIO */
  64.         GPIO_InitStructure.GPIO_Pin = AD_RESET_PIN;
  65.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  66.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  67.         GPIO_Init(AD_RESET_GPIO_PORT, &GPIO_InitStructure);
  68.        
  69.         /* 配置CONVST GPIO */
  70.         GPIO_InitStructure.GPIO_Pin = AD_CONVST_PIN;
  71.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  72.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  73.         GPIO_Init(AD_CONVST_GPIO_PORT, &GPIO_InitStructure);

  74.         /* 配置OS0-2 GPIO */
  75.         GPIO_InitStructure.GPIO_Pin = AD_OS0_PIN;
  76.         GPIO_Init(AD_OS0_GPIO_PORT, &GPIO_InitStructure);

  77.         GPIO_InitStructure.GPIO_Pin = AD_OS1_PIN;
  78.         GPIO_Init(AD_OS1_GPIO_PORT, &GPIO_InitStructure);

  79.         GPIO_InitStructure.GPIO_Pin = AD_OS2_PIN;
  80.         GPIO_Init(AD_OS2_GPIO_PORT, &GPIO_InitStructure);

  81.         /* 設置過采樣模式 */
  82.         ad7606_SetOS(0);

  83.         /* 設置GPIO的初始狀態(tài) */
  84.         ad7606_Reset();                                /* 硬件復位復AD7606 */
  85.        
  86.         AD_CONVST_HIGH();                        /* CONVST腳設置為高電平 */       

  87.         bsp_TIM4_Configuration();        /* 配置TIM2定時中斷 */               
  88. }

  89. /*
  90. *********************************************************************************************************
  91. *        函 數(shù) 名: ad7606_Reset
  92. *        功能說明: 硬件復位AD7606
  93. *        形    參:無
  94. *        返 回 值: 無
  95. *********************************************************************************************************
  96. */
  97. void ad7606_Reset(void)
  98. {
  99.         /* AD7606是高電平復位,要求最小脈寬50ns */
  100.        
  101.         AD_RESET_LOW();
  102.        
  103.         AD_RESET_HIGH();
  104.         AD_RESET_HIGH();
  105.         AD_RESET_HIGH();
  106.         AD_RESET_HIGH();
  107.        
  108.         AD_RESET_LOW();
  109. }

  110. /*
  111. *********************************************************************************************************
  112. *        函 數(shù) 名: ad7606_SetOS
  113. *        功能說明: 設置過采樣模式(數(shù)字濾波,硬件求平均值)
  114. *        形    參:_ucMode : 0-6  0表示無過采樣,1表示2倍,2表示4倍,3表示8倍,4表示16倍
  115. *                                5表示32倍,6表示64倍
  116. *        返 回 值: 無
  117. *********************************************************************************************************
  118. */
  119. void ad7606_SetOS(uint8_t _ucMode)
  120. {
  121.         if (_ucMode == 1)
  122.         {
  123.                 AD_OS2_0();
  124.                 AD_OS1_0();
  125.                 AD_OS0_1();
  126.         }
  127.         else if (_ucMode == 2)
  128.         {
  129.                 AD_OS2_0();
  130.                 AD_OS1_1();
  131.                 AD_OS0_0();
  132.         }
  133.         else if (_ucMode == 3)
  134.         {
  135.                 AD_OS2_0();
  136.                 AD_OS1_1();
  137.                 AD_OS0_1();
  138.         }
  139.         else if (_ucMode == 4)
  140.         {
  141.                 AD_OS2_1();
  142.                 AD_OS1_0();
  143.                 AD_OS0_0();
  144.         }
  145.         else if (_ucMode == 5)
  146.         {
  147.                 AD_OS2_1();
  148.                 AD_OS1_0();
  149.                 AD_OS0_1();
  150.         }
  151.         else if (_ucMode == 6)
  152.         {
  153.                 AD_OS2_1();
  154.                 AD_OS1_1();
  155.                 AD_OS0_0();
  156.         }
  157.         else        /* 按0處理 */
  158.         {
  159.                 AD_OS2_0();
  160.                 AD_OS1_0();
  161.                 AD_OS0_0();
  162.         }
  163. }

  164. /*
  165. *********************************************************************************************************
  166. *        函 數(shù) 名: ad7606_StartConv
  167. *        功能說明: 啟動AD7606的ADC轉(zhuǎn)換
  168. *        形    參:無
  169. *        返 回 值: 無
  170. *********************************************************************************************************
  171. */
  172. void ad7606_StartConv(void)
  173. {
  174.         /* 上升沿開始轉(zhuǎn)換,低電平持續(xù)時間至少25ns  */
  175.         AD_CONVST_LOW();
  176.         AD_CONVST_LOW();
  177.         AD_CONVST_LOW();        /* 連續(xù)執(zhí)行2次,低電平約50ns */
  178.        
  179.         AD_CONVST_HIGH();
  180. }

  181. /*
  182. *********************************************************************************************************
  183. *        函 數(shù) 名: bsp_TIM4_Configuration
  184. *        功能說明: 配置TIM4定時器
  185. *        形    參:無
  186. *        返 回 值: 無
  187. *********************************************************************************************************
  188. */
  189. void bsp_TIM4_Configuration(void)
  190. {
  191.         NVIC_InitTypeDef NVIC_InitStructure;
  192.        
  193.         /* TIM2 clock enable */
  194.         RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, ENABLE);  

  195.         /* Configure the NVIC Preemption Priority Bits[配置優(yōu)先級組] */  
  196.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);

  197.         /* Enable the TIM2 gloabal Interrupt [允許TIM2全局中斷]*/
  198.         NVIC_InitStructure.NVIC_IRQChannel = TIM4_IRQn;
  199.         NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
  200.         NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;  
  201.         NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
  202.         NVIC_Init(&NVIC_InitStructure);
  203. }
  204.        
  205. /*
  206. *********************************************************************************************************
  207. *        函 數(shù) 名: bsp_SET_TIM4_FREQ
  208. *        功能說明: 設置TIM4定時器頻率
  209. *        形    參:_ulFreq : 采樣頻率,單位Hz,
  210. *        返 回 值: 無
  211. *********************************************************************************************************
  212. */
  213. void bsp_SET_TIM4_FREQ(uint32_t _ulFreq)
  214. {
  215.         TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;
  216.         uint16_t usPrescaler;
  217.         uint16_t usPeriod;

  218.         TIM_DeInit(TIM4);        /* 復位TIM2定時器 */

  219.         /* TIM2 configuration
  220.                 TIM2CLK = 36 MHz       
  221.         */
  222.         if (_ulFreq == 0)
  223.         {
  224.                 return;                /* 采樣頻率為0,停止采樣 */
  225.         }
  226.         else if (_ulFreq <= 100)   /* 采樣頻率小于100Hz */
  227.         {
  228.                 usPrescaler = 36000;                /* TM2CLK = 72 000 000/36000 = 2000 */
  229.                 usPeriod = 2000 / _ulFreq;                                
  230.         }
  231.         else if (_ulFreq <= 200000)        /* 采樣頻率 :100Hz - 200kHz */
  232.         {
  233.                 usPrescaler = 36 - 1;                /* TM2CLK = 36 000 000/36 = 2 000 000 */
  234.                 usPeriod = 2000000 / _ulFreq;
  235.         }       
  236.         else        /* 采樣頻率大于 200kHz */
  237.         {
  238.                 return;
  239.         }
  240.        
  241.         TIM_TimeBaseStructure.TIM_Period = usPeriod - 1;                 /* 計數(shù)周期 */
  242.         TIM_TimeBaseStructure.TIM_Prescaler = usPrescaler;        /* 分頻系數(shù) */
  243.         TIM_TimeBaseStructure.TIM_ClockDivision = 0x0;                 /* */
  244.         TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;  //計數(shù)方向向上計數(shù)
  245.         TIM_TimeBaseInit(TIM4, &TIM_TimeBaseStructure);

  246.         /* Clear TIM2 update pending flag[清除TIM2溢出中斷標志] */
  247.         TIM_ClearFlag(TIM4, TIM_FLAG_Update);

  248.         TIM_SetCounter(TIM4, 0);

  249.         /* Enable TIM2 Update interrupt [TIM2溢出中斷允許]*/
  250.         TIM_ITConfig(TIM4, TIM_IT_Update, ENABLE);  

  251.         /* TIM2 enable counter [允許tim2計數(shù)]*/
  252.         TIM_Cmd(TIM4, ENABLE);
  253. }  


  254. /*
  255. *********************************************************************************************************
  256. *        函 數(shù) 名: ad7606_ReadBytes
  257. *        功能說明: 讀取AD7606的采樣結果
  258. *        形    參:
  259. *        返 回 值: 無
  260. *********************************************************************************************************
  261. */
  262. uint16_t ad7606_ReadBytes(void)
  263. {
  264.   uint16_t usData = 0;
  265.   
  266.   /* Wait until the transmit buffer is empty */
  267.   while (SPI_I2S_GetFlagStatus(AD_SPI, SPI_I2S_FLAG_TXE) == RESET)
  268.   {
  269.   }
  270.   
  271.   /* Send the byte */
  272.   SPI_I2S_SendData(AD_SPI, 0xFFFF);

  273.   /* Wait until a data is received */
  274.   while (SPI_I2S_GetFlagStatus(AD_SPI, SPI_I2S_FLAG_RXNE) == RESET)
  275.   {
  276.   }
  277.   
  278.   /* Get the received data */
  279.   usData = SPI_I2S_ReceiveData(AD_SPI);

  280.   /* Return the shifted data */
  281.   return usData;
  282. }

  283. /*
  284. *********************************************************************************************************
  285. *        函 數(shù) 名: ad7606_IRQSrc
  286. *        功能說明: 定時調(diào)用本函數(shù),用于讀取AD轉(zhuǎn)換器數(shù)據(jù)
  287. *        形    參:無
  288. *        返 回 值: 無
  289. *********************************************************************************************************
  290. */
  291. void ad7606_IRQSrc(void)
  292. {
  293.         uint8_t i;
  294.         uint16_t usReadValue;

  295.         TIM_ClearFlag(TIM4, TIM_FLAG_Update);

  296.         /* 讀取數(shù)據(jù)
  297.         示波器監(jiān)測,CS低電平持續(xù)時間 35us
  298.         */
  299.         AD_CS_LOW();
  300.         for (i = 0; i < CH_NUM; i++)
  301.         {
  302.                 usReadValue = ad7606_ReadBytes();       
  303.                 if (g_tAD.usWrite < FIFO_SIZE)
  304.                 {
  305.                         g_tAD.usBuf[g_tAD.usWrite] = usReadValue;
  306.                         ++g_tAD.usWrite;
  307.                 }
  308.         }               
  309.        
  310.         AD_CS_HIGH();       

  311.         ad7606_StartConv();
  312. }

  313. /*
  314. *********************************************************************************************************
  315. *        函 數(shù) 名: GetAdcFormFifo
  316. *        功能說明: 從FIFO中讀取一個ADC值
  317. *        形    參:_usReadAdc : 存放ADC結果的變量指針
  318. *        返 回 值: 1 表示OK,0表示暫無數(shù)據(jù)
  319. *********************************************************************************************************
  320. */
  321. uint8_t GetAdcFormFifo(uint16_t *_usReadAdc)
  322. {
  323.         uint16_t usWrite;
  324.        
  325.         DISABLE_INT();       
  326.         usWrite = g_tAD.usWrite;
  327.         ENABLE_INT();
  328.        
  329.         if (usWrite != g_tAD.usRead)
  330.         {
  331.                 *_usReadAdc = g_tAD.usBuf[g_tAD.usRead];

  332.                 DISABLE_INT();
  333.                 if (++g_tAD.usRead >= FIFO_SIZE)
  334.                 {
  335.                         g_tAD.usRead = 0;
  336.                 }               
  337.                 ENABLE_INT();
  338.                 return 1;               
  339.         }
  340.         return 0;
  341. }

  342. /*
  343. *********************************************************************************************************
  344. *        函 數(shù) 名: ad7606_StartRecord
  345. *        功能說明: 開始采集
  346. *        形    參:_ulFreq : 采樣頻率, 單位 HZ
  347. *        返 回 值: 無
  348. *********************************************************************************************************
  349. */
  350. void ad7606_StartRecord(uint32_t _ulFreq)
  351. {
  352.         //ad7606_Reset();        /* 復位硬件 */

  353.         ad7606_StartConv();                                /* 啟動采樣,避免第1組數(shù)據(jù)全0的問題 */

  354.         g_tAD.usRead = 0;                                /* 必須在開啟TIM2之前清0 */
  355.         g_tAD.usWrite = 0;

  356.         bsp_TIM4_Configuration();                /* 配置TIM2定時中斷 */               

  357.         bsp_SET_TIM4_FREQ(_ulFreq);                /* 設置采樣頻率, 并使能TIM2定時采樣中斷 */
  358. }

  359. /*
  360. *********************************************************************************************************
  361. *        函 數(shù) 名: ad7606_StopRecord
  362. *        功能說明: 停止采集
  363. *        形    參:無
  364. *        返 回 值: 無
  365. *********************************************************************************************************
  366. */
  367. void ad7606_StopRecord(void)
  368. {
  369.         /* TIM2 enable counter [允許tim2計數(shù)]*/
  370.         TIM_Cmd(TIM4, DISABLE);
  371. }

  372. void TIM4_IRQHandler(void)
  373. {
  374.         ad7606_IRQSrc();
  375. }
復制代碼
全部資料51hei下載地址:
AD7606數(shù)據(jù)采集模塊資料(2015-01-22).7z (3.99 MB, 下載次數(shù): 35)

1641362416(1).png (28.4 KB, 下載次數(shù): 106)

1641362416(1).png

評分

參與人數(shù) 1黑幣 +10 收起 理由
admin + 10 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:8222 發(fā)表于 2022-1-13 10:14 | 只看該作者
到底是7705還是7606?
回復

使用道具 舉報

板凳
ID:250090 發(fā)表于 2022-11-4 13:33 | 只看該作者
到底是7705還是7606?
回復

使用道具 舉報

地板
ID:211544 發(fā)表于 2022-11-18 15:13 | 只看該作者
是7705
回復

使用道具 舉報

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

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精品一区在线 | 伊人久久大香线 | 国产精品美女久久久 | 久久久久久免费毛片精品 | 国产精品色 | 蜜桃视频在线观看免费视频网站www | 丝袜 亚洲 欧美 日韩 综合 | 午夜影院黄| 日本超碰| 日韩a在线观看 | 国产91综合一区在线观看 | 国产精品天堂 | 成人在线免费视频 | 日韩精品一区二区三区免费视频 | 精品视频免费 | 免费在线观看一级毛片 | 91色在线 | 女同久久| 国产区精品 | 91精品国产高清一区二区三区 | 国产一区二区三区不卡av | 国产激情毛片 | 久久久久久电影 | 欧美日韩在线免费观看 | 久久三区 | 日韩成人免费中文字幕 | 国产高清在线精品一区二区三区 | 天天摸天天干 | 日韩av成人 | 91精品国产一区二区三区 | 久久久国产精品 | 亚洲一二三区在线观看 | 国产成人99久久亚洲综合精品 | 久久久久亚洲精品 | 99久久婷婷国产亚洲终合精品 | 午夜网| 欧美极品一区二区 | 国产黄色大片网站 | 91av在线免费观看 | 男人的天堂久久 | 毛片av免费看 |