精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

符合AUTOSAR標準的RTA-OS--Counters介紹

832065824 ? 來源:汽車電子嵌入式 ? 2023-06-25 09:04 ? 次閱讀

正文

6.計數器Counters

計數器以tick為單位記錄操作系統中發生了多少“事情”。滴答是一個抽象的單位。

這是由你來決定你想要一個滴答的意思。

可以這樣定義tick:

?時間Time,例如毫秒,微秒,分鐘等,然后計數器告訴你已經過去了多少時間。

?旋轉Rotation,例如以度或分鐘為單位,在這種情況下,計數器會告訴你物體旋轉了多少。

?按鈕按下Button Presses,在這種情況下,計數器會告訴你按鈕被按了多少次。

?錯誤Errors,在這種情況下,計數器計算錯誤發生的頻率。

一個ISR(有時是一個任務)用于驅動一個計數器。驅動程序負責進行正確的RTA-OS API調用來“tick”計數器,或者告訴RTA-OS計數器已經“tick”到一個必需的值。

6.1配置計數器Configurting Counters

每個計數器都有4個強制性屬性:

Name 是計數器的名稱。RTA-OS使用與計數器具有相同名稱的標識符為每個計數器創建一個句柄。

Type 定義計數器模型。AUTOSAR提供兩種型號

軟件Software計數器是由操作系統內部維護的計數值。User需要提供一個計數器驅動程序,告訴RTA-OS將計數器增加一個tick。在6.2.1節中提供了進一步的細節。

硬件Hardware計數器是由外設維護的計數值。User需要提供一個計數器驅動程序,該驅動程序告訴操作系統何時已經過了請求的tick數。操作系統還將要求您的驅動程序支持支持RTA-OS用于在運行時管理外圍設備的回調例程的實現。章節6.2.2提供了進一步的細節。

當需要相對較低的分辨率(例如一毫秒或更高)時,軟件計數器就足夠了。當需要非常高的分辨率(例如在微秒范圍內),或者需要將RTA-OS中的任務調度精確地同步到外部源(例如TPU或全局(網絡)時間源)時,應該使用硬件計數器。

Maximum Value定義計數器的最大計數值。在達到最大允許值后,所有計數器在刻度上自動歸零。對于16位計數器將為65535(216?1),對于32位計數器將為4294967295(232?1)。這對應于AUTOSAR OS計數器屬性MAXALLOWEDVALUE。端口的最大可能計數器值由文件Os.h中TickType類型的大小決定。

集成指南:對于硬件計數器,必須確保最大匹配值+1等于外圍設備的模量。

Minimum Cycle最小周期定義在為Alarm或者schedule table偏移量設置周期值時允許的最短刻度數。在大多數情況下,希望它是1個刻度。但是,如果希望構建的系統在計數器上強制執行最小的警報間隔,那么可以選擇更大的值。這對應于AUTOSAR OS計數器屬性MINCYCLE。

Ticks per base是一個屬性,可用于定義計數器上每個刻度所需的基礎計數器驅動刻度的數量。可以為這個屬性賦任何值,因為RTA-OS不使用它。這對應于AUTOSAR操作系統屬性TICKSPERBASE。

還有一個附加的可選屬性:

Seconds Per Tick以秒為單位定義計數器滴答的持續時間。如果想要使用AUTOSAR OS提供的刻度/時間轉換功能,則應該定義此選項。進一步的細節在第6.5節中給出。

16a35360-12ef-11ee-962d-dac502259ad0.png

圖6.1 聲明一個計數器

6.2 計數器驅動Conuter Drivers

RTA-OS不控制任何硬件來提供計數器驅動程序。這使得RTA-OS非常容易與任何tick源集成,例如計時器滴答,錯誤計數,按鈕按壓,TPU外設等。這意味著需要為在RTA-OS中聲明的每個計數器提供驅動程序,并將其接口到操作系統。

驅動程序和計數器之間的接口取決于計數器的類型:

Software Counters由API調用遞增。

Hardware Counters該計數值保存在外部硬件外圍設備中。應用程序必須提供一個更復雜的驅動程序,該驅動程序告訴RTA-OS請求的滴答數已經過了。RTA-OS使用特殊的回調來設置請求的tick數,取消請求,獲取當前計數值并獲取計數器的狀態。

6.2.1 軟件計數器驅動Software Counter Drivers

