-
.-
CANoe
入门
Step by
step
系列(一)基础应用
CAN
oe
是
Vector
公司的针对汽车电
子行业的总线分析工具,
现在我用
CANoe7.6
版本进行介
绍,其他版本功能基本差不多。
硬件我使用的是
CAN case XL.
< br>1,CANoe
软件的安装很简单,先装驱动,再装软件。安装完成,插上
USB
,连接硬件,这样在
控制面板中
,Vector Hardware
(硬件)
进行查看
通过查看信息可知,
CANcaseXL
中的两个
piggy
,
一个是
251
(高速
CAN
)
,
一个是
7269
(
LIN
)
,
另外常用的还有<
/p>
1054
(低速
CAN
< br>,或称容错
CAN
)
,因为
p>
CANcaseXL
(
can
情况
XL
最大)
中只能支持
两路通讯,这样
piggy
可以自由组合
2,
硬件连接正常,打开
CANo
e
软件
File->New
Configuration
(新配置)
可以选择新建工程的模版,我们这里选择
CAN_,
这样新
建了波特率为
500K CAN
工程,
可以
File->Save Configuration
(保
存配置)
,
进行保存
3,
接下来就要使用
CAN db++
Editor
(编辑)
工具对总线网络节点,
< br>消息,
信号,
进行定义了。
点击工具栏的这个图标
,或
开始菜单中找这个工具启动
启动后,
File
(文件)
->Create
Database
(创建数据)
,
选择
(模板)
,
选
择目录及文件名,进行保存
.-
右键
Network nodes<
/p>
(网络节点)
->New
(新的)
,进行网络节点的定义
,
< br>这里只需要填写
Name
(名字)即可,例如:
Node_A
(节点
A
)
然后添加
Node_B
(节点
B
)
,完成后如下
图,这样在
Network nodes
(网络节点)目录下面
添加出来两个节点
节点添加完成后,下一步添加
CAN
消息,右键
Messages
(信息)
->New
(新的)
,
这是需要
定义名称,
ID
(身份证件)
,
DLC
(数据链路控制)等信息,如下:
.-
然后在
Transmitters
(信号传送器)页面,点击
Add
(增加)按钮,添加
Node_A
(节
点
A
)
为发送节点,意思就是说,此消
息是从
Node_A
(节点
A
)节点发送出来的
Receivers(
p>
接收器)
、
Layout(
布局;设计)
、
Attributes(
属性)
、
Comment(
评论;意见)
Definition
(定义;解说)
、
Signals
(信
号)
、
Transmitters
(信
号传送器)
Type
(类型)
、
ID
(身份证件)
,
DLC
(数据链路控制)
、
TxMethod
(方法)
Cycle
Time(
循环
时间)
其实还有一种方法就是,此时暂时不定义发送节点,然后直接
以拖曳的方式拖曳到发送节点上,
功能上是一样的
Add
(增加)
Remove(
移动)
View(
观察)
Address(
演说)
.-
有了消息,消息里携带的东西自然是信号咯,那么我们开始创建一个信号
右键
Signals(
信号)
->New
(新的)
,
填写如下信息
信号当然要放到消息
中咯,
切换到
Messages
(信息
)
页面,
Add
我们刚刚建立的
p>
Message_A,
当然和上面一样,采用拖曳的方式从
Signal
(信号)到
Message
中建立关联也是可以的。
Switch
p>
(转换)
Length
(长度)
Byte Order
(字节顺序)
Unit(<
/p>
单元)
Value Type
(数值类<
/p>
型)
(初始化
.
牛顿
(十万牛顿没平米)
)
Factor
(因素)
Offset
(抵消;
补偿)
Minimum
(最小值)
Maximum
(最大值)
Value T
able
(值表格)
Automatic min-max
calculation
(自动
值
-
最大
计算)
.-
上面信息中
Intel
(英特尔)模式和
Motorola
(摩托罗拉)格
式的区别如下:
用
0
和
1
来表示开关信号状态似
乎还不是很直观,
我们可以使用
on
和
off
来表示就好了,
于是
View
(观察)
->Value T
ables
(值表)
,
右
键空白处
->New
(新的)
,键入如
下信息:
.-
定义好了之后,还需要跟信号进行关联。右键需要关联的信号
->Edit Signal,Value T
able
(编
辑信号值表)
中关联刚才建立的那个
Value
T
albe
(值表)项
Definition
(定义)
Value
Descriptions
(值描述)
.-
这样一个信号就完成了,另外
还需要加一个类似的信号,可以点击
Signal
(信号)根目
录,在
右边选择
Signal
复制,及
粘贴,然后双击复制好的
Signal
后,进行一些编辑,然后
用上面方
法关联
Message
(消息
)即可快速建立第二个信号了,是不是很方便
继续添加第三个
信号,
Indicator_A
(指示器)
,跟上面一样,但是我这个信号想放在
Message
的第
二个字节的位置,怎么办?
其实很简单,有两种方法:第一种
,右键已经关联好的,即在
Message
目录下的信号,
p>
Edit
mapped signal
(
编辑映射信号)
,在弹出的对话框中的
Startbit
(起始位)中填
8
,这样就这
个信号就跑到该消息的第二个字节中了。
第二种方法,
右键该消息
->Edit Message
(编辑消息)
,
在
Layout
(
布局)页面中,拖动信号的色块进行移动
.-
Message
Mame
(消息名称)
Signal Name(
信号名称)
Startbit(
起始位)
Multiplexortype(
多
路复用器类
型)
以
上
Message_A
消息及消息下所定义已经定义完成
Definition(
定义)
Signals(
信号)
Transmitter
s(
信号传送器)
Receivers(
接收器)
Layout(
布
局)
p>
Attributes(
属性)
Comme
ntp
(评论)
Multiplexor signal(
p>
多路复用器信号)
Arrange(
排
p>
.-
列)
To
Front(
前)
To
Back
(后)
Bit index(
一些指数)
Inverted(
反向的)
如法炮制另外一个消息
Mess
age_B
,完成后如下图。
下面创建环境变量,右键
Environment
variables
(环境变量)
.-
陆续把其他环境变量加好,
Indicator
(指示器)<
/p>
的
Access
(使用权)
属性为
Write
(写入)
哦,
加完如下: