发 帖  
原厂入驻New
发烧友10周年庆典,全网超值优惠来袭!千元现金券,下单抽奖赶紧参与》》
[问答] 请问SPC560D如何配置DRUN模式?
926 MCU 电源 看门狗
分享
你好,

我正在使用SPC560D MCU的待机模式。数据表提到了使用DRUN或软件复位退出此模式。你能解释一下吗,
1.如何配置DRUN模式?我尝试使用API​​'halSPCSetRunMode'来切换模式。但是,当用于DRUN模式时,它不会正确退出待机模式,需要重置电源。这件事有什么不足之处吗?

2. SPC560D使用软件复位的方法有哪些?我可以将看门狗复位用作软件复位吗?有没有其他软件重置方法?

在此先感谢您的帮助。
麦克风。

以上来自于谷歌翻译


以下为原文




Hello,

I am using standby mode for SPC560D MCU. The datasheet mentions about using DRUN or software reset for exiting this mode. Can you please explain on,
1. How to configure the DRUN mode? I tried using API 'halSPCSetRunMode' for switching between modes. But when used for DRUN mode, it does not exit the standby mode correctly and a power reset is required. Is any thing missing for this?

2. Which are the ways to use software reset for SPC560D? Can I use watchdog reset as a software reset? Is there any other means for software reset?

Thanks in advance for any help.
Mike.
0
2018-11-19 10:12:26   评论 分享淘帖 邀请回答

相关问题

60个回答
我正在使用待机模式,因为我的产品需要<在低功耗模式下,电流为2mA。我尝试使用停止模式但它无法满足当前的要求。
 
 
您能否提供查询答案?
 
谢谢。
麦克风。

以上来自于谷歌翻译


以下为原文





I am using standby mode as my product needs < 2mA of current when in low power mode. I tried using stop mode but it fails to meet the current requirements.


Can you please provide the answers for queries?

Thanks.
Mike.
2018-11-19 10:21:20 评论

举报

你好迈克,
 
 
你能把你的榜样发给我吗?
您是否尝试过SPC560Dxx OS-Less WKPU LPM测试应用程序?
您可以使用STANDBY模式调整此程序。
 
你应该正确设置LP MODE for Standby并在LP3中添加待机模式
 
 
我正在使用WKPU单元返回RUN模式
 
 最好的祝福
 
 二万

以上来自于谷歌翻译


以下为原文





Hello Mike ,


can you send me your example ?
Did you try SPC560Dxx OS-Less WKPU LPM Test Application for Discovery ?
You can adapt this program with STANDBY Mode.

you should correctly set  LP MODE for Standby and add the standby mode in LP3 for example




  • /**





  • * @brief   Peripheral mode 3 (low power mode).




  • * @note    Do not change this setting, it is expected to be the ''stop only''




  • *          mode.




  • */







  • #if !defined(SPC5_ME_LP_PC3_BITS) || defined(__DOXYGEN__)




  • #define SPC5_ME_LP_PC3_BITS                 (SPC5_ME_LP_PC_STOP0)




  • #endif







  • /* Enable WKPU PCTL */


  • halSPCSetPeripheralClockMode(69,



  • SPC5_ME_PCTL_RUN(2) | SPC5_ME_PCTL_LP(3));


I am using a WKPU Unit to go back in RUN Mode

Best Regards

                      Erwan
2018-11-19 10:33:04 评论

举报

你好,Erwan,
 
感谢您的指导方针。您提到的测试应用程序是否适用于v3.4.x?我还没有安装v3.5.x.你能在这里给我提供测试申请吗?
 
当设备进入LPM模式但无法退出时,所有设置都显示正常。
 
谢谢。
麦克风。

以上来自于谷歌翻译


以下为原文





Hello Erwan,

Thanks for the guidelines. Is the test app you mentioned available with v3.4.x? I have yet not installed the v3.5.x. Can you please provide me the test application here?

All the settings look ok as the device enters the LPM mode but can not exit it.

Thanks.
Mike.
2018-11-19 10:46:56 评论

举报

你好迈克,
 
您可以在此附件中找到LPM Test应用程序
此应用程序集成在SPC5Studio 3.5.0+版本的应用程序向导中
不要犹豫,把你的申请寄给我?
 
 最好的祝福
 
 二万

以上来自于谷歌翻译


以下为原文







Hello Mike ,

You can find in this attachment  the LPM Test application
This application is integrated in the application wizard from SPC5Studio 3.5.0+ version
Do not hesitate to send me your application ?

  Best regards

                Erwan
