标题: MSP430 debug长时间执行代码_data16_memzero [打印本页]

作者: Smilling    时间: 2021-1-13 10:39
标题: MSP430 debug长时间执行代码_data16_memzero
大家好:
      MSP430程序在debug的时候,从汇编窗口看到,在执行main()函数前长时间停留在代码_data16_memzero处,导致不能马上进入main()函数。
      参考网上说法,在文件Cstartup.s43中添加了禁用看门狗的宏定义。但现象依然存在。
      大家有知道是什么原因导致的吗?




作者: xstong    时间: 2021-1-13 15:34
启动代码正在初始化内存,这个过程是必须的!  如果没有这个过程,你程序的所有全局定义缓存区就不能清零了!
作者: Smilling    时间: 2021-1-13 17:05
后来整理了一下代码,进入main()就很快了。具体是哪部分代码的问题没有进行复现。
作者: xstong    时间: 2021-1-14 07:58
那是因为你DEBUG的时候,单步运行,进入到启动程序的循环处理中了!!!断点放在main上全速执行就瞬间执行过去了!
或者勾选 Debugger ->  Run to main, 调试下载时启动代码执行完毕,自动就停在main函数上了。
作者: xstong    时间: 2021-1-14 08:04
如果你希望程序上电后快速进入mian函数,那么你就少用全局变量,静态变量!!!即便是单片机整个内存均用作全局变量,初始化过程也是微妙级别的,这点时间不至于影响你的应用吧!!!




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1