999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

數字指令驅動電路測試方法研究

2020-05-11 09:02:16張春宇
微處理機 2020年2期
關鍵詞:指令單片機計算機

張春宇

(中國電子科技集團公司第四十七研究所,沈陽110032)

1 引 言

在當今社會,基于嵌入式技術的產品隨處可見,大到航空航天,小到家電設備。各行各業都提倡智能管理,這其中應用最多的就是嵌入式技術。由于嵌入式技術具有可控制、可編程、成本低等優點,所以近十年得到了空前高速發展[1-4]。應用嵌入式技術,可更加有效地完成數字指令驅動電路的測試[5]。

2 系統概要

數字指令驅動電路是一種ASIC 電路[6]。它的外圍端口有兩路串行輸入、一路串行輸出、九十六路并行輸出、控制端口若干,其工作過程為接收串行輸入的指令,內部狀態機對串行指令進行接收并解析,并將解析結果通過并行輸出。沒有指令執行時九十六路輸出端口全為高電平,當有指令執行時,指令中指定的輸出端口輸出固定時間長度的低電平,其他端口輸出高電平。

ASIC 電路能夠接收的指令分為兩種,執行指令和查詢指令,每種指令都由若干字節組成,執行指令中包含輸出端口號和輸出端口保持時間,查詢指令用于查詢ASIC 電路內部各寄存器狀態。ASIC 電路有四位地址編碼,當多個ASIC 電路接到總線上時,只有指令中的地址編碼與ASIC 電路的地址編碼一致時,指令才會被執行,否則被丟棄。

要實現對ASIC 電路指令的測試,必須按照電路指定的時序發送固定的指令,才會被ASIC 電路解析并正確的執行。計算機程序可以實現指令發送工作。單片機具有檢測ASIC 電路輸出端口保持低電平時間的功能。這樣搭建計算機-單片機-ASIC 電路三級互連系統,相互聯系,協同工作,可完成ASIC電路的指令及功能測試工作[7-8]。

3 系統設計

系統設計包括硬件電路設計、軟件程序設計和通訊協議設計三個方面。

3.1 硬件電路設計

根據ASIC 電路介紹,設計如圖1 所示電路來完成測試工作。

圖1 系統硬件電路構成示意圖

計算機采用普通PC 機,單片機采用飛利浦公司的P89C51RD2 型。計算機、單片機、ASIC 電路連接到RS422 總線上進行通訊,ASIC 電路可以直接接到總線上,而計算機與單片機需要增加總線轉換器件。ASIC 電路的并行輸出信號,通過十二個八路的數據選擇電路和一個三線-八線譯碼電路構成的組合邏輯,接到單片機的一個輸入口上。ASIC 電路的兩個串行輸入口通過一個數據分配器電路連接到系統總線上。在這個硬件系統里,計算機作為主機負責發送指令給單片機或者ASIC 電路,并接收它們的返回信息。單片機作為第一個從機負責接收計算機的指令,根據不同指令,執行占有總線、釋放總線和選擇測試通道等。ASIC 電路作為第二個從機負責接收計算機發送的指令并執行。對于執行指令,執行結果被單片機采集并反饋給計算機,對于查詢指令,直接反饋給計算機。在這個一主機雙從機的系統里,主機和從機之間采用RS422 總線數據傳輸協議,雙從機采用分時占用總線的形式與主機進行通訊。

3.2 軟件設計

軟件設計包括計算機軟件設計和單片機軟件設計兩部分。

3.2.1 計算機軟件設計

計算機軟件采用Visual Studio 2010 中的C#語言在Windows 7 環境下開發。C#是一種最新的、面向對象的編程語言,使得程序員可以快速地編寫各種基于Microsoft .NET 平臺的應用程序[9]。在Visual Studio 2010 中編寫串口通訊程序非常方便,它提供了一個串口通訊類,所有與串口相關的操作都可以用此類的實例來完成。

ASIC 電路有執行和查詢兩種指令,計算機機軟件設計了針對這兩種指令的測試程序。

測試執行指令的程序執行過程為:發送執行指令之前,計算機先發送兩條指令給單片機,第一條指令告訴單片機將它的發送端接到系統總線上,這樣執行指令執行完的結果能及時反饋給計算機,第二條指令告訴單片機待測試指令中的通道號,單片機將此ASIC 電路的并行輸出端口連接到單片機的采集信號管腳上。兩條指令發送完畢后,計算機發送執行指令給ASIC 電路,ASIC 電路的執行結果被單片機采集到,并反饋給計算機。執行指令中的通道執行時間與單片機采集到的執行時間一致時,計算機軟件顯示執行指令執行正確,否則顯示錯誤。

另外計算機軟件中可以設置四位的ID 號,即ASIC 電路的地址,地址一致的ASIC 電路才能接收執行指令并執行,計算機軟件可以對最多十六個ASIC 電路進行測試。對于指令的執行時間,可以設置1ms 到255ms。執行指令測試界面如圖2 所示。