2018-11-19 10:53:05 评论

举报

你好,Erwan,
 
感谢您的测试应用程序。我实现了相同的,它适用于STOP模式,但不适用于STANDBY模式。您能否尝试为STANDBY模式配置测试应用程序并检查?
 
沟通时,我的应用程序进入待机状态,但我无法将其拉出来。根据规格,我尝试使用DRUN模式退出STANDBY,但没有成功。你可以检查你的应用程序的STANDBY模式吗?
 
谢谢。
麦克风。

以上来自于谷歌翻译


以下为原文





Hello Erwan,

Thanks for the test application. I have implemented the same and it works for STOP mode but not for STANDBY mode. Can you please try to configure your test app for STANDBY mode and check?

As communicated, my app enters the STANDBY mode but I am unable to pull it out of it. As per specifications, I tried using DRUN mode to come out of STANDBY but no success. Can you please check your app for STANDBY mode?

Thanks.
Mike.
2018-11-19 11:11:08 评论

举报

你好,Erwan,
 
你试过'待机'模式吗?请回复。
 
你好论坛成员,
有没有人尝试使用'STANDBY'模式?有帮助吗?
 
谢谢。
麦克风。

以上来自于谷歌翻译


以下为原文





Hello Erwan,

Have you tried 'STANDBY' mode? Please respond.

Hello forum members,
Has anyone tried using 'STANDBY' mode? Any help?

Thanks.
Mike.
2018-11-19 11:24:33 评论

举报

你好迈克,
 
 
我将在待机模式下向您发送示例应用程序LPM。
 
 最好的祝福
 
 二万

以上来自于谷歌翻译


以下为原文





Hello Mike ,


i will send you an example application LPM on Standby mode.

  Best Regards

              Erwan
2018-11-19 11:30:13 评论

举报

你好迈克,
 