對于每個軟件計數器,需要提供提供刻度的驅動程序。RTA-OS在StartOS()期間將所有軟件計數器初始化為零并向上計數。

軟件計數器驅動模型在AUTOSAR OS中標準化,如圖6.2所示。

16b8f8aa-12ef-11ee-962d-dac502259ad0.png

圖6.2 Ticked Counter Driver Model

實現軟件計數器:

使用API調用IncrementCounter(CounterID)來增加RTA-OS中保存的計數器值。當向MAXALLOWEDVALUE中添加1時,軟件計數器會自動歸零。

可以從應用程序代碼中的大多數地方調用IncrementCounter(CounterID)。計數器最常見的用途之一是為RTA-OS提供基于Alarm或Schedule table激活任務的時間基礎。在這種情況下,需要提供一個周期性計時器中斷,在每次到期時調用IncrementCounter(CounterID)。

例6.1展示了毫秒中斷如何驅動一個名為TimeCounter的計數器。

#include 
ISR(HandleTimerInterrupt) {
    DismissTimerInterrupt();
    IncrementCounter(TimeCounter);
}

Example 6.1: Using a periodic interrupt to tick a software counter

軟件計數器的另一個常見用途是作為容錯系統的一部分,在超過錯誤閾值時需要采取某些操作。軟件計數器可用于記錄錯誤的數量,然后可以使用警報來觸發恢復操作(例如,激活錯誤恢復任務)。

例6.2展示了名為Critical的任務如何在名為ErrorCounter的計數器上記錄錯誤。

#include 
TASK(Critical){
    ...
    if (Error) {
    IncrementCounter(ErrorCounter);
    }
    ...
    TerminateTask();
}

Example 6.2: Using a periodic Task to tick a software counter

靜態計數器接口Static Counter Interface:

由于AUTOSAR API調用將計數器的名稱作為參數,這意味著RTA-OS必須在更新OS數據結構之前在內部取消對參數的引用。這也意味著編譯器需要在進入時將參數壓入堆棧。

然而,通常情況下,在構建時就知道將從何處計時哪個計數器。可能需要從中斷處理程序驅動計數器。

RTA-OS認識到這一點,并為配置文件中聲明的每個計數器生成一個專用的API調用Os_IncrementCounter_()(其中CounterID是計數器的名稱)。

集成指南:API調用Os_IncrementCounter_()不一定可移植到其他AUTOSAR操作系統實現。

例如,考慮一個包含兩個計數器的應用程序:一個名為TimeCounter,另一個名為AngularCounter。rtaosgen將生成例6.3中所示的兩個API調用。

定時器和角中斷提供服務的中斷處理程序必須調用這些API調用。

例6.4展示了這些中斷處理程序。

#include 
ISR(HandleTimerInterrupt) {
    ServiceTimerInterrupt();
    Os_IncrementCounter_TimeCounter();
}


ISR(HandleAngularInterrupt) {
    ServiceAngularInterrupt();
    Os_IncrementCounter_AngularCounter();
}

Example 6.4: Interrupt Handlers for Example 6.3

#include 
ISR(MillisecondInterrupt) {
    ServiceTimerInterrupt();
    Os_IncrementCounter_Counter1();
    Os_IncrementCounter_Counter2();
    ...
    Os_IncrementCounter_CounterN();
}

Example 6.5: Making multiple calls to the static software counter interface

如果您有多個軟件計數器,您需要以相同的速率tick,可以在處理程序中進行多個Os_IncrementCounter_()調用,如例6.5所示

對于聲明的每個計數器,都有一個Os_IncrementCounter_() API調用。這些靜態API調用比AUTOSAR IncrementCounter() API調用更快,使用更少的RAM,因為調用不需要參數,也不需要計算出哪個計數器被選中。user應該決定哪個版本適合您的應用程序,并相應地進行選擇。

6.2.2 硬件計數器驅動Hardware Counter Drivers

對于每個硬件計數器,User需要提供調用RTA-OS的硬件計數器驅動程序和RTA-OS使用的一組回調。與軟件計數器一樣,RTA-OS提供了一個定義良好的接口,用于將高級計數器驅動程序連接到操作系統。

集成指南:AUTOSAR OS標準沒有指定處理硬件計數器的標準API調用。如果要將應用程序從另一個操作系統移植到RTA-OS,則可能需要更改硬件計數器驅動程序API調用。

