我这段程序问什么不能控制LED的闪烁 编程平台是ICCAVR 单片机型号ATMEGA28A

#include<iom128v.h>#include<macros.h>#defineucharunsignedchar#defineuintunsignedintvo... #include <iom128v.h>#include <macros.h>#define uchar unsigned char#define uint unsigned intvoid delay(){uint i,j;for(i=0;i<20000;i++)<br>for(j=0;j<50000;j++);<br>}void main (){DDRE|=BIT(2);PORTE|=BIT(2);DDRA=0XFF;while(1){PORTA=0XFE;delay();PORTA=0XFF;delay();}}现在那个LED只是再亮却不闪 展开
 我来答
匿名用户
2013-09-01
展开全部
#include <iom128v.h>#include <macros.h>#define uchar unsigned char#define uint unsigned intvoid delay(); //在此加了一句声明,也就是要定义它,你的应该是延时函数没起作用,你试试。void delay(){uint i,j;for(i=0;i<20000;i++)<br _extended="true">for(j=0;j<50000;j++);<br _extended="true">}void main (){DDRE|=BIT(2);</p><p>PORTE|=BIT(2);</p><p>DDRA=0XFF;</p><p>while(1)</p><p>{PORTA=0XFE;</p><p> delay();</p><p>PORTA=0XFF;</p><p> delay();</p><p>}}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-09-01
展开全部
你用什么软件仿真?你有没有计算那个for嵌套是多久的时间?呵呵……你是不是把程序我加载运行一下就看见灯只亮不灭就停止运行?程序本身没错!你的延时时间太长…j等于50000就相当无延时50秒在乘20000这就是你的延时时间!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-09-01
展开全部
我也想知道,赶紧来人回答吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式