您可以在此附件中找到STANDBY模式LPM应用程序的示例
首先,
1)用电线:用PA [3](IRQ#0)插入PA [11](按钮)
==&GT;单击BUTTON SW2进入待机模式
==&GT;依靠线路PA [2]生成触发器(WKPU)以进入RUN模式
 
 最好的祝福
 
 二万

以上来自于谷歌翻译


以下为原文







Hello Mike ,

You can find in this attachment an example of STANDBY mode LPM Application
First ,  
1) with a wire : plug the PA[11] (BUTTON) with PA[3] (IRQ #0)
==> Click on BUTTON SW2 to go in STANDBY Mode
==> Rely by a wire PA[2] to generate a trigger (WKPU) in order to go in RUN Mode

        Best regards

                 Erwan
2018-11-19 11:42:05 评论

举报

你好,Erwan,
 
感谢您的测试应用程序。我相信你一定已经测试过了。虽然使用的引脚不同,但我已经以与您相同的方式实现了待机/运行模式。
 
我观察到的是当MCU进入待机模式时,我没有收到唤醒引脚的中断。但是当我将设备置于停止模式时相同的代码工作,并在接收到唤醒中断时退出。我查看了参考手册(第138页),它将唤醒事件表示为待机模式的退出源,而唤醒中断或唤醒事件作为停止模式退出的源。这有意义吗?
 
如何为唤醒事件服务?我何时可以配置唤醒事件?
 
感谢您的快速反应。
麦克风。

以上来自于谷歌翻译


以下为原文





Hello Erwan,

Thanks for the test application. I believe you must have tested it. I have implemented standby/run mode in the same way as you did though the pin used are different.

What I observed is I do not receive the interrupt for wakeup pin when MCU enters standby mode. But the same code works when I put the device to stop mode and exits when wakeup interrupt is received. I looked at the reference manual (page #138), it states as wakeup event as exit source for standby mode while wakeup interrupt or wakeup event as source for stop mode to exit. Does this make sense?

How to serve event for wakeup? When can I configure event for wakeup?

Thanks for your speedy response.
Mike.
2018-11-19 11:52:52 评论

举报

你好迈克,
 
是的,此应用程序已经过测试,正在为STANDBY工作。
 
你在hal_lld.h中有这个补丁吗?
 
 
 
导入项目后,您应该重新生成以应用修补程序?
 
Wakeup活动在:
 
 
 
 
 
 
配置可以在init中完成:
 
 
 
 
 最好的祝福
 
 二万

以上来自于谷歌翻译


以下为原文







Hello Mike ,

Yes, this application has been tested and is working for STANDBY.

Did you have this patch in hal_lld.h ?



  •       


  • <diff><![CDATA[--- components/spc560dxx_hal_drivers_component/lib/include/hal_lld.h



  • +++ components/spc560dxx_hal_drivers_component/lib/include/hal_lld.h



  • @@ -599,8 +599,7 @@


  •   


  • * @note    Not defined, available to application-specific modes.


  •   


  • */





  • #if !defined(SPC5_ME_LP_PC7_BITS) || defined(__DOXYGEN__)



  • -#define SPC5_ME_LP_PC7_BITS                 (SPC5_ME_LP_PC_HALT0 |          \



  • -                                             SPC5_ME_LP_PC_STOP0)



  • +#define SPC5_ME_LP_PC7_BITS                 (SPC5_ME_LP_PC_STANDBY0)





  • #endif









  • /**



  • @@ -737,7 +736,8 @@


  •    


  • SPC5_RUNMODE_RUN2  = 6,


  •    


  • SPC5_RUNMODE_RUN3  = 7,


  •    


  • SPC5_RUNMODE_HALT0 = 8,



  • -  SPC5_RUNMODE_STOP0 = 10



  • +  SPC5_RUNMODE_STOP0 = 10,



  • +  SPC5_RUNMODE_STANDBY = 13





  • } spc5_runmode_t;


After importing the project , you should regenerate in order to apply the patch ?

the Wakeup event is served in :




  • /*





  • * Interrupt_wakeup ISR function (vector 46).





  • */



  • OSAL_IRQ_HANDLER(vector46) {


  •   


  • uint32_t wisr;




  •   


  • OSAL_IRQ_PROLOGUE();




  •   


  • /* ISR code here.*/


  •   


  • wisr = WKUP.WISR.R;


  •   


  • WKUP.WISR.R = wisr;        

  • //Clear interrupt




  •   


  • gotoRunMode();            

  • //Put device to run mode




  •   


  • OSAL_IRQ_EPILOGUE();



  • }


The configuration could be done in the init :




  • void

  • configureWKPU(

  • void

  • ) {


  •   


  • INTC_PSR(46) = 7;




  •   


  • WKUP.WIPUER.R = 0x0003ffff;   

  • //Enable pullups on all wakeup pins


  •   


  • WKUP.WISR.R = 0x00000008;     

  • //Clear interrupt flag


  •   


  • WKUP.WRER.R = 0x00000008;     

  • //Enable WKUP[3]for wakeup event


  •   


  • WKUP.WIREER.R = 0x00000008;   

  • //Enable WKUP[3]for wakeup event


  •   


  • WKUP.WIFER.R = 0x00000008;   

  • // Enable Filter



  • }


Best Regards

                   Erwan
2018-11-19 12:05:49 评论

举报

你好迈克,
 
 
好的,转换RUN ==&gt; STANDBY运作良好。
行为是正常的,您正在失去调试控制,因为在低功耗时,因为CPU将关闭调试器连接。
你在WKPU [6] PE [0]上触发了下降边缘吗?
 
 最好的祝福
 
 二万

以上来自于谷歌翻译


以下为原文





Hello Mike ,


Ok , the transition RUN ==> STANDBY is working well.
The behavior is normal, you are losing the debug control because in low power because the CPU is going to shut off the debugger connection.
Did you trigger a Falling Edge on WKPU[6] PE[0] ?

                Best Regards

                               Erwan
2018-11-19 12:17:31 评论

举报

你好,Erwan,
 
是的,我正在触发wakup信号的下降沿。
麦克风。

以上来自于谷歌翻译


以下为原文





Hello Erwan,

Yes, I am triggering falling edge on wakup signal.
Mike.
2018-11-19 12:35:17 评论

举报

是否使用下降沿唤醒信号需要任何其他配置 - 内部上拉/下拉?是否需要外部上拉/下拉?
 
 
谢谢。
麦克风。

以上来自于谷歌翻译


以下为原文





Whether using falling edge for wakeup signal needs any additional configuration - internal pull up/down? Whether external pull up/down is required?


Thanks.
Mike.
2018-11-19 12:42:55 评论

举报

你好迈克,
 
 
如果设置了WIPUER,则无需进行外部上拉。
用示波器检查唤醒信号可能会很好。
 
 最好的祝福
 
 二万

以上来自于谷歌翻译


以下为原文





Hello Mike ,


if you set WIPUER, you do not need to put an external pullup.
It could be good to check with oscilloscope your Wakeup signal.

    Best Regards

               Erwan
2018-11-19 12:52:06 评论

举报

相同的唤醒信号在STOP模式下运行良好。 STANDBY模式可能出现什么问题?
 
 
麦克风。

以上来自于谷歌翻译


以下为原文





The same wakeup signal works well in STOP mode. What could be going wrong in STANDBY mode?


Mike.
2018-11-19 13:10:39 评论

举报

你好,Erwan,
 
 
你检查过我的测试申请了吗?它使用下降沿唤醒信号。是否像预期的那样在你的工作?
 
相同的唤醒信号在STOP模式下运行良好。 STANDBY模式可能出现什么问题?
 
我通过示波器检查了唤醒信号(PE0),当MCU处于STANDBY模式时,我能够接收到下降信号。当此信号(PE0)拉高时,我的设备进入待机模式。
 
请尽早告诉我解决方案,因为只有这个实施才能阻止我的项目发布。谢谢。
 
麦克风。

以上来自于谷歌翻译


以下为原文







Hello Erwan,


Have you checked my test application? It uses falling edge for wakeup signal. Is it working at your end as expected?

The same wakeup signal works well in STOP mode. What could be going wrong in STANDBY mode?

I checked the wakeup signal (PE0) over oscilloscope and I am able to receive the falling signal when MCU is in STANDBY mode. My device goes to STANDBY mode when this signal (PE0) is pulled high.

Please let me know the solution at the earliest as only this implementation has held up my project release. Thanks.

Mike.
2018-11-19 13:19:40 评论

举报

你好迈克,
 
 
你是对的 ..
您的STANDBY应用程序中存在问题。
您无法从待机模式切换到RUN0模式
您必须先切换到DRUN模式。 (CF参考手册)
我今天下午给你发了一个新的申请。
 
 最好的祝福
 
 二万

以上来自于谷歌翻译


以下为原文





Hello Mike ,


You are right ..
There is a problem in your STANDBY Application.
You can not switch from STANDBY Mode to RUN0 Mode
You have to switch to DRUN Mode First. (CF Reference Manual)
I am sending you a new application this afternoon.

          Best Regards

                      Erwan
2018-11-19 13:38:26 评论

举报

你好迈克,
 
 
您可以在附件中找到STANDBY模式下的测试应用程序。
 
1)从STANDBY状态,您必须切换DRUN模式
2)在STANDBY状态之后,我必须存根spc_clock_init()函数
 
 最好的祝福
 
 二万

以上来自于谷歌翻译


以下为原文





Hello Mike ,


You can find in the attachment the Test Application in STANDBY mode.

1) From STANDBY State, you have to switch in DRUN mode
2) After STANDBY State , i have to stub spc_clock_init() function

      Best regards

                       Erwan
