TI中文支持网
TI专业的中文技术问题搜集分享网站

28335 HVPM_Sensorless_2833x ADC_cal()问题

您好,我使用28335的例程HVPM_Sensorless_2833x,然后将其CMD文件改为FLASH模式下的CMD文件,并在predefine symbols页面增减宏定义"FLASH",硬件上将GPIO84/GPIO85/GPIO86/GPIO87全部拉高。结果发现,程序一运行到ADC_cal()处就跑回codestart,自动重新无休止开始程序运行(无论是连着仿真器,还是脱开仿真器独立运行都会跑飞)。只要将ADC_cal()注释掉就一切都正常。在论坛上查了好久,有人跟我遇到同样的问题,但是并没有得到解决。

另外,HVPM_Sensorless_2833x的程序,配置成RAM模式下的CMD文件,即使有ADC_cal()函数,也能正常运行。

这里面我就纳闷了,根据文档说的如果是JUMP TO FLASH模式,那么ADC_cal()会在启动的时候自动运行一次,那么我在自己的程序里面再一次调用OTP中的ADC_cal()难道会找不到地址吗?为什么RAM下面可以正常运行,而FLASH下面ADC_cal()就会导致跑飞?

另外,我的时钟频率150MHz,外部供电使用3.3V和1.9V,我用万用表确认过。

请TI的专家们帮忙解决一下问题,谢谢!

rookiecalf:能跑回codestart,说明没有跑飞,而是你在看门狗开启的状况下调用的ADC_cal(),你是用的原始版本的程序,还是自己做了修改。如果是有修改,看看有没有上述问题。

您好,我使用28335的例程HVPM_Sensorless_2833x,然后将其CMD文件改为FLASH模式下的CMD文件,并在predefine symbols页面增减宏定义"FLASH",硬件上将GPIO84/GPIO85/GPIO86/GPIO87全部拉高。结果发现,程序一运行到ADC_cal()处就跑回codestart,自动重新无休止开始程序运行(无论是连着仿真器,还是脱开仿真器独立运行都会跑飞)。只要将ADC_cal()注释掉就一切都正常。在论坛上查了好久,有人跟我遇到同样的问题,但是并没有得到解决。

另外,HVPM_Sensorless_2833x的程序,配置成RAM模式下的CMD文件,即使有ADC_cal()函数,也能正常运行。

这里面我就纳闷了,根据文档说的如果是JUMP TO FLASH模式,那么ADC_cal()会在启动的时候自动运行一次,那么我在自己的程序里面再一次调用OTP中的ADC_cal()难道会找不到地址吗?为什么RAM下面可以正常运行,而FLASH下面ADC_cal()就会导致跑飞?

另外,我的时钟频率150MHz,外部供电使用3.3V和1.9V,我用万用表确认过。

请TI的专家们帮忙解决一下问题,谢谢!

zhou zechang:

回复 rookiecalf:

我刚刚少说了一句,看门狗没有开启

您好,我使用28335的例程HVPM_Sensorless_2833x,然后将其CMD文件改为FLASH模式下的CMD文件,并在predefine symbols页面增减宏定义"FLASH",硬件上将GPIO84/GPIO85/GPIO86/GPIO87全部拉高。结果发现,程序一运行到ADC_cal()处就跑回codestart,自动重新无休止开始程序运行(无论是连着仿真器,还是脱开仿真器独立运行都会跑飞)。只要将ADC_cal()注释掉就一切都正常。在论坛上查了好久,有人跟我遇到同样的问题,但是并没有得到解决。

另外,HVPM_Sensorless_2833x的程序,配置成RAM模式下的CMD文件,即使有ADC_cal()函数,也能正常运行。

这里面我就纳闷了,根据文档说的如果是JUMP TO FLASH模式,那么ADC_cal()会在启动的时候自动运行一次,那么我在自己的程序里面再一次调用OTP中的ADC_cal()难道会找不到地址吗?为什么RAM下面可以正常运行,而FLASH下面ADC_cal()就会导致跑飞?

另外,我的时钟频率150MHz,外部供电使用3.3V和1.9V,我用万用表确认过。

请TI的专家们帮忙解决一下问题,谢谢!

zhou zechang:

回复 rookiecalf:

感谢您的回复,我用的是例程,暂时没有修改,例程根本没有开启看门狗。

您好,我使用28335的例程HVPM_Sensorless_2833x,然后将其CMD文件改为FLASH模式下的CMD文件,并在predefine symbols页面增减宏定义"FLASH",硬件上将GPIO84/GPIO85/GPIO86/GPIO87全部拉高。结果发现,程序一运行到ADC_cal()处就跑回codestart,自动重新无休止开始程序运行(无论是连着仿真器,还是脱开仿真器独立运行都会跑飞)。只要将ADC_cal()注释掉就一切都正常。在论坛上查了好久,有人跟我遇到同样的问题,但是并没有得到解决。

另外,HVPM_Sensorless_2833x的程序,配置成RAM模式下的CMD文件,即使有ADC_cal()函数,也能正常运行。

这里面我就纳闷了,根据文档说的如果是JUMP TO FLASH模式,那么ADC_cal()会在启动的时候自动运行一次,那么我在自己的程序里面再一次调用OTP中的ADC_cal()难道会找不到地址吗?为什么RAM下面可以正常运行,而FLASH下面ADC_cal()就会导致跑飞?

另外,我的时钟频率150MHz,外部供电使用3.3V和1.9V,我用万用表确认过。

请TI的专家们帮忙解决一下问题,谢谢!

zhou zechang:

回复 rookiecalf:

谢谢你的回答,我用的是原始本版的例程,看门狗根本没有开启。

您好,我使用28335的例程HVPM_Sensorless_2833x,然后将其CMD文件改为FLASH模式下的CMD文件,并在predefine symbols页面增减宏定义"FLASH",硬件上将GPIO84/GPIO85/GPIO86/GPIO87全部拉高。结果发现,程序一运行到ADC_cal()处就跑回codestart,自动重新无休止开始程序运行(无论是连着仿真器,还是脱开仿真器独立运行都会跑飞)。只要将ADC_cal()注释掉就一切都正常。在论坛上查了好久,有人跟我遇到同样的问题,但是并没有得到解决。

另外,HVPM_Sensorless_2833x的程序,配置成RAM模式下的CMD文件,即使有ADC_cal()函数,也能正常运行。

这里面我就纳闷了,根据文档说的如果是JUMP TO FLASH模式,那么ADC_cal()会在启动的时候自动运行一次,那么我在自己的程序里面再一次调用OTP中的ADC_cal()难道会找不到地址吗?为什么RAM下面可以正常运行,而FLASH下面ADC_cal()就会导致跑飞?

另外,我的时钟频率150MHz,外部供电使用3.3V和1.9V,我用万用表确认过。

请TI的专家们帮忙解决一下问题,谢谢!

zhou zechang:

回复 zhou zechang:

问的这个问题,nobody knows!!!整个论坛好几个问了同样的问题,TI没有人能说明白???

赞(0)
未经允许不得转载:TI中文支持网 » 28335 HVPM_Sensorless_2833x ADC_cal()问题
分享到: 更多 (0)