完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
调用()之后,执行从何处开始?PIC16LF18326假设睡眠()在程序执行期间被调用,并且假设在RA3(MCLR线)上产生IOC以从该睡眠中醒来,代码执行在哪里重新开始?
|
|
相关推荐
11个回答
|
|
执行总是在睡眠后的指令恢复;该指令已经被预取。睡眠后的第二个指令取决于GIE,如果有一个中断正在等待。
|
|
|
|
从看门狗复位后,代码执行从何处开始?可以从其他地方开始执行吗?
|
|
|
|
我有一个程序在睡眠()模式,直到一个国际奥委会开关唤醒它。然后它在主干()中无限期地继续,或者直到一个I/O线上的开关再次进入休眠状态。假设在主()中锁定了某个东西,WDT将它再次发送到休眠状态。是否有可能让WDT重置一些东西到睡眠()指令之后,而不是程序的开始?
|
|
|
|
看门狗的主要目的是在事物“锁定”时重置向量。如果设备处于睡眠模式,WDT超时将导致唤醒。如果设备处于运行模式下执行代码,则WDT超时将导致重置。
|
|
|
|
所以实际上你没有问题。如果重置不能解决你的潜在问题,那么你必须重新考虑固件的设计。
|
|
|
|
好啊。也许这是不可能的。我不知道如何从一个I/O线路上的瞬时开关启动系统。我所做的是在加电后立即将其置于睡眠模式,然后在RA2(MCLR)上用IOC从睡眠中醒来。在程序执行期间,该行上的另一个信号使它再次入睡。因此,如果电源被应用,系统永远不会关闭,而是处于休眠模式等待。所以,WDT超时只是让它再次进入休眠状态。如果不是从休眠模式,我如何才能在没有FET等外部组件的情况下从瞬间开关按下开始?
|
|
|
|
脉冲/ MCLR?大声笑:
|
|
|
|
我明白了,够公平的了。当看门狗进行重置时,可能存在可以设置或正在设置的标志,这与打开电源时出现的标志不同。因此,当基于该标志的条件,从WDT发生重置时,if语句可以跳过睡眠()函数。
|
|
|
|
像StaseBist.NTO和PCON0BIT.NRWDT?
|
|
|
|
我尝试了这两个,但没有得到我想要的效果。我想我将禁用WDT,因为我没有看到任何重启,因此没有锁定。
|
|
|
|
跳过失踪岗位
|
|
|
|
只有小组成员才能发言,加入小组>>
5238 浏览 9 评论
2028 浏览 8 评论
1950 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3204 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2253 浏览 5 评论
778浏览 1评论
666浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
595浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
677浏览 0评论
576浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 08:32 , Processed in 1.351687 second(s), Total 95, Slave 79 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号