关于51单片机的简单问题

2019-03-24 19:37发布

#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int

void delay(uint x)
{
        uint y;
        uchar z;
        for(y=x;y>0;y--)
                for(z=250;z>0;z--);
}

void main()
{
        while(1)
        {
                P1=0xfe;
                delay(800);
                P1=0xff;
                delay(800);
        }
}

本来一个很简单的程序的,不过遇到问题了。P1口接的8个LED灯,这个程序实现功能是使其中的一个LED灯闪烁(低电平亮),不过程序下载到开发板上运行时却有两个LED灯同时闪烁(除预计中的那个还有和它相邻的那个),复位后,开始的时候是一个LED灯闪烁,程序运行一段时间后又变成两个LED灯同时闪烁,百思不得其解,希望哪位前辈指点下啊,谢了! 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
常见泽1
1楼-- · 2019-03-25 01:58
不应该啊
aiwenzx
2楼-- · 2019-03-25 03:41
那你一个引脚一个引脚的定义试试看
若如
3楼-- · 2019-03-25 05:45
换另一个LED灯就可以,不知道是不是板子的问题。

[ 本帖最后由 若如 于 2011-11-4 17:26 编辑 ]
daixiong4271
4楼-- · 2019-03-25 11:24
 精彩回答 2  元偷偷看……
j1a2s3o4n
5楼-- · 2019-03-25 15:08
程序肯定没问题,板子的原因。
j1a2s3o4n
6楼-- · 2019-03-25 16:37
你换那个不应该闪的那个LED闪烁试试,看看还是不是那两个一起闪烁。

一周热门 更多>