Other Parts Discussed in Thread: HALCOGEN
您好:
之前问的那个旧的工程在e2e上面改成3.05版本的了,但是使用的时候在FreeRTOS的一个任务中做EMAC初始化时tms570芯片的D1变成红色了,查了下手册说出现了nERROR,以太网也没有初始化成功(ping不通,板子没有成功连接到路由器),出现这个nERROR的原因是什么呢?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Other Parts Discussed in Thread: HALCOGEN
您好:
之前问的那个旧的工程在e2e上面改成3.05版本的了,但是使用的时候在FreeRTOS的一个任务中做EMAC初始化时tms570芯片的D1变成红色了,查了下手册说出现了nERROR,以太网也没有初始化成功(ping不通,板子没有成功连接到路由器),出现这个nERROR的原因是什么呢?
Hi Yong,
你看看把sys_startup.c替换成这个可不可以?
http://www.deyisupport.com/question_answer/microcontrollers/hercules/f/70/p/21465/72655.aspx#72655
Hi,Renton:
解决了,是因为新版本的startup文件里面关于以太网接收、发送中断的中断向量表没有添加,按照原来的工程位置及命名添加就可以了,具体是在VIM RAM中的地77及79项改为EMACCore0TxIsr及EMACCore0RxIsr就可以正常运行了,这样就可以正常接收发送了。
非常感谢您提供的帮助!
yong
Hi Yong,
应该是ESM的处理结果。
具体的原因不太好确认,有可能是你的程序跑到了保护区或者其他什么的。
所以,ESM给出了一个nERROR电平,驱动D1点亮。
一般,如果使用Hercules系列芯片,这些安全功能应该利用起来。
比如,仍可由MCU自己处理的安全问题(诸如ECC错误,奇偶校验错,MPU错误等等),应该放在ESM的中断中来判断并处理。
如果MCU自身已经无法确保运行的安全性(如发生了CPU校验错,2bit ECC错误等),就直接输出nERROR信号,由外部系统来判断是否应该断电或RESET。
还想请教一下您这个ESM中断管理在HCG中应该如何配置呢?在VIM RAM中只看到有esmHighInterrupt及esmLowInterrupt,但这个对应的服务程序是如何进一步判断到底发生了ECC错误或者奇偶校验错误呢,或者您有一些ESM模块的例程可以参考的吗?不太清楚这个模块的使用方法,应该参考哪些资料呢?
谢谢您的帮助~
yong