2016-07-14 1 views
0

의 변수,나는 나의 작업은 DMA를 사용하여 패치 버그 작업을 사는 것입니다, 임베디드 및 실시간 시스템의 세계에서 초보자있어 작업의 메모리 주소 또는 FreeRTOS

을 찾는 방법 내 문제는

어떻게 내 버그가 작업의 메모리 주소를 분석 찾는하고 는 결국 패치입니까?

저는 EFM32 거대한 gecko 마이크로 컨트롤러와 GCC 컴파일러에서 FreeRTOS를 사용하고 있습니다.

+0

[xTaskCreate] (http://www.freertos.org/a00125.html)를 사용하면 작업 핸들을 함수에 전달합니다. 이 핸들에서 작업 주소를 수신하면 조사를 시도하십시오. – ckruczek

+0

도움을 주셔서 감사합니다. 그러나 이것이 문제입니다. 주소를 찾을 수 있도록 사용할 수있는 기능이 있습니까? –

+0

아니요 '하나'기능이 없습니다. 하지만 제가 말했듯이, xTaskCreate가 태스크 핸들에 어떤 종류의 값을 쓰는지 조사하려고 시도합니다. – ckruczek

답변

0

내 작업의 TCB (Task Control Block)를 사용하여 내 문제에 대한 해결책을 찾았습니다. tskTCB에는 이와 관련된 작업, 특히 가장 낮은 작업 스택 주소 (pxStack), 가장 높은 작업 스택 주소 (pxEndOfStack) 및 작업 스택의 현재 상단 (pxTopOfStack).

관련 문제