AnsweredAssumed Answered

STM32 linker - how to use _sbrk function

Question asked by Amilton Rogério da Silva on Oct 16, 2017
Latest reply on Oct 16, 2017 by Clive One


  I've found a brillant OCR source code made for the STM32F429-DISCO board. I had to rebuilt the project, using the KEIL V5, because the original source code doesn't bring the project files or the linker files. The autor, Petr Machala, mention on his thesis paper that, he had to alter the linker file to increase the heap capacity, using the "_sbrk" function in the syscalls.c file.


  My doubt is about the alteration of the linker file, what do I need to change to make the compiler use the "_sbrk" function?

  I've searched a lot but don't found any specific tutorial (spetially for KEIL) about that amazing resource, of use the external SDRAM to expand heap memory used by the malloc function. I'd like to use that tool for image processing, maybe fingerprint or facial identification and recognition.


  Here is the link for the original project.

  and a demostration video


  I successfuly compiled the project and pratically all functions are working, the TFT, touch menu and DCMI interface with the OV7670 are working perfectly. But the ocr_algorithm throws to Hardfault when it start to process the image. Increasing the heap memory, until to the microcontroler limit, make it process a little more time, but it still failure at function "scan_boxes".



  Thanks in advance.