automotive software and its tool-chain
Because I am not powerful so I decided to develop small 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
- Diagnostic: CanTp Dcm DoIP Dem
- System: EcuM SchM
- Memory: Fls Fee Eep Ea NvM MemIf
- toppers_osek
- FreeOSEK
- FreeRTOS
- ucos ii
- toppers-atk2
- small : this OS is developed by me, OSEK BCC1 conformed
- contiki
- trampoline
- rtthread
- ASKAR : Automotive oSeK AutosaR designed by me, OSEK/VDX OS223 confirmed.
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,also provide a kind of python library for CAN access.
- 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.
- Now use one makefile to bring up the QEMU AGL environment.
- very simple and easy, with one single Makefile to build out the kernel and the rootfs, and a shell script to kick off the qemu virtual machine to execute that kernel and mount that rootfs.(for details check my github.io page on category linux)
- aslinux build step
git clone https://github.com/parai/as.git
cd $(patch-to)/as/release/aslinux
mkdir build
cd build
ln -fs ../script/vexpress-ca9.mk Makefile
ln -fs ../script/run-vexpress.sh run.sh
make all
./run.sh
# if aslua want to be used
cd $(path-to)/as/release/aslua && make 31 && make 33
cp out/arm.exe $(path-to)/as/release/aslinux/build/out/rootfs/usr/bin/aslua -v
cp /usr/arm-linux-gnueabi/lib/*.so* $(path-to)/as/release/aslinux/build/out/rootfs/lib -v
# then the sdcard need to be rebuilt
cd $(path-to)/as/release/aslinux/build && make sdcard
-
check the asenv repository for win32 development
-
for windows x64, follow below steps
8.1 install python27 64bit as C:\Python27
8.2 install scons 3.0.0 zip for python27
cd scons-3.0.0
C:\Python27\python.exe setup.py install
8.3 install Anaconda3 64bit as C:\Anaconda3
8.4 install msys2 x86_64 as C:\msys64
set PATH=C:\Python27;C:\Anaconda3\Scripts;C:\msys64\usr\bin;C:\msys64\mingw64\bin;%PATH%
pacman -Sy
pacman -S unzip wget git mingw-w64-x86_64-gcc mingw-w64-x86_64-glib2 mingw-w64-x86_64-gtk3
pacman -S ncurses-devel gperf scons
pacman -Syuu
wget https://pypi.python.org/packages/1f/3b/ee6f354bcb1e28a7cd735be98f39ecf80554948284b41e9f7965951befa6/pyserial-3.2.1.tar.gz#md5=7142a421c8b35d2dac6c47c254db023d
tar xf pyserial-3.2.1.tar.gz
cd pyserial-3.2.1
C:/Anaconda3/python setup.py install
- launch the /as/Console.bat as Administrator
# in the cmd of aslua
make aslua
# in the cmd of asboot or ascore
scons # build, it will hint you the boards supported
scons run
scons -c # clean
# in the cmd of as.one.py
python main.py