加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專(zhuān)業(yè)用戶(hù)
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
    • 設(shè)計(jì)采集板的目標(biāo)
    • 電路板設(shè)計(jì)
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

基于STC8G8K64U雙通道高速ADC采集板

2020/04/26
169
閱讀需 5 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

設(shè)計(jì)采集板的目標(biāo)

設(shè)計(jì)基于 STC8G8K64U 單片機(jī)的高速 ADC 采樣板,可以為普通的電路實(shí)驗(yàn)提供快速波形采樣的模塊。

該模塊也可以應(yīng)用于全國(guó)大學(xué)生智能車(chē)競(jìng)賽聲音信標(biāo)組數(shù)據(jù)采集實(shí)驗(yàn)中,作為向同學(xué)們介紹的解決方案,明天給出相應(yīng)實(shí)驗(yàn)結(jié)果。

設(shè)計(jì)采樣板的技術(shù)指標(biāo):

  1. 采樣頻率:10kHz;采樣通道:2 通道采樣信號(hào):0~5V,數(shù)據(jù)位 12bit。外部數(shù)據(jù)接口:(1)UART2 通過(guò) USR-WiFi 接口發(fā)送到局部無(wú)線網(wǎng);(2)通過(guò)串口 UART1 通過(guò)調(diào)試器將數(shù)據(jù)發(fā)送到調(diào)試界面;

電路板設(shè)計(jì)

1. 原理圖設(shè)計(jì)

▲ 原理圖設(shè)計(jì)

?

對(duì)外接口定義:

「(1)ISP 端口:」

序號(hào) 管腳名稱(chēng) 功能
1 VCC +5V 電源
2 GND 電源地線
3 TXD 連接 UART1-TXD
4 RXD 連接 UART1-RXD

「(2)ADC 端口:」

序號(hào) 管腳名稱(chēng) 功能
1 ADC0 模擬輸入端口 0
2 ADC1 模擬輸入端口 1
3 ADC2 模擬輸入端口 2
4 GND 信號(hào)底線

「(3)WiFI UART 接口:」詳見(jiàn)電路原理圖的 PCB 的管腳定義。

2. PCB 版圖設(shè)計(jì)

▲ PCB 板圖設(shè)計(jì)

?

▲ 焊接之后的電路板

?

▲ 安裝有 WiFi-UART 模塊后的電路板

?

3. 電路軟件調(diào)試

「(1)單片機(jī)的硬件配置:」

由于配置 STC8H8K 工作在 48MHz,提高單片機(jī)運(yùn)行速度。

▲ 單片機(jī)硬件配置

?

「(2)串口波特率配置:」

  1. UART1:配置波特率 115200 ,這與下載器上的 PL2303 可以使用的波特率相匹配;UART2::配置的波特率為 460800,這與 WiFi-UART

▲ 硬件連接調(diào)試

?

「(3)配置 WiFI-UART:」

STEP1:使用手機(jī),或者平板電腦,選擇 USR-WIFI232-T-191 無(wú)線網(wǎng)關(guān),登錄 10.10.100.254 地址。在登錄界面輸入用戶(hù)名和密碼都是「admin」。

▲ 無(wú)線登錄界面

?

STEP2:按照下面的設(shè)置,設(shè)置 WIFI-UART 模塊的工作參數(shù)。

「STA 設(shè)置:」

▲ STA 設(shè)置

?

「AP 設(shè)置:」

▲ AP 設(shè)置

?

「網(wǎng)絡(luò)設(shè)置:」

▲ 網(wǎng)絡(luò)設(shè)置

?

「串口設(shè)置:」

▲ 串口設(shè)置

?

「設(shè)置后的系統(tǒng)信息:」

▲ 設(shè)置后的系統(tǒng)信息

?

4. 軟件命令

模塊通過(guò) UART1(115200),UART2(460800)接收字符命令,分別輸出采集的結(jié)果以及重新開(kāi)始新的采集過(guò)程。具體的功能可以參見(jiàn)下面一段程序:

????if(strcmp("hello",????????????????(char?*)STD_ARG[0])?*?0)
????????printf("%s?is?ready?!rn",?VERSION_STRING);
????else?IFARG0("adc")?{
????????g_nADBufferPoint?=?0;????????
????????TIME3_INT_ENABLE;????????
????}
????else?IFARG0("buf")?{
????????sscanf(SDA(1),?"%d",?&nStart);
????????sscanf(SDA(2),?"%d",?&nLength);
????????
????????nCheck?=?0;
????????for(i?=?0;?i?<?nLength;?i?++)?{
????????????nNumber?=?g_nADBuffer[i?+?nStart];
????????????UART2SendChar((unsigned?char)(nNumber?>>?8));
????????????UART2SendChar((unsigned?char)(nNumber?&?0xff));
????????????nCheck?+=?nNumber;
????????}????????
????
????}?else?IFARG0("sf")?{
????????SendChar(0x0);
????????for(i?=?0;?i?<?AD_BUFFER;?i?++)?{
????????????printf("%d?",?g_nADBuffer[i]);
????????}
????????printf("rn");
????????g_nADBufferPoint?=?0;
????????TIME3_INT_ENABLE;????
????}
?

5. PYTHON 獲取數(shù)據(jù)程序

過(guò) PYTHON 編程,可以從 WiFi 獲取采集板的 8k 數(shù)據(jù)。

具體的程序可以在 CSDN 對(duì)應(yīng)的博文中看到。

模塊測(cè)試性能

1. 數(shù)據(jù)傳送時(shí)間

通過(guò) WiFi-UAR 收到 4096(8192 bytes)數(shù)據(jù)為 0.489s 左右。

下圖是對(duì)兩路正弦波采集到的數(shù)據(jù)波形:

▲ 兩個(gè)通道采集的波形

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

公眾號(hào)TsinghuaJoking主筆。清華大學(xué)自動(dòng)化系教師,研究興趣范圍包括自動(dòng)控制、智能信息處理、嵌入式電子系統(tǒng)等。全國(guó)大學(xué)生智能汽車(chē)競(jìng)賽秘書(shū)處主任,技術(shù)組組長(zhǎng),網(wǎng)稱(chēng)“卓大大”。