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

基于分層架構的硬件電路檢測軟件設計

2021-08-05 06:37:38康瑞航申港港
汽車實用技術 2021年14期
關鍵詞:功能檢測

康瑞航,嚴 宇,劉 奇,郝 飛,申港港,倪 新

(陜西萬方汽車零部件有限公司,陜西 西安 710200)

1 基本介紹

硬件電路檢測是電器產品生產過程中的重要環節,可以在產品外殼裝配環節前檢測出硬件電路甚至芯片或者電阻級別的質量問題,避免問題件被深度加工。

硬件電路檢測軟件主要功能有開關電路檢測(高有效、低有效)、ADC信號采集電路、系統電壓采集電路(主系統電壓和各分系統電壓)、系統喚醒源(CAN、LIN、硬線)電路、半橋/全橋驅動電路、驅動電路、驅動電路的輸出反饋電路、驅動電路的輸出上拉電路以及各種通信接口電路(CAN、LIN、串口)等等。

1.1 軟件功能需求和模塊劃分

硬件檢測軟件功能需求除了基本的硬件電路檢測以外,還需要人機交互、檢測結果數據傳輸功能、按照功能模塊化劃分,具體系統功能組件如圖1所示。

圖1 系統功能組件圖

1.2 軟件分層設計

按照功能進行軟件代碼分層設計,將系統由外設驅動層(PD)外設抽象層(PAL)、中間件層(Middleware)、應用層、狀態機調度層分為5層。每個層級又分為多個單獨的模塊,模塊間相互獨立,被上次系統逐級調用,軟件分層如圖2所示。

圖2 軟件分層圖

2 各層軟件工作原理

2.1 外設驅動層(PD)

PD層組件通過調用對外設寄存器操作的硬件訪問(一般為宏定義或者static函數),讀寫MCU底層硬件外設模塊的寄存器,完成對外設功能配置和狀態讀取實現軟硬件交互,由于PD層代碼直接操作寄存器,所以其效率很高,但不能跨平臺使用[1]。

PD層組件提供了豐富的API接口,支持對外設寄存器進行直接讀寫操作,其API函數以_DRV_xxxx命名,提供對某一外設初始化(_Init)、反初始化(_Deinit)、配置(_Config)、數據發送(_Send)、數據接收(_Receive)、寫寄存器(_Set)和讀寄存器/狀態(_Get)以及中斷;如:pins_channel_type_tPINS_DRV_ReadPins(const GPIO_Type * const base)用于讀取輸入引腳的電平。

2.2 外設抽象層(PAL)

在PD層的基礎上,封裝一個外設抽象層,將能夠實現相同功能的外設PD組件封裝為一個PAL功能組件,PAL抽象對上層級提供統一的API函數,便于上層對于相同功能模塊的統一化處理。

PAL層組件對PD層組件功能進行了抽象和封裝,提供了相對較少但功能強大的API接口,其API函數以_xxxx命名,提供對某一功能集外設初始化(_Init)、反初始化(_Deinit)、配置(_Config)、數據發送(_Send)、數據接收(_Receive)、寫寄存器(_Set)和讀寄存器/狀態(_Get)以及中斷回調函數注冊(_InstallEvent Callback)等功能函數;如:voidINT_SYS_InstallHandler(IRQn_Type irqNumber, constisr_tnewHandler, isr_t* const oldHandler)

定時器中斷服務函數void ftmTimerISR(void)

代碼如下:

用于產生時間標志用于驅動調度機制運轉,以及指示燈閃爍,便于使用者觀察[2]。

2.3 間件層(Middleware)

一般中間件包括軟件協議棧(CAN,LIN)USB及文件系統,外圍復雜芯片驅動。S32 SDK 提供了PD,PAL,Middle-ware,可以通過NXP公司的桌面可視化配置工具完成配置,配置方法參考的是官方說明文檔,也可參考官方代碼自行完成PD層和PAL層設計[3]。

本設計PD層和PAL層用NXP提供的SDK配置,Middle-ware使用協議棧生成CAN,LIN通訊協如圖3所示。

圖3 CAN協議棧代碼

2.4 狀態機調度層(AL)

定義狀態數據的枚舉類型

2.5 應用層(AL)

