衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

介紹建立I/O Driver與上層交互的中間模塊I/O Hardware Abstraction

冬至子 ? 來源:Vehicle軟件開發 ? 作者:Vehicle軟件開發 ? 2023-01-18 12:09 ? 次閱讀

**AutoSAR I/O Hardware Abstraction **概述

I/O Hardware Abstraction在整個AutoSAR中屬于ECU抽象層的一部分。在AutoSAR架構中的位置如下面綠色顯示的部分所示。I/O Hardware Abstraction并不是僅僅作為一個模塊使用,在實際的開發中,通常所有的I/O Driver模塊(ADC、DIO、ICU、PWM、OCU等)都可以采用I/O Hardware Abstraction實現與上層應用間的交互和處理。

2.jpg

I/O Hardware Abstraction是從外圍I/O設備(片上或板上)的位置和ECU硬件布局(例如μC引腳連接和信號電平反轉)抽象出來的一組模塊,不同的I/O設備可以通過I/O信號接口進行訪問。I/O Hardware Abstraction的目的是通過將I/OHardware Abstraction端口映射到ECU信號來提供對MCAL驅動程序的訪問,實現軟件組件的數據完全從物理層中抽象出來,使軟件組件設計者不再需要詳細了解MCAL驅動程序的API和物理層值的單位。

I/O Hardware Abstraction提供初始化整個I/O硬件抽象的服務。I/O HardwareAbstraction將調用驅動程序的API管理片上設備。MCAL驅動程序的配置取決于SWC所需的ECU信號的數量。

I/O Hardware Abstraction****交互模塊

I/O Hardware Abstraction在使用的時候主要處理的是MCAL層的各個模塊,I/O HardwareAbstraction可以訪問的MCAL層的接口如下所示。

2.jpg

I/O Hardware Abstraction在與MCAL的交互過程中可以調用所有MCAL的API接口,同時可以接收除了DIO和PORT以外的所有模塊的回調函數。

I/O Hardware Abstraction除了調用MCAL中I/O Driver的模塊,同時可以調用Communication的Driver接口,比較常用的就是SPI接口,在使用外部的ADC芯片的時候同時會用到相關的SPI通信協議,這個時候I/O Hardware Abstraction可以直接調用在SPI配置的參數和相關的接口實現對外部ADC芯片的電壓采集。如下圖所示

2.jpg

I/O Hardware Abstraction還會有系統服務模塊相互關聯,主要表現為在ECUM中調用相關的初始化函數,調用DET接口實現錯誤的追溯,調用Bsw Scheduler等。

I/O Hardware Abstraction還可以直接與DCM模塊建立交互,用于對ECU相關的數據和信號做診斷處理。

I/O Hardware Abstraction****主要定義參數

I/O Hardware Abstraction采用的是AutoSAR Interface與SWC進行數據交互,處理的信號為ECU的Input/Output Signal,在AutoSAR中Port屬于典型的AutoSAR Interface,用于處理ECU的Input/OutputSignal。

一般來說ECU信號與一個典型的Pin相互對應。同時ECU信號在I/O HardwareAbstraction有兩個特性,Filter和Age。對于Filter屬性一般適用于Input Signal,通過對原始輸入信號的Fliter/Debuance處理將Input Signal的Raw值進行轉換處理給上層應用模塊處理。

對于Age屬性,對于Input Signal來說,Lifetime決定了該信號的處理方式,如果為0,則表示該信號要立刻處理,如果大于0,則表示該信號的有效時間。對于Output Signal來說決定信號外發的Delay,如果為0,表示立馬將數據寫入到相應的寄存器,如果大于0,表示Delay時間到達后操作。

I/O Hardware Abstraction的實現一般需要EcuAbstractionComponentType的實體,同時建立起相關的Port通過RTE與SWC進行交互,除了定義Port還要定義Runnable以及Internal behavior等。I/O Hardware Abstraction可以提供SC Port和SR Port進行數據的交互。在SC Port中一般采用Set Operation和Get Operation進行數據操作,也可以采用Notification或者Callback進行操作。

I/O Hardware Abstraction一般包括多個BSW I/O模塊,對于每一個BSW模塊一般建立一個I/OHardware Abstraction的實體實現特定的功能。對于特定的功能可以創建調度的函數實現與下層模塊的同步,例如可以根據ADC觸發轉換的時間定義對應的調度函數進行轉換數據的讀取。

I/O Hardware Abstraction沒有具體配置條目,它的實現主要和SWC的實現相似,在使用的時候根據需要定義相關的函數以及交互的接口,實現對MCAL層I/O相關模塊的數據處理。

最常用的功能就是將采集到的原始數據轉化為直接可以供SWC使用的數據,如將ADC寄存器的值根據硬件轉換電路實現真實的物理數值以及做相關的濾波處理;將從SWC接收的PWM的周期和占空比轉換為寄存器中對應的時鐘參數輸出PWM等。

審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • PWM
    PWM
    +關注

    關注

    114

    文章

    5198

    瀏覽量

    214889
  • SPI接口
    +關注

    關注

    0

    文章

    259

    瀏覽量

    34552
  • ADC模塊
    +關注

    關注

    1

    文章

    19

    瀏覽量

    11110
收藏 人收藏

    評論

    相關推薦

    I/O電路中電壓比較器與I/O信號完整性介紹

    在高速I/O電路設計中,輸入I/O的比較器是一個非常重要的模塊
    的頭像 發表于 10-30 15:02 ?1898次閱讀
    <b class='flag-5'>I</b>/<b class='flag-5'>O</b>電路中電壓比較器與<b class='flag-5'>I</b>/<b class='flag-5'>O</b>信號完整性<b class='flag-5'>介紹</b>

    I/O模塊無法識別

    我已經成功地編程了CyPress I/O模塊,但是當我進入驅動站時,診斷標簽中的I/O LED不會變成綠色。 以上來自于百度翻譯 以下為原
    發表于 01-09 14:11

    數字I/O介紹

    數字I/O腳有專用和復用。數字I/O腳的功能通過9個16位控制寄存器來控制。控制寄存器分為兩類:(1)I/
    發表于 09-16 12:20 ?19次下載

    冗余I/O

    6.1 冗余I/O的定義當I/O模塊以每兩個一組組態成冗余對運行時,I/
    發表于 07-23 00:29 ?26次下載

    基于Rocket I/O模塊的高速I/O設計

    摘要: 介紹了采用Videx-ⅡPR0系列FPCA設計的應用于下一代無線通信系統中的高速IO。由于充分利用芯片中集成的Rocket IO
    發表于 06-20 10:45 ?1357次閱讀
    基于Rocket <b class='flag-5'>I</b>/<b class='flag-5'>O</b><b class='flag-5'>模塊</b>的高速<b class='flag-5'>I</b>/<b class='flag-5'>O</b>設計

    什么是I/O地址

    什么是I/O地址 I/O地址中I是input的簡寫,O是output的簡寫,也就是輸入輸出地址
    發表于 02-05 10:01 ?1351次閱讀

    I/O擴展(8255)模塊

    為用戶在中提供一個I/O 擴展的方法,在設計過程遇到I/O不夠用時可以用此種方案。
    發表于 07-04 17:12 ?0次下載

    T1K系列I/O模塊安裝指導

      T1K系列I/O模塊采用基架式安裝方式。根據I/O模塊所占用的
    發表于 09-22 16:04 ?10次下載

    介紹 I/O NI系統,C系列的I/O模塊

    內容包括:理想的確定性以太網I/O,具有確定性分布式I/O的NI系統,C系列的I/O
    的頭像 發表于 06-14 06:19 ?4635次閱讀
    <b class='flag-5'>介紹</b> <b class='flag-5'>I</b>/<b class='flag-5'>O</b> NI系統,C系列的<b class='flag-5'>I</b>/<b class='flag-5'>O</b><b class='flag-5'>模塊</b>

    數字I/O模塊的特點介紹

    速度替高70倍的數字I/O模塊 (點擊CC按鈕,選擇中文字幕)
    的頭像 發表于 10-08 03:16 ?5690次閱讀

    新唐科技超級 I/O 系列介紹

    新唐超級I/O(Super I/O)系列芯片,被廣泛的使用在主板、工業計算機、一體機(AIO)以及工作站上。除了傳統輸出入的功能, 例如串口、打印機接口、鍵盤鼠標(KBC)接口、通用型
    的頭像 發表于 02-04 09:51 ?1996次閱讀
    新唐科技超級 <b class='flag-5'>I</b>/<b class='flag-5'>O</b> 系列<b class='flag-5'>介紹</b>

    PLC的I/O模塊如何選擇

    一般IO模塊的價格占PLC價格的一半以上。PLC的IO模塊有開關量
    發表于 05-19 08:54 ?9615次閱讀
    PLC的<b class='flag-5'>I</b>/<b class='flag-5'>O</b><b class='flag-5'>模塊</b>如何選擇

    CC link內置型I/O模塊用戶手冊

    本手冊介紹Control&Communication Link(以下簡稱為CC-Link。)本章介紹作為系統的 遠程I/O站使用的CC-Link內置型
    發表于 08-26 09:22 ?2次下載
    CC link內置型<b class='flag-5'>I</b>/<b class='flag-5'>O</b><b class='flag-5'>模塊</b>用戶手冊

    FANUC外部I/O點數不夠用了怎么辦?可以擴展I/O點數嗎?

    FANUC外部I/O點數不夠用了怎么辦?可以擴展I/O點數嗎? 擴展FANUC的外部I/O點數是
    的頭像 發表于 02-18 15:21 ?2090次閱讀

    I/O接口與I/O端口的區別

    在計算機系統中,I/O接口與I/O端口是實現CPU與外部設備數據交換的關鍵組件,它們在功能、結構、作用及運作機制上均存在顯著差異,卻又相互協同工作,共同構建起CPU與外部設備之間的橋梁
    的頭像 發表于 02-02 16:00 ?146次閱讀
    百家乐官网棋牌公式| 大发888投注网| 香港百家乐马书| 线上百家乐是如何作弊| 女神百家乐娱乐城| 赌场百家乐的玩法技巧和规则| 百家乐电器维修| 太阳城巧克力| 大发888娱乐城官网下载| 大发888线上娱乐| 宝都棋牌游戏| 腾飞国际娱乐城| 开心8百家乐官网游戏| 百家乐官网注码技术打法| 网络百家乐官网大转轮| 哪个百家乐官网网站信誉好| 百家乐官网技巧开户| 彩会百家乐游戏| 老钱庄百家乐的玩法技巧和规则 | 做生意适合摆放龙龟吗| 澳门百家乐有限公司| 合乐8百家乐娱乐城| 太阳城洋伞官网| 澳门百家乐必胜| 百家乐官网最新投注方法| 网络百家乐官网开户网| 百家乐投注技巧| 威尼斯人娱乐场官网网站是多少| 娱乐城开户送真钱200| 百家乐官网制胜方法| 基础百家乐官网规则| 玩百家乐去哪个平台好| 百家乐园首选| 易发娱乐| 百家乐官网官方游戏下载| 沙龙百家乐怎申请| 新太阳城娱乐| 来博百家乐官网游戏| 长江百家乐官网的玩法技巧和规则 | 做生意风水方向怎么看| 百家乐凯时赌场娱乐网规则|