我是想把這幾個部分關掉,但是現象是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();
}
|