マイクロプロセッサ用の無料のミニAUTOSARエディタ

この投稿では、AUTOSARに近い標準に従ってマイクロプロセッサ用のソフトウェアを開発するために私が書いたプログラムをあなたと共有したいと思います。





2018年、私はEPAM Belarusで、ステアリングラック用のソフトウェアを開発するためのアウトソーシングプロジェクトに招待されました。私は大きな喜びに同意し、ベラルーシに住み、働きに行きました。





このプロジェクトで、私は自動車業界のソフトウェア開発標準であるAUTOSARについて知りました





AUTOSARについて一言

標準によると、アプリケーションアーキテクチャは3つのレベルに分けられます。





  • 応用;





  • ランタイム環境(RTE);





  • 基本的なソフトウェア。





標準の主なアイデアは、システムをコンポーネントに分割し、各レベルの責任のレベルを定義することです。同時に、彼らは主にアプリケーションを鉄から独立させようとしているので、あるMCから別のMCにソフトウェアを簡単に転送できます。システムは独立したコンポーネントに分割され、RTEを使用して相互に作用します。これにより、各コンポーネントを個別にテストし、テストでほぼ100%のコードカバレッジを達成できます。





標準について詳しくは、こちらをご覧ください





標準によれば、コンポーネントは次のコンポーネントを持つことができます。





  • 相互に通信するためのポート。





  • RTE(ランナブル)からのイベントで呼び出される関数。





  • – Calibration Data (CData);





  • – Per Instance Memory (PIM);





  • runnables – Inter Runnable Variable (IRV).





runnables CData, PIM, IRV RTE.





. , , . : sender-receiver, client-server.





  • Sender – ;





  • Receiver – ;





  • Server – ;





  • Client – .





SWC1 SWC2, SWC1.





.





AUTOSAR GUI Editor

, , . . , , arxml. :





  • ;





  • client-server sender-receiver ;





  • . ;





  • (struct), ;





  • ;





  • , , write read , server ;





  • (Multiple instantiation);





  • PIM CData , PIM CData;





  • runnable , ;





  • runnables ;





  • RTE , ;





  • ;





  • test environment ;





  • runnables;





  • .





:





  • , Main .





  • - ;





  • FreeRTOS, , , , FreeRTOS . git .





.





, Main. , , .





, , insert.





, , .





, definition, , , definition (drag and drop). , . , , Multiple instantiation. runnables, , PIM CData.





4つのコンポーネントを持つ単純なプロジェクトの例。
4 .

, , , defenition , .





init values PIM CData Component properties .





, .   Insert->Connection , . , , . , , .





,





-





-





, , .





.





Runnables management, System-> Runnables order. , , runnables .





スケジューラタスクを作成および編集します。
.
スケジューラタスクによるランナブルの配布。
runnables .

Stack size in bytes . , ( git ) , RTOS .





RTE

RTE , . System->Check errors.





, RTE Project Settings. (Project->Settings…). , .





, , .





, , Project->Generate RTE RTE . , RTE RteSkeleton RTE.





STM32CubeIDE

STM32CubeIDE, , , runnables, Data .





STM32CubeIDE , .. . , , :





  1. Components





  2. , , .





  3. Includes   include , RTE.





4.    Source Location Components RTE





5.  main.c  :







#include "Rte_Task_Scheduler.h"

.





6.   stm32f4xx_it.c /* USER CODE BEGIN Includes */ /* USER CODE END Includes */ :

#include "Rte_Task_Scheduler.h"





SysTick_Handler.





7.  .





github.





, AGE , – RTE, .





プログラムに興味がある場合は、次の記事でコンポーネントのテスト方法を説明します。





結論

このエディターにより、STM32用のアプリケーションのアーキテクチャをより視覚的かつ柔軟にすることができました。数学的にロードされたコンポーネントを作成する必要がある場合は、Eclipseで簡単にテストして、STM32のプロジェクトに簡単に実装できます。また、あるコンポーネントから別のコンポーネントへのデータの流れが明確に見えるようになったため、プロジェクトで問題が発生した場合に、その原因を簡単かつ迅速に見つけることができます。





AUTOSAR GuiEditorへのリンク。





プロジェクトへのリンク。R








All Articles