對于每個硬件計數器,RTA-OS知道該計數器驅動的下一個動作是什么,是使警報過期,還是處理調度表上的過期點,或者兩者兼而有之。RTA-OS還知道在發生這種情況之前需要經過多少滴答。這被稱為匹配值。

170cd312-12ef-11ee-962d-dac502259ad0.png

圖6.3 Advanced Counter Driver Model

當使用軟件計數器時,驅動程序會在每次計時結束時告訴RTA-OS。RTA-OS在內部對刻度進行計數,當達到匹配值時,采取操作。然后RTA-OS計算下一個匹配值并重復該過程。

相比之下,當使用硬件計數器時,RTA-OS通過回調函數告訴驅動程序何時需要進行下一個操作。外設計算請求的滴答數,并在正確的滴答數耗盡時生成中斷。在中斷處理程序中,可以調用Os_AdvanceCounter_CounterID() API來告訴RTA-OS處理CounterID上的下一個操作。RTA-OS這樣做,然后重復這個過程。

通常,User將使用中斷來驅動軟件和硬件計數器。對于軟件計數器,無論RTA-OS是否有任何事情要做,每個計數器滴答都會發生中斷。對于硬件計數器,只有當RTA-OS需要做某事時才會發生中斷。這意味著硬件計數器將中斷干擾減少到所需的絕對最小值。

Advancing Hardware Counters

User使用API調用Os_AdvanceCounter_()來告訴RTA-OS匹配值已經達到。

集成指南:User負責編寫調用Os_AdvanceCounter_()的驅動程序,并確保在正確的時間采取下一個操作。

Os_AdvanceCounter_() API調用導致下一個警報和/或到期點被處理,并將通過調用User提供的回調來設置下一個匹配值,或者,如果沒有操作要做(即計數器上沒有活動警報或計劃表),取消來自驅動程序的中斷。關于編寫硬件計數器驅動程序的更多詳細信息可以在后面章節中找到。

Callback Functions

對于軟件計數器,RTA-OS在內部計算經過的滴答數。這意味著RTA-OS總是知道當前的計數器值,在下一次到期之前有多少個滴答等等。

對于硬件計數器,外設計算經過的滴答數。這意味著RTA-OS必須告訴硬件計數器它需要計數多少個節拍,并且必須詢問外設當前的計數值,到下一個到期的節拍數等。

這種交互是使用回調函數在RTA-OS和您想用作計數器驅動程序的任何類型的硬件外設之間進行接口的。回調函數的確切功能性取決于用作硬件計數器驅動程序的外設。

然而,通過一個簡短的概述,需要四個回調:

Os_Cbk_Set_()

這個回調為下一個動作到期時發生的中斷設置狀態。回調函數被傳遞一個計數器的絕對值,在這個計數器上應該發生一個動作。對于計數器,這個回調在兩種不同的情況下使用:

1. 開始Starting

當Schedule Table或Alarm在計數器上啟動時,設置初始中斷源。

2. 重置Resetting

縮短到下一個計數器到期的時間。這是必要的,例如,當下一個中斷超過100個滴答時,做一個SetRelAlarm(WakeUp, 100)調用。

AlarmBaseType Info;
GetAlarmBase(Alarm2, &Info);
MaxValue = Info.maxallowedvalue;
BaseTicks = Info.ticksperbase;
MinCycle = Info.mincycle;

Example 6.6: Using GetAlarmBase() to read static counter attributes

Os_Cbk_State_()

此回調返回計數器上的下一個操作是否掛起,以及(通常)在達到匹配值之前剩余的tick數。

Os_Cbk_Now_()

此回調需要返回外部計數器的當前值。這用于GetCounterValue() API調用。

Os_Cbk_Cancel_()

這個回調必須為計數器清除任何掛起的中斷,并確保中斷不能成為掛起,直到一個Os_Cbk_Set_()調用進行。如果不取消計數器上的所有警報和/或停止由計數器驅動的計劃表,則不需要此調用。

集成指南:硬件計數器可用于多核系統。RTA-OS將確保State, Set和Cancel回調只在擁有計數器的核心上被調用。這意味著User可以從擁有計數器的不同核心啟動alarm和ScheduleTables, RTA-OS將向計數器的核心發送消息,告訴它調用適當的回調。

6.3運行時獲取計數器屬性Accessing Counter Attributes at Run time

RTA-OS API調用GetAlarmBase()總是返回配置的計數器值。GetAlarmBase()的結構如例6.6所示。

配置的值也可以以符號常量的形式訪問,如下所示。

