基于STC8G8K64U雙通道高速ADC采集板
設(shè)計(jì)采集板的目標(biāo)
設(shè)計(jì)基于STC8G8K64U單片機(jī)的高速ADC采樣板,可以為普通的電路實(shí)驗(yàn)提供快速波形采樣的模塊。
該模塊也可以應(yīng)用于全國(guó)大學(xué)生智能車競(jìng)賽聲音信標(biāo)組數(shù)據(jù)采集實(shí)驗(yàn)中,作為向同學(xué)們介紹的解決方案,明天給出相應(yīng)實(shí)驗(yàn)結(jié)果。
設(shè)計(jì)采樣板的技術(shù)指標(biāo):
-
采樣頻率: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ì)
對(duì)外接口定義:
「(1)ISP端口:」
序號(hào) | 管腳名稱 | 功能 |
---|---|---|
1 | VCC | +5V電源 |
2 | GND | 電源地線 |
3 | TXD | 連接UART1-TXD |
4 | RXD | 連接UART1-RXD |
「(2)ADC端口:」
序號(hào) | 管腳名稱 | 功能 |
---|---|---|
1 | ADC0 | 模擬輸入端口0 |
2 | ADC1 | 模擬輸入端口1 |
3 | ADC2 | 模擬輸入端口2 |
4 | GND | 信號(hào)底線 |
「(3)WiFI UART接口:」詳見(jiàn)電路原理圖的PCB的管腳定義。
2. PCB版圖設(shè)計(jì)
3. 電路軟件調(diào)試
「(1)單片機(jī)的硬件配置:」
由于配置STC8H8K工作在48MHz,提高單片機(jī)運(yùn)行速度。
「(2)串口波特率配置:」
-
UART1:配置波特率115200 ,這與下載器上的PL2303可以使用的波特率相匹配; -
UART2::配置的波特率為460800,這與WiFi-UART
「(3)配置WiFI-UART:」
STEP1:使用手機(jī),或者平板電腦,選擇USR-WIFI232-T-191無(wú)線網(wǎng)關(guān),登錄 10.10.100.254地址。在登錄界面輸入用戶名和密碼都是「admin」。
STEP2:按照下面的設(shè)置,設(shè)置WIFI-UART模塊的工作參數(shù)。
「STA設(shè)置:」
「AP設(shè)置:」
「網(wǎng)絡(luò)設(shè)置:」
「串口設(shè)置:」
「設(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 !\r\n", 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("\r\n");
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ù)波形:
公眾號(hào)留言
卓老師,剛才看到這下面這張圖我突然有個(gè)腦洞,有沒(méi)有可能讓車帶上VR設(shè)備,讓車在虛擬環(huán)境里比賽?!
2020屆的畢業(yè)生頒發(fā)畢業(yè)證書典禮
回復(fù):關(guān)于讓車模在虛擬仿真中運(yùn)行的辦法,我推薦大家看一下朱宗曉老師負(fù)責(zé)的平行智能研習(xí)社的工作。他們對(duì)此已經(jīng)開(kāi)展了很大的前期工作了??梢渣c(diǎn)擊下面圖片了解一下。
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!