当前位置: 主页 > 数据库

打开数据库失败-android so库加载失败

发布时间:2023-02-09 10:07   浏览次数:次   作者:佚名

在使用项目的过程中,如何准备查看数据的变化,这时候需要在项目中添加相应的数据库。 下面介绍如何添加数据库(格式为.dbc)。 数据库存储了数据的所有内容,也是项目运行过程中非常重要的数据。

打开一个已经构建的 DBC。 如果需要自己新建,可以在项目中找到DBC模板,路径为:C:\Users\Public\Documents\Vector\CANoe\11.0 (x64)\Templates\Database。

在这里插入图片描述

点击File--Create Database 创建一个新的DBC

在这里插入图片描述

创建完成后需要选择DBC的类型,因为不同版本支持的模板不同,所以这里可以选择适合自己的模板。

在这里插入图片描述

选择后需要选择保存路径和文件名,1为保存路径,2为保存文件名;

在这里插入图片描述

打开已经建立的DBC; 根据发送信号表中需要建立的网络节点建立网络节点,需要建立什么样的网络节点可以从NM_Message中的Transmitter和Receiver中看出。 找到Network节点,右击,执行新建操作,然后按照刚才需要创建的节点进行构建;

在这里插入图片描述

打开数据库失败_android so库加载失败_steam添加库文件夹失败

建立完成后,根据要求导入需要的DBC(DBC模板路径:C:\Users\Public\Documents\Vector\CANoe\11.0 (x64)\Templates\Database),其中最重要的是DBC模板 是:Vector_IL_Basic Template.dbc。 对于CAN FD报文,需要导入CAN_FD Template.dbc,在选择Message时选择Type为CAN FE Standard。

在这里插入图片描述

导入对我们新建DBC有帮助的DBC模板后,我们需要定义Message、Network、Signal等内容的属性。

8.1 Message最重要的两个属性:GenMsgCycleTime定义了Message的周期,GenMsgStartDelayTime定义了网络节点启动后Message的延时。

在这里插入图片描述

8.2 Signal最重要的两个属性:GenSigSendType定义了信号的发送类型,GenSigStartValue定义了信号的初始值。 至于信号的发送类型,在导入的DBC模板中有明确的定义,我们只需要选择合适的发送类型即可。

在这里插入图片描述

检查之后,我们就可以开始根据需求信号表创建Message和SIgnal了。

首先开始建立Message。

在这里插入图片描述

打开数据库失败_steam添加库文件夹失败_android so库加载失败

填写相应的属性。

11.1 Name:这条消息的名字,给出信号表中的Message Name

11.2 ID:本条消息的ID(十六进制),给出信号表中的Message ID

11.3 DLC:字节长度,同时决定Type的类型,在信号表中给出DLC

11.4 Type:如果DLC为8,选择CAN Standard; 如果是64,选择CAN_FD Standard

11.5 Transmitter:该消息的发送点打开数据库失败,给定信号表中的Transmitter; 更改是在新消息页面上的发送器上进行的,而不是在定义页面上

11.6 Tx Method:此消息的发送方式(Cyclic和Event),在信号表中给出周期[ms],如果该项有值,则为周期性的,否则为事件信号

11.7 Cycle Time:周期的值,由Attributes中的GenMsgCycleTime改变,给出信号表中的周期[ms],如果该项有值,则为周期性的,否则为事件信号

11.8 Layout:显示Message中各个Signal的比特分布(不重叠,唯一)

在这里插入图片描述

android so库加载失败_打开数据库失败_steam添加库文件夹失败

创建信号

在这里插入图片描述

填写相应的属性。

13.1 Name:Signal的名称(给出的信号表中的Signal名称如果有空格等会报错)命名有严格的要求,需要按照规范进行(具体的规范不是很清楚)。

13.2 Length:信号比特长度(给定信号表中的Size(bit))

13.3 字节顺序:给定信号表中的字节顺序

13.4 值类型:给定信号表中的数据类型

13.5 因子:给定信号表中的因子

13.6 Offset:给定信号表中的偏移量

13.7 最小值:给定信号表中的 P-最小值

android so库加载失败_打开数据库失败_steam添加库文件夹失败

13.8 Maxium:给定信号表中的P-Maxium(随成分最小值的变化范围)

13.9 Init.Value:初始值应在最大值和最小值之间,包括最大值和最小值,Default in the given signal table

13.10 初始化值,初始值的定义应该是Attribute中GenMsgStartValue的定义。

13.11Message:写入属于哪个Message,即给定信号表中的Message Name

在这里插入图片描述

创建真值表(Value Table,值取自给定信号表中的Coding)。 为真值表创建入口点。

在这里插入图片描述

进入后,开始新建一个。

在这里插入图片描述

进入后开始对真值表进行操作。 指针表中的信号名称格式推荐为VtSig_。 以上只是一个建议,方便关联Signal时查找。 命名完成后,开始输入Value Descriptions; 对于少量的值,可以使用枚举,如果真值表值的个数很大,可以使用其他方法进行枚举。 原则上应具有代表性和综合性。 这使其他人更容易阅读和理解。 如果值的描述太长,需要酌情删除。

steam添加库文件夹失败_android so库加载失败_打开数据库失败

在这里插入图片描述

完成以上操作后,还需要将信号与Message关联起来,将真值表与信号关联起来。 首先介绍一下Signal和Message的关联。 点击新建Signal所在的Message,找到新建Signal打开数据库失败,双击Signal,更改Startbit[bit],值为给定信号表中的Lsb。 这里Startbit[Bit]定义了信号在报文中的位置,是唯一的。 如果两个信号有重复位,DBC 将报错。 这时需要确认startbit参数是否有误。

在这里插入图片描述

将真值表与信号相关联。 双击signal下新建的signal,会出现如下页面。 在第16步建立的真值表可以在值表的下拉菜单中找到。 选择并保存,一切就绪。 如果担心关联不上,可以通过Value Description查看signal的值。

在这里插入图片描述

DBC 创建完成后,需要将其添加到项目中。 具体方法如下:Simulation -> Simulation Setup -> 右键选择System View

在这里插入图片描述

选择需要添加的 CAN 网络节点。 Database -> 右键选择Add -> 确认路径后DBC -> Open,可以看到已经成功添加到CAN网络中。

在这里插入图片描述

笔记:

1、每个项目的DBC不一样,以上步骤可以根据项目需要删去。

2、如果在Graphic页面找不到你想要的信号,你可以查看该信号是否只存在于某个DBC中,而你没有将其加入到CAN网络中。