2012-11-10 11 views
0

STM32F4 개발 보드 용으로 CrossWorks를 사용해야하는 불행한 점이있었습니다. CrossWorks를 사용할 때만 문제가 발생합니다. 프로젝트를 빌드하고 실행하십시오.프로젝트를 TrueSTUDIO에서 CrossWorks로 전환 할 때 memcpy의 하드 오류

저는 TrueSDDIO를 사용할 때 LwIP를 사용하여 UDP 서버를 만들었습니다. 그러나 CrossWorks에서 실행할 때 패킷을 읽을 준비가되면 ethernetif_input()에 심각한 오류가 발생합니다. 패킷 버퍼간에 패킷 정보를 이동하면서 memcpy()를 호출 할 때 오류가 발생합니다.

변경된 내용이 무엇인지 전혀 알지 못합니다.이 코드는 동일한 대상에 맞게 작성되었으며 CrossWorks에서 작동하지 않습니다. 나는 누군가가이 문제의 어떤 부분에 대한 통찰력을 가지고 있기를 희망하고있다 ... 당신이 이것에 관한 어떤 생각을 가지고 있다면 그것은 좋을 것이다.

감사합니다. 내게 필요한 것이 있으면 알려주세요!

+0

하나의 개발 환경이 정렬 요구 사항에 대해 보드 구성을 다르게/올바르게 설정하는 경우가 있습니까? – auselen

답변

0

CrossWorks가 자동으로 힙과 스택 크기를 너무 작게 설정합니다. 기본값은 128 바이트이고 내 프로그램은 하드 폴트의 원인이됩니다. 나는 그것을 부딪 쳤고, 우리는 모두 좋다.