我们在用多块2802进行通信,但是官方给出2802的eCAN在ROM启动时会出现故障,这个是官方的勘误表http://www.ti.com.cn/cn/lit/er/sprz171q/sprz171q.pdf ,问题描述在20页。
官方的技术支持给了一个解决方法,把eCAN的配置程序写到OTP中。我的问题就是,把部分程序写到OTP的步骤,同时其他配置程序和main照常写到flash中。
在网上搜了一下,只是说明要改cmd,但是如何改,改完之后的操作没有给出。希望有人解答!
Hardy Zhou:
我自己没有做过OTP烧写实验,但是可以给你建议参考
1. OTP和flash的擦写是一样的
2.在CMD中,把相关eCAN配置程序定义到空余的OTP内存空间地址范围.使用#pragma CODE_SECTION 和 #pragma DATA_SECTION来定义程序和数据放置位置
我们在用多块2802进行通信,但是官方给出2802的eCAN在ROM启动时会出现故障,这个是官方的勘误表http://www.ti.com.cn/cn/lit/er/sprz171q/sprz171q.pdf ,问题描述在20页。
官方的技术支持给了一个解决方法,把eCAN的配置程序写到OTP中。我的问题就是,把部分程序写到OTP的步骤,同时其他配置程序和main照常写到flash中。
在网上搜了一下,只是说明要改cmd,但是如何改,改完之后的操作没有给出。希望有人解答!
Ninghao Li:
回复 Hardy Zhou:
“在CMD中,把相关eCAN配置程序定义到空余的OTP内存空间地址范围”
这句话不太理解,好像只是使用#pragma CODE_SECTION 这个语句就可以把eCAN的配置程序放到某个字段里。
不过还有一个问题,就是OTP的地址空间还没有定义字段,在CMD中所要做的是不是就是定义的部分。
我们在用多块2802进行通信,但是官方给出2802的eCAN在ROM启动时会出现故障,这个是官方的勘误表http://www.ti.com.cn/cn/lit/er/sprz171q/sprz171q.pdf ,问题描述在20页。
官方的技术支持给了一个解决方法,把eCAN的配置程序写到OTP中。我的问题就是,把部分程序写到OTP的步骤,同时其他配置程序和main照常写到flash中。
在网上搜了一下,只是说明要改cmd,但是如何改,改完之后的操作没有给出。希望有人解答!
Hardy Zhou:
回复 Ninghao Li:
CODE_SECTION是用于分配代码地址空间位置, DATA_SECTION用于分配变量地址空间位置
CMD的使用参考以下示例
比如定义DATA_LOG到OTP的地址0x3D7A00到0x3D7C00空间内
MEMORY
{
PAGE0:/*代码放到PAGE0 */
OTP:: origin = 0x3D7800, length = 0x000200 /* on-chip OTP */
PAGE 1:/*数据放到PAGE1*/
OTP_DATA:: origin = 0x3D7A00, length = 0x000200 /* on-chip OTP */
}
DATA_LOG : > OTP_DATA PAGE = 1
#pragma DATA_SECTION(bufferB, "DATA_LOG")const char bufferB[512] = {0};
我们在用多块2802进行通信,但是官方给出2802的eCAN在ROM启动时会出现故障,这个是官方的勘误表http://www.ti.com.cn/cn/lit/er/sprz171q/sprz171q.pdf ,问题描述在20页。
官方的技术支持给了一个解决方法,把eCAN的配置程序写到OTP中。我的问题就是,把部分程序写到OTP的步骤,同时其他配置程序和main照常写到flash中。
在网上搜了一下,只是说明要改cmd,但是如何改,改完之后的操作没有给出。希望有人解答!
Hardy Zhou:
回复 Hardy Zhou:
OTP操作时,要注意OTP中有的地址存放TI出厂的校验信息,不能擦除已有的信息
我们在用多块2802进行通信,但是官方给出2802的eCAN在ROM启动时会出现故障,这个是官方的勘误表http://www.ti.com.cn/cn/lit/er/sprz171q/sprz171q.pdf ,问题描述在20页。
官方的技术支持给了一个解决方法,把eCAN的配置程序写到OTP中。我的问题就是,把部分程序写到OTP的步骤,同时其他配置程序和main照常写到flash中。
在网上搜了一下,只是说明要改cmd,但是如何改,改完之后的操作没有给出。希望有人解答!
Ninghao Li:
回复 Hardy Zhou:
非常感谢!
我们在用多块2802进行通信,但是官方给出2802的eCAN在ROM启动时会出现故障,这个是官方的勘误表http://www.ti.com.cn/cn/lit/er/sprz171q/sprz171q.pdf ,问题描述在20页。
官方的技术支持给了一个解决方法,把eCAN的配置程序写到OTP中。我的问题就是,把部分程序写到OTP的步骤,同时其他配置程序和main照常写到flash中。
在网上搜了一下,只是说明要改cmd,但是如何改,改完之后的操作没有给出。希望有人解答!
Ninghao Li:
回复 Hardy Zhou:
还有一个问题。烧写到OTP跟烧写到flash有什么区别,需要把一些引脚上拉之类的吗
我们在用多块2802进行通信,但是官方给出2802的eCAN在ROM启动时会出现故障,这个是官方的勘误表http://www.ti.com.cn/cn/lit/er/sprz171q/sprz171q.pdf ,问题描述在20页。
官方的技术支持给了一个解决方法,把eCAN的配置程序写到OTP中。我的问题就是,把部分程序写到OTP的步骤,同时其他配置程序和main照常写到flash中。
在网上搜了一下,只是说明要改cmd,但是如何改,改完之后的操作没有给出。希望有人解答!
10#:
回复 Ninghao Li:
不需要。
我们在用多块2802进行通信,但是官方给出2802的eCAN在ROM启动时会出现故障,这个是官方的勘误表http://www.ti.com.cn/cn/lit/er/sprz171q/sprz171q.pdf ,问题描述在20页。
官方的技术支持给了一个解决方法,把eCAN的配置程序写到OTP中。我的问题就是,把部分程序写到OTP的步骤,同时其他配置程序和main照常写到flash中。
在网上搜了一下,只是说明要改cmd,但是如何改,改完之后的操作没有给出。希望有人解答!
Ninghao Li:
回复 10#:
如果只是把eCAN的配置程序烧写到OTP中,系统在从flash启动的时候会不会自动读取到OTP中的程序?
另外,需不需要设置为从OTP启动?
http://www.ti.com/lit/an/spraaq3/spraaq3.pdf
这个链接的文档描述了勘误表中的问题解决方法,但是写的很复杂。这个文档还单独拿eCAN启动的问题写了一下。里面的设置很多,看这个文档的意思是要从OTP启动,设置成从OTP启动,那flash的程序还会不会读取到?
我们在用多块2802进行通信,但是官方给出2802的eCAN在ROM启动时会出现故障,这个是官方的勘误表http://www.ti.com.cn/cn/lit/er/sprz171q/sprz171q.pdf ,问题描述在20页。
官方的技术支持给了一个解决方法,把eCAN的配置程序写到OTP中。我的问题就是,把部分程序写到OTP的步骤,同时其他配置程序和main照常写到flash中。
在网上搜了一下,只是说明要改cmd,但是如何改,改完之后的操作没有给出。希望有人解答!
10#:
回复 Ninghao Li:
Ninghao Li
如果只是把eCAN的配置程序烧写到OTP中,系统在从flash启动的时候会不会自动读取到OTP中的程序?
是否读取或访问或执行,取决于你在cmd文件中是否有做相关的定义。
Ninghao Li
另外,需不需要设置为从OTP启动?
你自己希望应用程序从哪里开始运行,就从哪里启动。
Ninghao Li
http://www.ti.com/lit/an/spraaq3/spraaq3.pdf
这个链接的文档描述了勘误表中的问题解决方法,但是写的很复杂。这个文档还单独拿eCAN启动的问题写了一下。里面的设置很多,看这个文档的意思是要从OTP启动,设置成从OTP启动,那flash的程序还会不会读取到?
同上,从哪里启动只是表明程序从哪里开始运行,并不代表其它地方的代码不执行,如果cmd文件中有定义的话。
我们在用多块2802进行通信,但是官方给出2802的eCAN在ROM启动时会出现故障,这个是官方的勘误表http://www.ti.com.cn/cn/lit/er/sprz171q/sprz171q.pdf ,问题描述在20页。
官方的技术支持给了一个解决方法,把eCAN的配置程序写到OTP中。我的问题就是,把部分程序写到OTP的步骤,同时其他配置程序和main照常写到flash中。
在网上搜了一下,只是说明要改cmd,但是如何改,改完之后的操作没有给出。希望有人解答!
Ninghao Li:
回复 10#:
勘误表所列的上述问题,是从eCAN启动会工作不正常,还是从rom启动ecan就不能工作。
我现在感觉对这个勘误表理解有问题。
此外,下图中的ecan-a boot mode in boot rom怎么理解。既然是boot rom,怎么还会有从ecan启动?