Editor AUTOSAR mini gratis untuk mikrokontroler

Dalam posting ini saya ingin berbagi dengan Anda program yang saya tulis untuk mengembangkan perangkat lunak untuk mikrokontroler sesuai dengan standar yang dekat dengan AUTOSAR.





Pada tahun 2018, saya diundang untuk bekerja di EPAM Belarusia dalam proyek outsourcing untuk mengembangkan perangkat lunak untuk rak kemudi. Saya setuju dengan senang hati dan pergi untuk tinggal dan bekerja di Belarus.





Dalam proyek ini, saya berkenalan dengan standar pengembangan perangkat lunak di industri otomotif - AUTOSAR .





Beberapa kata tentang AUTOSAR

Menurut standar, arsitektur aplikasi dibagi menjadi 3 tingkatan:





  • Aplikasi;





  • Run Time Environment (RTE);





  • Perangkat lunak dasar.





Gagasan utama dari standar ini adalah untuk membagi sistem menjadi beberapa komponen, serta menentukan tingkat tanggung jawab untuk setiap tingkatan. Pada saat yang sama, mereka terutama mencoba membuat aplikasi independen dari besi, sehingga Anda dapat mentransfer perangkat lunak tanpa rasa sakit dari satu MC ke MC lainnya. Sistem ini dibagi menjadi beberapa komponen independen dan mereka berinteraksi satu sama lain menggunakan RTE. Ini memungkinkan Anda untuk dapat menguji setiap komponen secara terpisah dan mencapai cakupan kode hampir 100% dengan pengujian.





Anda dapat membaca lebih lanjut tentang standar di sini .





Menurut standar, komponen dapat memiliki komponen berikut:





  • Pelabuhan untuk berkomunikasi satu sama lain;





  • Fungsi memanggil acara dari RTE (runnables);





  • – 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.





Contoh proyek sederhana dengan 4 komponen.
4 .

, , , defenition , .





init values PIM CData Component properties .





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





,





-





-





, , .





.





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





Buat dan edit tugas penjadwal.
.
Distribusi runnable berdasarkan tugas penjadwal.
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, .





Jika program ini menarik minat siapa pun, di artikel berikutnya saya akan memberi tahu Anda cara melakukan pengujian untuk komponen.





Kesimpulan

Editor ini memungkinkan saya membuat arsitektur aplikasi saya untuk STM32 lebih visual dan fleksibel. Jika perlu untuk menulis komponen yang dimuat secara matematis, saya sekarang dapat mengujinya tanpa rasa sakit di Eclipse dan hanya kemudian dengan mudah menerapkannya ke dalam proyek di STM32. Selain itu, aliran data dari satu komponen ke komponen lainnya menjadi terlihat jelas, yang membuatnya mudah dan cepat untuk menemukan sumber masalah dalam proyek jika muncul.





Tautan ke Editor Gui AUTOSAR.





Tautan ke proyek. R








All Articles