圖2 執行指令測試界面

測試查詢指令的程序執行過程為:發送查詢指令之前,計算機先發送一條指令給單片機,告訴單片機將其發送端從系統總線上斷開,將ASIC 電路的發送端連接到總線上,這樣查詢指令執行完的結果能及時反饋給計算機[10-11]。待這條指令執行完后系統做好了執行查詢指令的準備,這時計算機開始發送查詢指令,并接收ASIC 電路的返回信息。ASIC 電路執行查詢指令后將內部各寄存器的值按固定格式發送給計算機,計算機接收到查詢指令的返回信息,進行解讀并顯示。查詢指令測試界面如圖3 所示。

圖3 查詢指令測試界面

3.2.2 單片機軟件設計

單片機軟件在Keil μVision5 環境下采用C 語言編寫。Keil C51 是美國Keil Software 公司出品的51 系列兼容單片機C 語言軟件開發系統。Keil 提供了包括C 編譯器、宏匯編、鏈接器、庫管理和功能強大的仿真調試器等在內的完整開發方案,通過一個集成開發環境(μVision)將這些部分組合在一起。

在這里,單片機軟件負責接收計算機軟件發送的指令,執行后將結果反饋給計算機軟件。單片機軟件主要會接收三個指令,第一個是關鍵字為“AA”或“AB”的指令,單片機接收到這個指令后,提取出指令中的待測試通道號,然后將這個通道接到單片機采集端口上,并開始監視該端口的狀態,當該端口出現一個正脈沖變化時,單片機記錄了脈沖保持的時間,然后把這個時間發送給計算機,并且關閉測試通道與單片機采集端口的連接,這就是第一個指令的完整執行過程。第二個是關鍵字為“AC”的指令,單片機接收到這個指令后直接將其向計算機發送數據的通路在系統總線上斷開,這是為了測試查詢指令做準備。第三個是關鍵字為“AD”的指令,單片機接收到這個指令后將其向計算機發送數據的通路連接到系統總線上,這是為了測試執行指令做準備。單片機串口中斷程序流程圖如圖4 所示。

圖4 單片機串口中斷程序流程圖

單片機在執行采集指令執行時間之前, 要先將ASIC 電路的待測試并行輸出端口連接到單片機的采集端口上,實現方法是P2 口通過一系列組合邏輯器件將ASIC 電路的九十六路并行輸出端口進行了編址,要測試哪個通道,P2 口輸出其地址即可。

單片機測試正脈沖保持時間的方法是采用定時器0 記錄待測試通道的正脈沖時間,硬件上將單片機的P3.2 端口,即外部中斷0 端口作為ASIC 電路并行輸出通道的采集端口,在單片機程序初始化中,設置定時器方式選擇寄存器(TMOD)的值為09H,當執行指令開始執行后,P3.2 口由低電平變為高電平,定時器0 啟動計時,當執行指令結束后,P3.2 口由高電平變為低電平,單片機外部中斷0 觸發。在中斷程序里,停止定時器0 工作,整個計時過程結束。最后將這個時間發送給計算機,和計算機發送的指令執行時間對比,即完成了執行指令的測試。為了保證測試精度,減小測試誤差,這里設置定時器0 的溢出時間為0.4ms。

執行指令完整的測試過程為:計算機發送關鍵字為“AD”的指令,單片機收到后,將其向計算機發送數據的通路連接到系統總線上。計算機發送關鍵字為“AA”或“AB”的指令,單片機收到后將待測試通道連接到采集端口上,并監測端口上信號變化。計算機發送執行指令給ASIC 電路,ASIC 電路接收并執行,單片機將ASIC 電路執行結果發送給計算機。計算機收到執行指令的執行結果進行比對并顯示,執行指令測試結束。

查詢指令的完整測試過程為:計算機發送關鍵字為“AC”的指令,單片機收到后,將ASIC 電路向計算機發送數據的通路連接到系統總線上。計算機發送查詢指令給ASIC 電路,ASIC 電路收到查詢指令后,讀取各寄存器狀態,將查詢結果發送給計算機,計算機收到查詢指令的結果后進行顯示,查詢指令測試結束。

3.3 通訊協議設計

通訊協議是計算機與ASIC 電路或單片機之間能夠協同工作的重要依據,通常由一幀若干字節合在一起的數據組成,包括協議頭、協議尾、校驗位和有效數據位等。本系統所有通訊協議都以相同的協議頭開始,以相同的協議尾結束,每條協議的有效數據位中設置了一個字節的關鍵字,以便區分。

計算機和ASIC 電路之間的通訊協議包括:

執行指令:長度為7 字節,有效數據位包括接收指令電路地址,待測試指令通道,執行時間,協議關鍵字為“0xAE”。

