加入星計劃,您可以享受以下權益:

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

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

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

設計采集板的目標

設計基于 STC8G8K64U 單片機的高速 ADC 采樣板,可以為普通的電路實驗提供快速波形采樣的模塊。

該模塊也可以應用于全國大學生智能車競賽聲音信標組數(shù)據(jù)采集實驗中,作為向同學們介紹的解決方案,明天給出相應實驗結果。

設計采樣板的技術指標:

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

電路板設計

1. 原理圖設計

▲ 原理圖設計

?

對外接口定義:

「(1)ISP 端口:」

序號 管腳名稱 功能
1 VCC +5V 電源
2 GND 電源地線
3 TXD 連接 UART1-TXD
4 RXD 連接 UART1-RXD

「(2)ADC 端口:」

序號 管腳名稱 功能
1 ADC0 模擬輸入端口 0
2 ADC1 模擬輸入端口 1
3 ADC2 模擬輸入端口 2
4 GND 信號底線

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

2. PCB 版圖設計

▲ PCB 板圖設計

?

▲ 焊接之后的電路板

?

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

?

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

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

由于配置 STC8H8K 工作在 48MHz,提高單片機運行速度。

▲ 單片機硬件配置

?

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

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

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

?

「(3)配置 WiFI-UART:」

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

▲ 無線登錄界面

?

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

「STA 設置:」

▲ STA 設置

?

「AP 設置:」

▲ AP 設置

?

「網(wǎng)絡設置:」

▲ 網(wǎng)絡設置

?

「串口設置:」

▲ 串口設置

?

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

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

?

4. 軟件命令

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

????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ù)程序

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

具體的程序可以在 CSDN 對應的博文中看到。

模塊測試性能

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

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

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

▲ 兩個通道采集的波形

相關推薦

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

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