我是想把这几个部分关掉,但是现象是LED8个灯都亮着。我试着把数码管的部分P0=0XFF;发现LED灯就会是两个灯亮着,我想是因为蜂鸣器那里P0 = 0Xaf;的原因,现象也正好是那两个灯亮。这是什么问题呢为什么会相互影响呢。Y0在这个板子上是没有用到的
单片机源程序如下:
#include"reg52.h"
sbit LSA = P2^5;
sbit LSB = P2^6;
sbit LSC = P2^7;
void BuzzClose()//关闭蜂鸣器、继电器。蜂鸣器是P06,继电器是P04
{
LSA = 1;LSB = 0;LSC= 1;
P0 = 0xaf;//1010 1111
LSA = 0;LSB = 0;LSC= 0;
}
void LEDshow()
{
LSA = 0;LSB = 0;LSC = 1;//选中Y4
P0=0xff;//给1就会灭
LSA = 0;LSB = 0;LSC = 0;
}
void smg()
{
LSA = 0;LSB = 1;LSC = 1;//选中Y6,共阳数码管位选
P0=0x00;//关闭数码管
LSA = 0;LSB = 0;LSC = 0;
}
void main()
{
BuzzClose();
LEDshow();
smg();
}
|