未知電路板原理圖測(cè)繪系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
3 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件運(yùn)行于PC機(jī)平臺(tái)上,通過USB總線對(duì)測(cè)試電路進(jìn)行控制并接收測(cè)試電路測(cè)試數(shù)據(jù),根據(jù)接收到的數(shù)據(jù)形成所測(cè)電路板電路連線表。現(xiàn)主要分析與電路測(cè)繪有關(guān)的測(cè)試電路控制程序:
(1)首先利用ADDR1尋址測(cè)試基準(zhǔn)針床,每個(gè)針床都有特定的地址碼,如發(fā)送ADDR1=00000001,表示選中1號(hào)測(cè)試針床,以此為基準(zhǔn)測(cè)試針床來對(duì)其它針床進(jìn)行測(cè)試。
(2)1號(hào)測(cè)試針床利用AD1總線對(duì)其上所有探針進(jìn)行尋址,AD1總線尋址該針床的基準(zhǔn)測(cè)試點(diǎn),如發(fā)送AD1=00000001,表示尋址到1號(hào)探針,即1號(hào)探針連接D1端。
(3)以ADDR1所尋址針床為基準(zhǔn),利用ADDR2尋址所有針床,所尋址的針床利用AD2總線對(duì)其上探針進(jìn)行尋址。
(4)以AD1總線所尋址探針為基準(zhǔn),對(duì)AD2總線所尋址探針進(jìn)行遍歷測(cè)試。
程序偽代碼如下:
for( ADDR1=1 to 20) //假定共有20個(gè)測(cè)試針床,選定基準(zhǔn)測(cè)試針床
{
for( AD1 = 1 to 256) //假定每個(gè)針床上有256個(gè)探針和焊/點(diǎn)相連,選定基準(zhǔn)測(cè)試焊點(diǎn)
{
for( ADDR2 = 1 to 20) //依次尋址所有針床
{
for( AD2 = 1 to 256) //依次尋址測(cè)試針床上所有探針(焊點(diǎn))
{
//測(cè)試電路測(cè)試函數(shù)
?。?br /> }
}
}
}
通過以上測(cè)試程序,即可實(shí)現(xiàn)每個(gè)探針(焊點(diǎn))和其它所有探針(焊點(diǎn))的遍歷測(cè)試,從而獲取電路板上每個(gè)焊點(diǎn)的連接情況。
通過電路板上元器件型號(hào)知識(shí),利用此套測(cè)繪系統(tǒng)所測(cè)繪的電路板連線表,結(jié)合相應(yīng)PCB設(shè)計(jì)軟件及人工干預(yù),在某個(gè)引進(jìn)裝備上實(shí)現(xiàn)了未知電路板的測(cè)繪工作,得到了其電路原理圖,為下一步的反設(shè)計(jì)工作奠定了基礎(chǔ)。由于涉及知識(shí)產(chǎn)權(quán)問題,該系統(tǒng)僅應(yīng)用于特殊領(lǐng)域電子設(shè)備。
本文引用地址:http://www.biyoush.com/article/173856.htm
評(píng)論