? OSMAXALLOWEDVALUE_

? OSTICKSPERBASE_

? OSMINCYCLE_

因此,上面的例6.6也可以寫成例6.7:

MaxValue = OSMAXALLOWEDVALUE_Alarm2;




BaseTicks = OSTICKSPERBASE_Alarm2;




MinCycle = OSMINCYCLE_Alarm2;

Example 6.7: Using macros to read static counter attributes

6.3.1 特殊的計數器名Special Counter Names

如果創建了一個名為SystemCounter的計數器,那么在AUTOSAR OS中可以通過省略末尾的_CounterID來使用簡短的宏形式訪問相關的計數器屬性:

OSMAXALLOWEDVALUE_SystemCounter ? OSMAXALLOWEDVALUE

OSTICKSPERBASE_SystemCounter ? OSTICKSPERBASE

OSMINCYCLE_SystemCounter ? OSMINCYCLE

RTA-OS為SystemCounter生成兩種形式的宏,User可以使用任何一種版本。SystemCounter還提供了一個額外的宏來獲取計數器滴答的持續時間(以納秒為單位),稱為OSTICKDURATION。

集成指導:生成一個有意義的OSTICKDURATION宏需要配置計數器屬性“Seconds Per Tick”。

6.4 讀取計數器值Reading Counter Values

應用程序需要能夠在運行時讀取計數器的當前值。例如,User可能想知道錯誤計數器記錄了多少錯誤,按鈕被按了多少次,或者經過了多少時間。

計數器的當前值可以在運行時通過調用GetCounterValue() API來讀取,如例6.8所示。

TickType HowMany;
GetCounterValue(ButtonPresses,&HowMany);

Example 8.8: Using GetCounterValue()

當使用GetCounterValue()時,應該意識到:

?計數器從MAXALLOWEDVALUE到零,因此計算需要補償。Counters wrap around from MAXALLOWEDVALUE to zero, so the calculation needs to compensate for the wrap

?搶占可以在調用返回時發生,這意味著當您恢復時,' Now '的值將是舊的

?當使用硬件計數器時,當調用返回時,計數器驅動程序仍將遞增。即使沒有發生搶 占,立即執行的計算也將基于舊數據

如果需要執行一個簡單的計算來計算自上次讀取值以來計數器經過了多少次計時,那么可以通過使用GetElapsedCounterValue() API調用來避免這種潛在的競爭條件。該調用將先前讀取的計數器值作為輸入,并計算已經過的刻度,包括對計數器包裝的補償。計算發生在操作系統級別(即禁用中斷),因此不會受到搶占效應的影響。

示例6.9顯示了如何使用此特性來度量任務的端到端(響應)時間。

#include 
TickType Start;
ISR(CaptureTrigger){
    /* Dismiss interrupt */
    GetCounterValue(TimeCounter,&Start);
    ...
    ActivateTask(GenerateResponse);
}




TASK(GenerateResponse){
    TickType Finish;
    CalculateValue();
    WriteToDevice();
    GetElapsedCounterValue(TimeCounter,&Start,&Finish);
    ...
    TerminateTask();
}

Example 6.9: Using GetElapsedCounterValue()

如果計數器正在計算時間刻度(如例6.9),那么這在AUTOSAR OS中被稱為“自由運行計時器free running timer”。這種類型的計數器沒有什么特別之處——它與任何其他類型的計數器相同——唯一的區別是計數器是由計時器滴答源驅動的。

自由運行計時器功能的預期用途是在運行時測量短、高準確度的持續時間。如果需要這樣做,那么可能需要使用硬件計數器來獲得所需的計數器分辨率。

6.5 Tick數轉換為時間Tick to Time Conversions

通常將計數器用作操作系統的時基參考。對于編寫的大多數應用程序,事件的相對定時將是由系統需求決定的實時值。很可能會根據實時值、納秒、毫秒等來考慮系統配置,而不是使用更抽象的tick(滴答)概念。

如果計數器配置參數“秒每滴答”已經配置,那么RTA操作系統生成宏供使用,以在滴答和實時單位之間轉換。

可移植性注意事項:AUTOSAR OS聲明Tick到時間的轉換僅適用于硬件計數器。但是,該特性通常對軟件和硬件計數器都有用,并且AUTOSAR XML配置語言支持對這兩種類型的計數器進行配置。

在RTA-OS中,這種異常通過為軟件和硬件計數器提供刻度到時間的轉換來解決。但是,應該注意,其他AUTOSAR OS實現不一定支持為軟件計數器提供這些宏。

提供了以下Tick轉換為時間的宏:

? OS_TICKS2NS_CounterID(ticks) converts ticks to nanoseconds

? OS_TICKS2US_CounterID(ticks) converts ticks to microseconds

? OS_TICKS2MS_CounterID(ticks) converts ticks to milliseconds

? OS_TICKS2SEC_CounterID(ticks) converts ticks to seconds

這些宏返回的值是PhysicalTimeType,而不是TickType,可能會使用這些宏的API調用使這些值,因此需要將它們轉換為適當的類型。

例6.10展示了如何在應用程序代碼中使用這些宏來使用靜態定義的“timeout”值來模擬超時。

#define TIMEOUT_MS 100 /* Set a timeout to be 100ms */
TickType TimeoutInTicks;
TimeoutInTicks =
(TickType)((PhysicalTimeType)TIMEOUT_MS/OS_TICKS2MS_TimeCounter(1));
SetRelAlarm(TimeoutAlarm, TimeoutInTicks, 0);

Example 6.10: Programming an alarm with time rather than ticks (1)

RTA-OS將盡可能使用整數乘法或除法生成這些宏。然而,對于某些滴答率,有必要在計算中使用浮點數,以保持準確性。當這些宏被傳遞給編譯時已知的固定值時,編譯器通常會自己執行計算并嵌入整型結果。如果傳遞的值是一個變量,那么編譯器將不得不在運行時生成使用浮點計算的代碼。如果這在應用程序中可能是一個問題,應該檢查文件Os_Cfg.h以檢查宏的代碼。

除了這些宏之外,RTA-OS還生成一個名為otickduration_ 的宏,該宏以納秒為單位返回計數器滴答的持續時間,因此,如果您希望編寫固定時間的警報,即使更改底層計數器滴答率,它也非常有用。例6.11展示了如何使用otickduration_ 宏對例6.10進行修改。這個版本提供了稍好的性能,因為單個tick的持續時間不需要在運行時計算。

#define TIMEOUT_NS 100000000 /* Set a timeout to be 100ms */
TickType TimeoutInTicks;
TimeoutInTicks = (TickType)(TIMEOUT_NS/OSTICKDURATION_TimeCounter);
SetRelAlarm(TimeoutAlarm, TimeoutInTicks, 0);

Example 6.11: Programming an alarm with time rather than ticks (2)

可移植性注意事項:OSTICKDURATION_宏是由RTA-OS提供的,不是AUTOSAR OS標準的一部分。這些宏的使用不能移植到其他實現中。

6.6 小結

?計數器用于注冊一些tick源的計數。

?計數器可以是軟件計數器也可以是硬件計數器。User需要為配置的計數器類型提供私有驅動程序。





審核編輯:劉清

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

    關注

    32

    文章

    2241

    瀏覽量

    93981
  • 定時器
    +關注

    關注

    23

    文章

    3218

    瀏覽量

    113708
  • AUTOSAR
    +關注

    關注

    10

    文章

    339

    瀏覽量

    21362
  • ISR
    ISR
    +關注

    關注

    0

    文章

    38

    瀏覽量

    14360

原文標題:符合AUTOSAR標準的RTAOS--Counters詳解

