完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
写了一个简单的led流水灯程序,但是在编译没问题,但是在烧写进去之后,达不到效果,原因是:使用volatile int 声明了一个全局变量i,然后在函数led()中改变i的值赋给GPFDAT,这样是错误的,
我的理解是,可能是因为使用volatile声明的全部变量,而函数中改变i后的值保存在内存堆栈中,而编译器每次读取i的值都会从volatile i时的地址读取。参考volatile的用法 我对此不懂 有没有懂的前辈来解释下? |
|
相关推荐 |
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
I.MX6ULL-飞凌 ElfBoard ELF1板卡- 应用层更改引脚复用的方法
2747 浏览 0 评论
1321 浏览 0 评论
【英飞凌PSoC 6 RTT开发板试用】串口测试标准输入输出重定向
1109 浏览 0 评论
4552 浏览 0 评论
1806 浏览 0 评论
55124 浏览 21 评论
【参与有奖】激扬代码,千元现金!RT-Thread主题征文大赛
56950 浏览 88 评论
276987 浏览 75 评论
50564 浏览 31 评论
15952 浏览 53 评论
野火 ISO STM32资料合集(程序、原理图、项目初高级篇)
18068 浏览 46 评论
13232 浏览 50 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-4-25 23:43 , Processed in 0.618218 second(s), Total 86, Slave 69 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号