查詢指令:長度為7 字節,有效數據位包括接收指令電路地址,協議關鍵字為“0xAF”。

查詢返回指令:長度為8 字節,有效數據位包括電路地址,包長,指令循環計數,接收錯誤指令條數,最后執行指令通道號,協議關鍵字為“0xAG”。

計算機與單片機之間的通訊協議包括:

打開單片機返回通路協議:長度為9 字節,有效數據位包括接收指令電路地址、協議長度、待測試通道號、執行時間、數碼管顯示,協議關鍵字為“0xAD”;

打開ASIC 電路返回通路協議:長度為9 字節,有效數據位中協議關鍵字為“0xAC”,其他與打開單片機返回通路協議相同;

打開待測試通道協議:長度為9 字節,有效數據位中協議關鍵字為“0xAA”或者“0xAB”,其他與打開單片機返回通路協議相同,當計算機發送關鍵字為“0xAA”的指令時,測試ASIC 電路串行輸入A 口,當計算機發送關鍵字為“0xAB”的指令時,測試ASIC 電路串行輸入B 口;

測試結果返回協議:長度為11 字節,有效數據位包括ASIC 電路地址,指令長度,測試通道號,指令執行時間,實際采集時間,協議關鍵字為“0xAH”。

通過以上制定的通訊協議:計算機與ASIC 電路,計算機與單片機之間協同工作,有效完成ASIC電路的測試工作。

4 結 束 語

所設計的測試系統已經應用于ASIC 電路的測試工作中,達到了預期的效果。使用軟件的自動測試功能,縮短了測試時間,且實現無人值守。通過對ASIC 電路測試方法的研究與實際應用,驗證了將嵌入式技術應用于集成電路測試工作的可行性與優越性,對未來集成電路的測試工作提供了一條有效便捷的途徑。

猜你喜歡
指令單片機計算機
聽我指令:大催眠術
計算機操作系統
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于計算機自然語言處理的機器翻譯技術應用與簡介
科技傳播(2019年22期)2020-01-14 03:06:34
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
信息系統審計中計算機審計的應用
消費導刊(2017年20期)2018-01-03 06:26:40
Microchip推出兩個全新PIC單片機系列
主站蜘蛛池模板: 国产丝袜第一页| 国产欧美一区二区三区视频在线观看| 国产成人综合日韩精品无码首页| 欧美综合成人| 国产精品毛片在线直播完整版| 亚洲第一视频区| a级毛片在线免费观看| 久久免费观看视频| 精品無碼一區在線觀看 | 国产麻豆精品久久一二三| 久久福利网| 日本人妻丰满熟妇区| 91 九色视频丝袜| 午夜视频www| 色综合久久综合网| 无码有码中文字幕| 免费不卡视频| 日韩精品成人在线| 亚洲日韩每日更新| 亚洲成a人片| 在线永久免费观看的毛片| 99视频国产精品| 午夜丁香婷婷| 欧美不卡视频一区发布| 亚州AV秘 一区二区三区| 最新国产网站| 日韩第九页| 精品国产Ⅴ无码大片在线观看81| 日韩高清欧美| 色婷婷亚洲十月十月色天| 亚洲最猛黑人xxxx黑人猛交| 伊人久久大香线蕉影院| 无码中文AⅤ在线观看| 91在线激情在线观看| 狠狠做深爱婷婷综合一区| 很黄的网站在线观看| 日韩免费毛片| 日本在线国产| 国产精品手机视频一区二区| 91精品福利自产拍在线观看| 无码aaa视频| 五月天在线网站| 91探花国产综合在线精品| 亚洲小视频网站| 国产一区二区三区免费观看 | 老司机午夜精品网站在线观看| 欧美黄网站免费观看| 成人午夜福利视频| 在线精品欧美日韩| 在线观看欧美国产| 久久综合色88| 日韩av无码精品专区| 国产午夜福利亚洲第一| 国产午夜看片| 国产在线麻豆波多野结衣| 久久国产精品影院| 亚洲三级影院| 亚洲成人黄色在线观看| 干中文字幕| 亚卅精品无码久久毛片乌克兰 | 少妇精品网站| 人妻夜夜爽天天爽| 免费欧美一级| 国产精品原创不卡在线| 就去吻亚洲精品国产欧美| 91人人妻人人做人人爽男同| 又爽又大又黄a级毛片在线视频 | 欧美日本在线| 久久一本精品久久久ー99| 草草线在成年免费视频2| 亚洲国产成人精品青青草原| 日韩无码视频专区| 777国产精品永久免费观看| 精品1区2区3区| 免费观看国产小粉嫩喷水| 国产精品极品美女自在线网站| 亚洲成人黄色网址| 最新国产午夜精品视频成人| 国产精品一区二区久久精品无码| 午夜毛片免费看| 国产免费一级精品视频 | 人妻丰满熟妇av五码区|