完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
做一个裸机程序,点亮LED灯,想要达到使得LED灯闪烁的效果,
但是用下面的程序生成的bin文件,下载到开发板,为什么LED1一直亮,而不闪烁? C代码如下:
|
|
相关推荐
11个回答
|
|
在while循环中,若只将LED1_ON运行,注释掉LED1_OFF,那么LED1灯一直是亮着的;
若只将LED1_OFF运行,注释掉LED1_ON,那么LED1灯将熄灭; 不知道为什么LED1_ON和LED1_OFF都运行时,为什么LED1不闪烁呢? 另外Delay延时函数的,延时时间长短也进行了调整测试,没发现有什么影响变化。。。 |
|
|
|
你试试先打开开LED1,然后延时一段时间熄灭,看看有木有反应~
|
|
|
|
我把代码改成下面这样,效果是,灯一直亮,不灭
|
|
|
|
心中一片海 发表于 2015-09-28 22:30 你这个很明显是延时时间不够长,身边要是有示波器可以测试下对应的引脚输出,应该有方波输出 |
|
|
|
我把延时函数改成下面的样子,还是不行,LED1灯不闪烁
|
|
|
|
感觉上是延时时间太长了,你写的裸机程序,时钟有没有倍频,板子就和很普通的单片机一样,你的delay里面嵌套了那么多,时间应该是太长了。。。。。。。
|
|
|
|
延时时间太长了
算给你看看: 9000的3重循环就是9000 * 9000 * 9000 = 729000000000 你的单片机如果有4GHz主频,估计可以闪 就算40M,时间也是大于 729000000000 * (1/40)us = 18225 s = 50小时 你放着等两天它就闪一下.... |
|
|
|
你写成下面那种,估计等到头发白了也不闪,时间还是稍微计算一下比较好
|
|
|
|
应该调整下延迟参数,慢慢实践噻
|
|
|
|
你的延遲函式會造成假性的無窮迴圈的,建議寫法如下
注意,實際時間還是要看你CPU多少Hz,再去校準 |
|
|
|
一直亮可能是延时太长了,或者就是I/O设置的问题了
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
787 浏览 0 评论
飞凌嵌入式ElfBoard ELF 1板卡-mfgtools烧录流程介绍之烧写所需镜像
888 浏览 0 评论
飞凌嵌入式ElfBoard ELF 1板卡-mfgtools烧录流程之烧写方法
608 浏览 0 评论
飞凌嵌入式ElfBoard ELF 1板卡-内核编译之初次编译
905 浏览 0 评论
飞凌嵌入式ElfBoard ELF 1板卡-内核源代码的目录结构和文件说明
821 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 18:47 , Processed in 0.788684 second(s), Total 92, Slave 75 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号