本設計應用層主要是調用狀態機調度層,實現不同模塊的硬件狀態檢測,此外應用層還有個重要任務是將檢測結果通過CAN總線或者LIN總線或者串口傳輸出去,檢測結果輸出方式可靈活配置選擇某種方式也可以三種方式同時輸出,便于上位機或者顯示屏等使用,檢測結果通過 CAN總線如圖4所示。

圖4 檢測結果通過CAN總線外發

3 車間生產驗證

分層架構設計的硬件檢測軟件和老版本的硬件檢測軟件在檢測效率和誤檢率上的比較數據,如表1所示。

表1 分層架構后檢測時間和誤檢數對比(每100個)

4 結論

本文介紹的分層設計,逐級調用的硬件檢測軟件已經在檢測臺架上使用,并明顯提高了檢測效率,降低了誤檢率。在硬件檢測軟件的設計中,這樣設計有如下優點:

(1)提高軟件質量,縮短產品開發周期,在各模塊算法軟件實現的時候,能調用統一的底層軟件提高代碼復用性,避免重復去實現相似的函數,減少工作量提高代碼運行效率。

(2)可配置的檢測結果輸出方式,方便后期檢測臺架升級,狀態機清晰的程序結構和統一接口可有效避免軟件代碼問題,提高產品的穩定性。

(3)代碼的分層設計,便于后期針對需求對部分軟件進行調整而不影響其他沿用軟件,簡化程序的升級和維護。

猜你喜歡
功能檢測
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
關于非首都功能疏解的幾點思考
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達功能
小波變換在PCB缺陷檢測中的應用
主站蜘蛛池模板: 成人国产三级在线播放| 刘亦菲一区二区在线观看| 国产精品天干天干在线观看| 国产精品亚洲一区二区三区在线观看| 欧美午夜在线视频| 亚洲综合极品香蕉久久网| 99在线视频免费| 日韩欧美色综合| 久久亚洲AⅤ无码精品午夜麻豆| 亚洲中文字幕在线观看| 欧美精品亚洲日韩a| 欧美色综合久久| 国产女人综合久久精品视| 亚洲精品午夜天堂网页| 免费高清a毛片| 亚洲bt欧美bt精品| 国产91导航| 久久精品国产免费观看频道| 国产三级毛片| 538国产视频| 国产尤物在线播放| 亚洲精品日产AⅤ| 手机精品视频在线观看免费| 中文字幕佐山爱一区二区免费| 日本a级免费| 亚洲中文字幕久久无码精品A| 亚洲αv毛片| 亚洲 欧美 日韩综合一区| 精品福利视频网| 狼友视频一区二区三区| 一级做a爰片久久免费| 免费看一级毛片波多结衣| 日韩精品无码免费一区二区三区 | 国产亚洲精品无码专| 精品三级网站| 欧美日韩国产成人在线观看| 97视频免费在线观看| 色婷婷亚洲十月十月色天| 67194成是人免费无码| 热这里只有精品国产热门精品| 97人妻精品专区久久久久| 欧美全免费aaaaaa特黄在线| 久久精品国产精品青草app| 国产乱码精品一区二区三区中文 | 18禁黄无遮挡免费动漫网站| 久久黄色一级片| 国产精品hd在线播放| 免费三A级毛片视频| 国产精品亚洲va在线观看| 亚洲人成网线在线播放va| 无码又爽又刺激的高潮视频| 爆乳熟妇一区二区三区| 国产无码网站在线观看| 精品国产成人av免费| 日本免费新一区视频| 亚洲日本中文综合在线| 国产精品福利社| 亚洲国产系列| 国产免费a级片| 99免费视频观看| 久久综合九色综合97婷婷| 日本成人在线不卡视频| 欧美人在线一区二区三区| 麻豆精品在线播放| 国产精品成人免费综合| 亚洲永久色| 亚洲有无码中文网| 亚洲六月丁香六月婷婷蜜芽| 看av免费毛片手机播放| 国产黄色免费看| 日韩视频精品在线| 亚洲乱码在线视频| 无码精油按摩潮喷在线播放 | 国产精品无码AⅤ在线观看播放| 国产精品无码AV中文| 中国一级毛片免费观看| 亚洲最黄视频| 成人伊人色一区二区三区| 国产亚洲美日韩AV中文字幕无码成人| 国产v欧美v日韩v综合精品| 精品久久777| 日本人妻丰满熟妇区|