这是一个很棒的汽车autosar软件开源项目,里面有工具链、autosar源码,还有qemu,可以不依靠板子运行。
神奇的是作者是一个中国人,感谢提供这个开源软件的作者!
下面我会提供一系列此源码运行调试解析的文章,来说明完善这套代码,文章见微信公众号:OS与AUTOSAR研究。
入门文章为:AUTOSAR入门-AS开源代码运行环境搭建(https://mp.weixin.qq.com/s?__biz=MzUzMDMwNTg2Nw==&mid=2247483761&idx=1&sn=ce5ae0a3ef9282fdbeabe0b949eca3e2&chksm=fa528755cd250e43d8903eb3591f4f2d5315d2b2856cce2ab28dbeb5c9ae742c6ef6454a21f6&token=908117878&lang=zh_CN#rd)
automotive software and its tool-chain
Because I am not powerful so I decided to develop tiny but smart part of automotive software based on open source, and create a general AUTOSAR & Automotive Software study environment.
As below picture shows, it was an virtual cluster based on AUTOSAR and can be simulated on Windows and Linux.
- Communication: Can(CanFD) CanIf PduR Com SoAd J1939Tp
- Diagnostic: CanTp Dcm DoIP Dem
- System: EcuM SchM
- Memory: Fls Fee Eep Ea NvM MemIf
Mainly for the purpose to create a small footprint bootloader with all of the code implemented by me.
2. OS ASKAR - Automotive oSeK AutosaR
This RTOS ASKAR is designed according to OSEK/VDX OS223 by taking a reference of a lot of other open source RTOS, generally, the bwlow is the list:
For the purpose that to be able to run most of the common applications which are based on posix, a series of posix APIs have been implemented based on the ASKAR OSEK tiny core.
- posix threads
- posix semaphore
- posix mutex and condition
- posix message queue
- posix signals
General supported CPU architecture list:
- arm32: cortex-m3 arm926
- arm64: cortex-a57 (multicore is supported)
- ppc: mpc5634
- intel: i386
- s12cpuv2: mc9s12xep100
This GUI tool is the one from OpenSAR which is also developed by me, the GUI can be automatically created from xml.
- support CAN device by lascanlib or pyas: CANcaseXL, PeakCAN, SocketCAN, ZLG USBCAN
- support miscellaneous device by lasdevlib with the smae API interface "open/read/write/ioctl/close": rs232
- a powerful python as.one.py tool: Dcm Xcp Bootloader and others.
- a powerful third party RTE tool integrated: cogu/autosar
- LWIP: about text:133Kb, data:11Kb
- contiki-net: about text:54Kb(including the protothread), data:4Kb
- afbinder/websock
- qemu PCI sample driver: asnet ascan asblk
- FatFS
- lwext4
- libelf: an OS independent ELF library for ELF loading&executing.
- LVGL:Littlev Graphics Libraray
- DTC/LIBFDT
Check the page as-study-platform for how to setup the environment from zero by yourself.