关于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楼-- · 2019-03-26 13:26
应该是板子上连线有出现问题的
wangguanjun156
2楼-- · 2019-03-26 17:45
用位操作试试
辛昕
3楼-- · 2019-03-26 21:36
别费劲了
看图,检查那两个灯到底都连哪去了。

我大胆猜测,单片机IO口没坏
灯没坏
应该是灯不是直接从IO连出的,或者说除了IO,还有别的一起连了,检查这些地方。
zzq宁静致远
4楼-- · 2019-03-26 22:18
 精彩回答 2  元偷偷看……
hynzmj
5楼-- · 2019-03-27 02:03
应该是硬件的问题吧
若如
6楼-- · 2019-03-27 07:37
下载指示灯?当然不可能啦

一周热门 更多>