基于雙模式USB接口的多處理器數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
3.2 從機(jī)模式
此模式下,單片機(jī)通過CH375與PC機(jī)進(jìn)行通訊,完成采集方案下載與數(shù)據(jù)上傳,程序流程圖如圖5所示。本文引用地址:http://butianyuan.cn/article/187811.htm
單片機(jī)重新初始化CH375并設(shè)置為設(shè)備工作模式。測試芯片正常連接后,系統(tǒng)可接收PC機(jī)發(fā)送的數(shù)據(jù)。主控單片機(jī)根據(jù)下載的采集方案進(jìn)行采集測試,并將結(jié)果數(shù)據(jù)存入采集緩沖區(qū),待緩沖區(qū)滿,則向PC機(jī)請求上傳。采集結(jié)束,數(shù)據(jù)全部上傳,系統(tǒng)完成一個(gè)從機(jī)模式采集工作過程。從機(jī)模式單片機(jī)程序基本框架如下:
CH375Init(); //初始化CH375
DelaymS(50); //延時(shí)
CH375_WR_CMD_PORT(CMD_SET_USB_MODE);
//設(shè)置USB工作模式
CH375_WR_DAT_PORT(2);
//模式代碼,已啟用的內(nèi)置固件USB設(shè)備模式 DelayuS(20);
//延時(shí)
CH375_WR_CMD_PORT(CMD_CHECK_EXIST);
//測試工作狀態(tài)
CH375_WR_DAT_PORT(0x57); //寫入測試數(shù)據(jù) DelayuS(10);
//延時(shí)
If(CH375_RD_DAT_PORT( )==0xA8);
//讀出測試數(shù)據(jù)是否按位取反,判斷工作狀態(tài)
……
CH375_WR_CMD_PORT(CMD_GET_STATUS);
//中斷子程序中,讀取中斷狀態(tài)命令
int_sn=CH375_RD_DAT_PORT( ); //讀中斷號 ……
if (int_sn ==USB_INT_USB_EP2_OUT)
CH375_WR_CMD_PORT(CMD_RD_USB_DATA);
//讀取上位機(jī)測試方案數(shù)據(jù)并釋放緩沖區(qū)
……
test_all( ); //按下載方案測試采集數(shù)據(jù)
……
While (flag_upload == 0) //數(shù)據(jù)上傳未結(jié)束
{
……
CH375_WR_CMD_PORT(CMD_WR_USB_DATA 7);
//批量上傳采集數(shù)據(jù)
CH375_WR_DAT_PORT(n); //寫入上傳字節(jié)數(shù)
for (i=0;in;i++) //每次上傳n字節(jié)
CH375_WR_DAT_PORT(*test_buf ++);
//上傳采集結(jié)果,指針自動(dòng)加1
……
}
……
if (int_sn ==USB_INT_USB_EP2_IN)
//中斷子程序中,中斷號為端點(diǎn)2發(fā)送數(shù)據(jù)完畢
CH375_WR_CMD_PORT(CMD_UNLOCK_USB);
//釋放緩沖區(qū)
基于CH375雙模式USB接口芯片,設(shè)計(jì)完成了主/從雙模式的數(shù)據(jù)采集測試系統(tǒng)。充分利用接口即插即用、便攜式的特點(diǎn),解決了特殊環(huán)境下的測試?yán)щy問題。同時(shí),系統(tǒng)具有雙模式、多單片機(jī)的優(yōu)勢,能夠滿足高標(biāo)準(zhǔn)的測試需求,具有廣闊的應(yīng)用前景。
參考文獻(xiàn)
[1] 薛小鈴,李麗華.一種U盤存儲的數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)[J].閩江學(xué)院學(xué)報(bào), 2008,29(5):44-47.
[2] 南京沁恒電子有限公司.USB總線接口芯片CH375中文手冊[EB /OL].[2005].http://wch.cn/download/ch375ds1.pdf
[3] 蔣樂濤.某型數(shù)字化隨動(dòng)系統(tǒng)分析及調(diào)測系統(tǒng)設(shè)計(jì)[D]. 南京:南京理工大學(xué),2008.
[4] 宏晶科技有限公司.STC12C5A60S2系列單片機(jī)器件手冊[EB/OL].[2009.6]. http://www.mcu-memory.com/
datasheet/stc/STC-AD-PDF/STC12C5A60S2.pdf
[5] 湯劍靈,高玉.USB通信芯片CH375在數(shù)據(jù)交換中的應(yīng)用[J].電子工程師,2007,33(10).
[6] 位耀東,馬海濤,董春波.基于雙模式USB接口的便攜式比色計(jì)設(shè)計(jì)[J].微計(jì)算機(jī)信息,2009,25(6-2).
評論