完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
您好,我使用web按钮来设置customHTTPApp.c中的变量值,这里如果用户单击按钮“mode”被设置为“1”回到main.c,进入.(1)循环i测试模式值,以执行以下操作:如果模式被设置为“1”,并且中断ISR发出的另一个变量也被设置为“1”M这里发生了y问题,当用户单击web按钮时,“mode”的确被设置为“1”值,但是当我在主循环中测试它时,它看起来在预期的中断发生时值已经改变了。d在customHTTPApp.c中将其定义为ext.。如果我反过来定义模式变量:在customHTTPApp.c中首先设置它,并将其定义为extern inmain.c,那么当用户单击web按钮时,代码就会被卡住。有人能解释一下这种情况吗?为了实现我的项目目的,我必须共享customHTTPApp.c和main.c中的许多变量。如何确保在代码从ISR循环返回之后在内存中设置的变量不会丢失?CuthHTTPAPP.CMAN.C/[代码]
|
|
相关推荐
8个回答
|
|
我想你的意思是“mode”而不是“main”作为变量名。“inter._flag_.ed”应该设置为volatile(我也会使它成为bool),因为它由主代码和中断代码一起修改。你想。我怀疑你做了别的错事。也许在ISR中,模式重置到哪里?Ruben
|
|
|
|
如果变量在ISR内部被修改,并且由ISR外部的代码读取,那么它必须被声明为“volatile”,以告诉编译器它随时可能改变。
|
|
|
|
我遇到了同样的问题:'mode'是由customHTTP.c的webbutton设置的(取值0或1),但当我从main.c'inter._flag_.ed'进行测试时,它的值发生了变化。
|
|
|
|
好的,我修改如下,但仍然没有变化。
|
|
|
|
看起来C18编译器并不希望在两个文件上都为变量设置外部设置,即使它是初始化的还是不初始化的.main.ccustomHTTPApp.c。
|
|
|
|
你不能这么做。从“Extn”开始的一条线是一个声明,所以它没有初始值。这只能在定义变量的行上完成。您似乎仍然没有注意到项目中应该有一个变量的定义,以及在需要访问变量的其他文件中声明它。
|
|
|
|
如果执行以下操作,则代码可以正常工作:main.ccustomHTTPApp.c——如果反过来执行,则编译正确,但是代码不能正常工作。当我检查“mode”时,它没有包含预期的值。main.ccustomHTTPApp.c所以我不理解NorthGuy的解释:
|
|
|
|
文件1:文件2:通常,它是这样完成的:文件.h:FIL1.C:FIL2.2.C:
|
|
|
|
只有小组成员才能发言,加入小组>>
5248 浏览 9 评论
2036 浏览 8 评论
1956 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3217 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2264 浏览 5 评论
786浏览 1评论
677浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
603浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
684浏览 0评论
581浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 03:34 , Processed in 2.186626 second(s), Total 92, Slave 76 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号