我正在研究嵌入式程序。我使用avr-gcc工具链从我的MacBook Pro编译C源代码。直到最近,事情进展得很顺利。尽管如此,在我的最新开发迭代中,我似乎已经引入了一些我怀疑的间歇性错误,这是某种堆栈或其他内存损坏错误。我可以使用Valgrind查找静态内存错误吗?
我从来没有使用Valgrind,但它似乎得到了好评如潮,但大多数引用似乎指的是malloc/free类型的错误。我不做任何malloc'ing。这是一个小巧的嵌入式程序,没有操作系统。 Valgrind能帮助我吗?任何关于如何使用它来帮助在交叉编译的场景中找到静态内存管理错误的指针都会非常有用!
或者我应该看看有不同的工具或技术来验证我的代码的内存管理吗?
您的系统上是否有可用于通过套接字发送调试信息的tcp/ip? –
不,没有以太网硬件。只需三个TTL引脚,我们可以通过FTDI电缆观看,使用良好的'printf'。 –