微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 不知道哪里出错了

不知道哪里出错了

时间:10-02 整理:3721RD 点击:
#include <reg52.h>
void main()
{
        int a[]={0xfe,0xfd,0xfb,0xf7},i,j;
        int *point;
       
        while(1)
        {
                point=a;
                for(i=0;i<4;i++)
                {
                        P1=*point;
                        for(j=30000;j>0;j--);
                        P1=0xff;
                        point++;
                }
        }                               
}
流水灯程序,想让四个灯成流水灯,不过在Keil里运行灯乱跳,没试过在开发板上运行,哪位大神帮忙解决一下?

定义有问题int a[]={0xfe,0xfd,0xfb,0xf7},i,j;
数组不能和i,j一起定义

void main()
{
       int i, j;
        int a[]={0xfe,0xfd,0xfb,0xf7};
        int *point;
        point = a;
        while(1)
        {
                for(i=0;i<4;i++)
                {
                        P1=point[i];
                        for(j=30000;j>0;j--);
                        P1=0xff;
                       for(j=30000;j>0;j--);
                }
        }                                
}
你这个完全没必要使用指针
void main()
{
        int i, j;
        int a[]={0xfe,0xfd,0xfb,0xf7};   
        P1 = 0xff;   
        while(1)
        {
                for(i=0;i<4;i++)
                {
                        P1=a[i];
                        for(j=30000;j>0;j--);
                        P1=0xff;
                        for(j=30000;j>0;j--);
                }
        }                                
}

这个不影响的吧!

我想练习指针和数组的用法而已!不知道流水灯乱跳是什么情况~~

您的这两个都是用到数组,如果我想用指针实现的话应该怎样呢?

开发板可以呀,程序也没有问题,试一下Professional仿真吧

void main()
{
       int i, j;
        int a[]={0xfe,0xfd,0xfb,0xf7};
        int *point, *temp;
        point = a;
        temp = a;
        while(1)
        {
               point = temp;
                for(i=0;i<4;i++)
                {
                        P1=*point;
                        for(j=30000;j>0;j--);
                        P1 = 0xff;
                       for(j=30000;j>0;j--);
                       point++;
                }
        }                                
}
你试下这个可以不

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top