canape软件应用
发布网友
发布时间:2022-05-01 09:38
我来回答
共1个回答
热心网友
时间:2022-06-27 16:19
这两个月来一直在学习VECTOR的软件CANape,下面就这个两个月的调试做一些整理。
CANape软件可以对下位机进行测量、标定、诊断,目前我们的项目主要是测量和标定。
我用的协议是CCP协议。
测量其实比较简单,有两种模式进行测量。第一就是上位机(CANape)定时的发命令给下位机,然后要求下位机在一定的时间内返回该命令对应的返回值。其实说白了就是查询。第二就是上位机发命令启动下位机,让下位机自动的、按一定时间间隔进行数据传输。所谓的DAQ模式。
标定,标定RAM里面的数据很简单,就是你修改了RAM里面的数据之后,上位机会立即发命令给下位机,通知该RAM空间的数据进行更新。
标定EEPROM里面的数据也叫简单,跟标定RAM里面的数据差不多。其实他就是多了一个EEPROM空间的擦除函数。因为EEPROM数据的标定必须先擦除再写。幸好的是EEPROM里面的数据擦除不像FLASH一样一擦除就一个扇区。只是擦除连续的4个字节,而写却是连续的2个字节。所以再写2个字节的时候,你就得先擦除4个字节。因此就得考虑后面两个被擦除的字节必须得重写原来的数据一次
标定FLASH里面的数据比较麻烦。因为如果你要更新一个扇区里面的一个字节,就得擦除这个扇区的所有内容。所以你重新写FLASH的时候就得把原来的数据重新写一遍。目前我采取的做法都是先把FLASH里面的数据拷贝到RAM里面,先标定RAM里面的数据。等你把这些数据标定好后再重新刷到FLASH里面。还有要考虑得是FLASH数据的存储问题。不能把数据表格跟程序放一起。因为如果放在一个扇区的话,你写FLASH就会先把程序擦除掉。很有可能程序就会跑飞。
CANape软件的应用:
第一步就是建立上位机与下位机的逻辑连接,就是发命令给下位机。因为是CCP是基于CAN总线的,因此就要求按照CAN的接口。要设置接收ID和发送ID,上位机也有这两个填写项,设置一样就OK。其次就是波特率设置成一样。波特率里面的时间段1和时间段2的比最好设置成0.875。最后就是设置下位机的逻辑链接地址,这里要注意的是上位机的逻辑地址是按照Intel格式设置的。然后点击test connection看一下是否可以链接。如果下位机的CCP协议写好了,是可以communication的。
第二步就是建立DB,整个DB都是基于MAP文件的。MAP文件其实就是你程序里面的变量、函数等这些的地址映射的一个文件。利用这个MAP文件建立DB,在CANape就可以通过这个变量的地址来访问数据。
第三步就是建立测量、标定等的窗口。
第四步就是进行测量标定