文章出處:【微信號:汽車電子嵌入式,微信公眾號:汽車電子嵌入式】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    AUTOSAR架構下的多核通信介紹

    隨著汽車ECU迅速的往域控制器方向發展,ECU要處理的任務越來越多,單核CPU的負載越來越大,多核ECU勢在必行。AUTOSAR架構下OS支持多核處理,本系列文章將詳細介紹AUTOSAR
    的頭像 發表于 11-13 09:24 ?1687次閱讀
    <b class='flag-5'>AUTOSAR</b>架構下的多核通信<b class='flag-5'>介紹</b>

    TC397如何同時運行CP Autosar OS和FreeRTOS?

    TC397 如何同時運行兩個不同的RTOS ,如FreeRTOS 和基于CP AutosarOS
    發表于 01-24 08:31

    如何開發符合AUTOSAR規范的電機控制器軟件

    基于AUTOSAR規范的電機控制器軟件開發本系列文章主要介紹如何開發符合AUTOSAR規范的電機控制器軟件的詳細過程。全系類分為基礎篇和實戰篇:基礎篇內簡要
    發表于 08-30 08:59

    介紹AUTOSAR支持的四種功能安全機制

    1、AUTOSAR的四種功能安全機制雖然AUTOSAR不是一個完整的安全解決方案,但它提供了一些安全機制用于支持安全關鍵系統的開發。本文用于介紹AUTOSAR支持的四種功能安全機制:內
    發表于 06-10 17:33

    “E:\NXP\AUTOSAR\S32K_AUTOSAR_OS_4_0_98_RTM_1_0_0sample\standard\sc1”編譯時無法生成sample1_cfg.o怎么解決?

    ccarm_oil /obj/Os_prop.h\"" E:\\NXP\\AUTOSAR\\AS32K_AUTOSAR4098 \\樣本\\標準\\sc1\\output_gccar
    發表于 04-06 07:42

    RTA-OS實時操作系統中的Task對象

      OSEK是由歐洲自動化協會對汽車電氣制定的開放式系統,全程為OSEK/VDX。RTA-OS是基于OSEK OS符合AUTOSAR規范的OS
    的頭像 發表于 04-15 16:43 ?3126次閱讀

    經緯恒潤自主研發出符合AUTOSAR標準的軟件產品

    INTEWORK-EAS(ECU AUTOSAR Software,以下簡稱EAS)是經緯恒潤自主研發,符合 AUTOSAR 標準的軟件產品。解決方案涵蓋了嵌入式
    的頭像 發表于 05-12 17:50 ?2011次閱讀

    開發支持符合AUTOSAR標準的軟件組件的建模特定領域的語言

    開發支持符合AUTOSAR標準的軟件組件的建模特定領域的語言。支持建模軟件組件的應用是基于TextX python模塊和內部開發的建模框架。
    的頭像 發表于 10-08 11:19 ?997次閱讀

    RTA OS系列介紹01-Task

    AUTOSAR OS主要包含Task, ISRs, Events, Resources, Application, Counter, Alarms, Schedule Table等OS對象。后續將對如上提到的八個對象進行分別
    的頭像 發表于 12-21 14:13 ?1926次閱讀

    簡析符合AUTOSAR標準RTA-OS功能

    RTA-OS是一種靜態可配置的搶占式實時操作系統(RTOS),用于高性能、資源受限的應用程序。
    的頭像 發表于 02-10 10:44 ?4716次閱讀

    符合AUTOSAR標準RTA-OS --Task詳解

    必須同時執行許多不同活動的系統稱為并發。這些活動可能包含一些軟件部分,因此提供這些活動的程序必須同時執行。這些程序必須在任何必要的時候進行合作,例如,當它們需要共享數據時。
    的頭像 發表于 04-17 09:38 ?5014次閱讀

    符合AUTOSAR標準RTA-OS--Interrupts介紹

    中斷提供了應用程序與現實世界中發生的事情之間的接口。例如,你可以使用中斷來捕捉被按下的按鈕,來標記時間的流逝或捕捉一些其他事件。
    的頭像 發表于 04-26 09:31 ?4241次閱讀
    <b class='flag-5'>符合</b><b class='flag-5'>AUTOSAR</b><b class='flag-5'>標準</b>的<b class='flag-5'>RTA-OS</b>--Interrupts<b class='flag-5'>介紹</b>

    符合AUTOSAR標準RTA-OS-Resources詳解

    訪問需要在任務和ISR之間共享的硬件或數據可能是不可靠和不安全的。這是因為當較低優先級的任務或ISR正在更新共享數據時,可能會發生任務或ISR搶占。
    的頭像 發表于 05-06 09:28 ?3175次閱讀
    <b class='flag-5'>符合</b><b class='flag-5'>AUTOSAR</b><b class='flag-5'>標準</b>的<b class='flag-5'>RTA-OS</b>-Resources詳解

    一文入門AUTOSAR OS

    Autosar OsAutosar 框架中上至RTE 下至驅動,中間可以和BSW 基礎模塊進行交互。是整個autosar 框架下最重要的組成部分。
    的頭像 發表于 06-29 10:34 ?3786次閱讀
    一文入門<b class='flag-5'>AUTOSAR</b> <b class='flag-5'>OS</b>

    AUTOSAR OS操作系統功能特性

    AUTOSAR OS AUTOSAR OS(AUTomotive Open System ARchitecture Operating System)是
    的頭像 發表于 10-27 16:55 ?1861次閱讀