2018-11-19 13:53:43 评论

举报

你好,Erwan,
 
很抱歉回复很晚。
 
我尝试在SPC560D-DIS发现工具包上执行您的测试应用程序。我根据你的意见做了连接,
PA11短路至PA3和PA2接线,用于退出待机模式。请找附件。
但是测试应用程序没有按预期执行,即当按下按钮(SW2)时它不进入待机模式。我是这么说的,因为主循环中的LED(D7)总是闪烁。我认为,当设备进入待机模式时必须关闭。因为它没有进入待机模式,所以没有退出它的问题。
你能澄清一下这个问题吗?
 
 
我验证了这些补丁,这些补丁在hal_lld.h中可用。还需要其他什么吗?
 
我使用的是SPC v3.4.x.请查找安装详细信息。这里是否需要升级到下一个版本?
 
期待有最早的回复,因为这是阻碍我的项目的唯一问题。谢谢。

以上来自于谷歌翻译


以下为原文





Hello Erwan,

Sorry for replying late.

I tried executing your test application on SPC560D-DIS discovery kit. I did the connections as per your comments,
PA11 shorted to PA3 and PA2 wired for exiting standby mode. Please find attached image.
But the test application does not execute as expected i.e. it does not enter the standby mode when button (SW2) is pressed. I am saying this because the LED (D7) in main loop is always blinking. I think, it must be off when device enters standby mode. As it does not enter standby mode, no question of exiting it.





































Can you please clarify the issue?


I verified the patches and these are available in hal_lld.h. Anything else is required?

I am using SPC v3.4.x. Please find installation details. Is it required here to upgrade to next version?

Look forward to have earliest reply as this is the only issue which has held up my project. Thanks.
2018-11-19 14:06:26 评论

举报

只有小组成员才能发言,加入小组>>

1234下一页

99个成员聚集在这个小组

加入小组

热门话题

创建小组步骤

关闭

站长推荐 上一条 /10 下一条

快速回复 返回顶部 返回列表