Classic Platform AUTOSAR(CP) | Adaptive Platform AUTOSAR(AP) | |
---|---|---|
应用场合 | 传统ECU,如发动机控制器、电机控制器、整车控制器、BMS控制器等 | 未来会更多的应用于如ADAS、自动驾驶等需求高计算能力、高带宽通信、分布式部署的下一代汽车应用领域中 |
软件结构 | 在最高抽象级别上将运行在控制器上的软件分为三层: Application: 不依赖于硬件 runtime environment(RTE): 软件模块间通过RTE交互,并通过RTE访问BSW,RTE体现了application的所有接口 basic software(BSW):分为3大层(服务层(又细分为不同的服务组件,比如系统服务、存储服务、通信服务等)、ECU抽象层、MCU抽象层)和复杂驱动 |
定义了一个ARA运行环境(AUTOSAR Runtime for Adaptive Applications) 分为两种接口类型:service和APIs 由多个功能栈(功能集群:Service & Foundation)组成 AUTOSAR RTE在运行时动态链接服务和客户端 |
主要特点 | 基于C语言面向过程开发 FOA架构(function-oriented architecture) 基于信号的静态配置通信方式(LIN\CAN…通信矩阵) 硬件资源的连接关系局限于线束的连接 静态的服务模块,模块和配置在发布前进行静态编译、链接 大部分代码静态运行在ROM,所有application共用一个地址空间 OSEK OS |
基于C++语言面向对象开发 SOA架构(service-oriented architecture) 基于服务的SOA动态通信方式(SOME/IP…) 硬件资源间的连接关系虚拟化,不局限于通信线束的连接关系(互联网) 服务可根据应用需求动态加载,可通过配置文件动态加载配置,并可进行单独更新 application加载到RAM运行,每个application独享(虚拟)一个地址空间 POSIX-basedOS(Linux\PikeOS…),兼容性广,可移植性高 |
软件更新 | 满足传统ECU替代或增强电气系统的功能, 其软件在整个车辆寿命中往往不会发生明显变化 | 随着外部系统的不断发展或改进的功能,要求车辆中的软件能够不断被更新 |
操作如下:
# 安装SSH server
titron@ubuntu:~/s4poc_dev/build-spider-gateway$ sudo apt-get install ssh openssh-server
# 检查虚拟机的IP地址
titron@ubuntu:~/s4poc_dev/build-spider-gateway$ sudo apt install net-tools
titron@ubuntu:~/s4poc_dev/build-spider-gateway$ ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.231.129 ...
得到虚拟机的IP地址:192.168.231.129
操作如下:添加一个网络位置:
操作如下: FileZilla中,输入VM的ip地址,连接成功。 另一侧窗口指向服务器端。 就可以传送文件或者文件夹了。
先在vmware中调整空间。
然后,启动虚拟机。
在终端,安装并用gparted工具调整系统磁盘空间大小。
vmware管理中,连接CD/DVD到:C:\Program Files (x86)\VMware\VMware Player\linux.iso.
然后,启动虚拟机。
copy光驱中的压缩包到desktop,解压。
然后,运行压缩包中的文件:sudo ./vmware-install.pl (安装过程中,选择“覆盖”)。
放大:ctrl+shift+=
恢复初始大小:ctrl+0
(吐槽:为什么不添加一个缩小呢?:ctrl+shift+-)
CTRL+ALT: release the mouse pointer so that it is no longer inside the remote desktop
MinGW 是Minimalist GNU for Windows的缩写,提供了windows平台上极简的GUN开发环境,包含编译器gcc、g++、链接器、调试器等,用以开发windows应用程序。
MinGW开发的程序是windows本地程序,不依赖额外的运行时库。
MSYS的全称叫Minimal SYStem,是MinGW的一个子系统,是一套运行在Windows上的bash,也就是运行在Win上的Linux Terminal,可以代替cmd来使用。
对一些GNU的开源软件,MSYS可能是必需的,因为它们通常需要./configure然后make才能运行。
我们将MSYS和MinGW配合使用就可以打造出一个Win下的GNU命令行终端和编译系统。
从MSYS2下载安装版本,然后,双击安装。
$ pacman -Syu
(预先已经安装好了MinGW环境。)
重命名:mingw32-make.exe —> make.exe
去msys2的安装目录,找到etc文件夹下的profile文件,然后添加环境变量。
# Here, add "../xxxxx/rcar-xos/v3.3.0/tools/toolchains/mingw64/bin"
MSYS2_PATH="/usr/local/bin:/usr/bin:/bin:../xxxxx/rcar-xos/v3.3.0/tools/toolchains/mingw64/bin"
...
export GNUMAKE=/D/Renesas/rcar-xos/v3.3.0/tools/toolchains/mingw64/bin
\etc\fstab文件,可以配置文件目录映射:比如配置C:\Users\lenovo\Desktop /desktop后,可以在终端直接cd /desktop后可以直接切换到C:\Users\lenovo\Desktop目录下,下面是配置mingw的映射示例:
# Win32_Path Mount_Point
C:/xxxxx/rcar-xos/v3.3.0/tools/toolchains/mingw64 /mingw
查看PATH以及gcc版本
$ echo $PATH
/mingw64/bin:/usr/local/bin:/usr/bin:/bin:../xxxxx/rcar-xos/v3.3.0/tools/toolchains/mingw64/bin:/c/Windows/System32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
$ gcc -v
...
gcc version 7.3.0 (x86_64-posix-seh-rev0, Built by MinGW-W64 project)
在当前HOME目录下,编辑hello.c文件
#include <stdio.h>
int main() {
printf("Hello,World!\n");
printf("sizeof(size_t)=%ld\n", sizeof(size_t));
return 0;
}
编译,执行
$ gcc hello.c
$ ./a
Hello,World!
sizeof(size_t)=8
开始——MSYS2 64bit——MSYS2 MinGW x64——打开文件位置,右键——发送到——桌面快捷方式。
$ pacman -S vim
...
$ vim --version
...
下载https://conemu.github.io/安装。 用下面的命令建立new task,for MinGW64 shell:
set MSYSTEM=MINGW64 & set MSYSCON=conemu64.exe & "c:\msys2_64\usr\bin\bash.exe" --login -i