移植FreeModbus不运行,哪位高手遇到过

2019-07-20 01:22发布

本帖最后由 八度空间 于 2016-1-31 22:07 编辑

最近移植FreeModbus-V1.5版本到探索者开发板,发现下载后不运行,仿真发现一直在这汇编中循环,main函数都进不了 modbus仿真截图1.png

如果在main函数中将eMBInit()函数注释掉之后,就能跑了
modbus仿真截图2.png
找了一下午没找到问题在哪里,目前用的编译环境是MDK5.17,以为是编译环境的问题,换MDK4.72也不行,有高招破解么?下载的是官网上的源码
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
Bula
2019-07-21 12:27
Bula 发表于 2016-2-2 12:45
是的。继续研究......

基本搞定:

1、Options for Target对话框,Target页面中,勾选Use MicroLib
2、main.c的最后增加如下代码:
#ifdef  USE_FULL_ASSERT  
   
/**
  * @brief  Reports the name of the source file and the source line number
  *         where the assert_param error has occurred.
  * @param  file: pointer to the source file name
  * @param  line: assert_param error line source number
  * @retval None
  */  
void assert_failed(uint8_t* file, uint32_t line)  
{  
  /* User can add his own implementation to report the file name and line number,
     ex: printf("Wrong parameters value: file %s on line %d ", file, line) */  
   
  /* Infinite loop */  
  while (1)  
  {  
  }  
}

void __aeabi_assert(const char * x1, const char * x2, int x3)
{
}
#endif  

一周热门 更多>