TriCore使用问题笔记.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
TriCore使用问题笔记

TriCore使用问题笔记调试错误:No source available for “0xa00f0184()”原因:应该是中断的问题,删除几个为空的中断之后就没有这个问题了,可以单步调试。总的来说是miniwigger的问题。后来还是有相应的问题,直接运行程序应该没有问题,可以得到正确的输入输出。问题由来:CAN驱动接收消息之后,单步调试,出现这个问题。解决方案:对SCU_SWRSTCON寄存器的修改,以促进软件置位操作软件置位的配置由SCU_RSTCON.SW[9:8]来确定,10表示应用置位,01表示系统置位。Tricore中对所有的置位相关的处理器都加锁处理的,需要解锁才能设置,SCU_SWRSTCON.SWRSTREQ可以请求软件置位。解锁的过程有WDT_CON0和WDT_CON1完成.WDT_CON0.ENDINIT位为0的时候表示已经解锁,同时标志位WDT_CON0.LCK=0;为了修改WDT_CON0,必须将正确的密码写入WDT_CON0,密码由CON0与CON1的一些警戒位组合而成。要求如下:如果密码与要求匹配,WDT_CON0在密码访问结束时将统一解锁,解锁条件将由WDT_CON0.LCK = 0 指示。PW的默认值为0,CON0REL的默认值为0xFFFC,或者读去CON0值之后取得。修改CON0,满足一下条件的写入是合理的,可以修改SW与REL的密码值。在解锁,ENDINIT被清零之后,对受初始化结束保护的寄存器的访问被再次开放。当WDT_CON0被解锁时,WDT被自动切换到超时模式,因此,访问窗口是有时间限制的。如果密码与要求匹配,WDT_CON0 在密码访问一结束将被解锁。解锁条件将由 WDT_CON0.LCK=0 指示。如果在密码访问的过程中不正确的密码值被写入 WDT_CON0.PW,则会出现看门狗访问错误。位 WDT_SR.AE 置位并且进入预警模式。对WDT_CON0的修改必须满足一定的格式,如果访问不遵循这些条件,看门狗错误被检测,WDT_SR.AE 置位,并且进入预警模式。在修改访问结束之后,WDT_CON0.LCK 再次置位,自动重新锁住 WDT_CON0。在寄存器可再次被修改之前,必须重新执行有效的密码访问。超时模式由位WDT_SR.TO=1 指示。定时器被设置为 FFFCH 并开始向上计数。超时模式只可由置位 ENDINIT=1 且通过正确的访问序列正确退出。如果执行对 WDT 的不正确访问,或者如果定时器在 ENDINIT 置位之前溢出,则产生一个不可屏蔽中断请求(WDT_NMI),并且进入预警模式。在正常模式(DR=0)下,WDT 工作在标准的看门狗方式中。当检测到看门狗错误时,总是进入预警模式。正常模式、超时模式下的定时器溢出,或者对寄存器 WDT_CON0 的无效访问都可能导致 WDT 进入预警模式。发生上述情况时,WDT 使能系统在复位发生前由预警进入一个安全状态,而不是立即请求设备复位。往DFLASH中写入关键数据注意:用普华提供的FLASH驱动,只能写DFLASH0中的数据。一次只能写一个块,一个DFLASH的一个块是128 BYTE。调用Fls_Write,MainFunction。PCP调试首先说明PCP是一个独立的核,跟TriCore主核相比,有其独立的指令,所以需要独立编程并编译生成PCP的代码。TriCore的第三方集成开发工具(Tasking, HighTec)都可以对PCP进行编程编译。Tasking集成开发环境下带的Debugger是不支持PCP调试的。所以选择专业的调试工具,像第三方Lauterbach Trace32,PLS UAD2+,iSystem IC5000,都是支持多核调试的。软件复位配置SCU驱动,通过Scu_SoftResetPCP文件编译Pcp.c文件的编译错误,在TASKING中试试加上以下代码:#ifdef__CPU__#include __SFRFILE__(__CPU__)#endifPCP中用printf函数不能输出。CIC61508中的DEMO移植后不能进入GPTA0中断修改GPTA0.c中的源代码:GPTA0_LTCCTR00.U = 0 // load LTC0 control registerGPTA0_LTCCTR01.U = 0 // load LTC1 control registerGPTA0_LTCCTR04.U = 0 // load LTC4 control register可能的原因是DAVE中的配置不正确Safety Path Control的控制问题根据61508的用户手册,按照规定配置相应的NVM不能得到正确的结果(经过测试,根

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档