发新帖我要提问
12
返回列表
打印
[51单片机]

求助一个流水灯程序问题

[复制链接]
楼主: herrible
手机看帖
扫描二维码
随时随地手机跟帖
21
第二个for后面的分号去掉就行了.另外把c的类型改了.

QQ截图20140430224359.png (12.75 KB )

QQ截图20140430224359.png

QQ截图20140430224300.png (4.36 KB )

QQ截图20140430224300.png

使用特权

评论回复
评分
参与人数 1威望 +3 收起 理由
herrible + 3 真心很赞
22
天风立马| | 2014-4-30 22:48 | 只看该作者
从波形上看,你的第二个for就一个小尖,放大一看只用了ms级就执行完了.再看你代码,我擦,for后面有个分号...

QQ截图20140430224232.png (5.5 KB )

QQ截图20140430224232.png

使用特权

评论回复
评分
参与人数 1威望 +2 收起 理由
herrible + 2 最终解决了问题的神秘人
23
herrible|  楼主 | 2014-4-30 22:54 | 只看该作者
天风立马 发表于 2014-4-30 22:45
第二个for后面的分号去掉就行了.另外把c的类型改了.

到寝室了,十分十分感谢您,确实帮了我大忙,怀着这个疙瘩我无心学下一步的东西,老想知道我的怎么回事,确实是这个分号的问题,我说怎么老是执行一次就回去了呢,原来多个分号,这个也是之前多次改动结构造成的,加上去忘记删了,第二个for成了第一个for语句的仆从了,来不得半点马虎啊,大五一的太让您费心了,谢了。

使用特权

评论回复
24
herrible|  楼主 | 2014-4-30 22:56 | 只看该作者
天风立马 发表于 2014-4-30 22:48
从波形上看,你的第二个for就一个小尖,放大一看只用了ms级就执行完了.再看你代码,我擦,for后面有个分号... ...

你这个分析方法好科学,我暂时不会用,截图以留念在《那些菜鸟的日子里》,:)

使用特权

评论回复
25
天风立马| | 2014-4-30 23:21 | 只看该作者
herrible 发表于 2014-4-30 22:54
到寝室了,十分十分感谢您,确实帮了我大忙,怀着这个疙瘩我无心学下一步的东西,老想知道我的怎么回事, ...

不客气.

使用特权

评论回复
26
天风立马| | 2014-4-30 23:22 | 只看该作者
herrible 发表于 2014-4-30 22:56
你这个分析方法好科学,我暂时不会用,截图以留念在《那些菜鸟的日子里》, ...

就是keil的debug.没什么.呵呵

使用特权

评论回复
27
wuzhihuiqqyy| | 2014-5-1 01:29 | 只看该作者
我也新手,关于流水灯,广告灯等觉得还是用查表方便,用的汇编

使用特权

评论回复
28
nuaabob| | 2014-5-1 11:12 | 只看该作者
Show you my code, just for reference.
#include <REGX52.H>
#include <INTRINS.H>
void Delay200ms(); //The function is generated by STC_ISP.
int main()
{
        unsigned char i;
        while(1)
        {
         for(i=0;i<=7;i++)
         {
                 P1=_crol_(0xfe,i);
                Delay200ms();
         }
         for(i=0;i<=7;i++)
          {
                 P1=_cror_(0x7f,i);
                 Delay200ms();
         }
}
        return 0;
}
void Delay200ms()                //@12.000MHz
{
        unsigned char i, j, k;
        _nop_();
        i = 2;
        j = 134;
        k = 20;
        do
        {
                do
                {
                        while (--k);
                } while (--j);
        } while (--i);
}

使用特权

评论回复
评分
参与人数 1威望 +3 收起 理由
herrible + 3 很给力!
29
diweo| | 2014-5-1 13:25 | 只看该作者
语句块一定要用{},不要因为for里面就1行就省掉这个{}。

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
herrible + 1 很给力!
30
herrible|  楼主 | 2014-5-1 22:03 | 只看该作者
diweo 发表于 2014-5-1 13:25
语句块一定要用{},不要因为for里面就1行就省掉这个{}。

偶,这个程序多了一个分号,真心不好找啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则