标题:
小白提问:蓝桥杯单片机板子程序的初始化问题
[打印本页]
作者:
xiaohanha
时间:
2020-3-12 11:05
标题:
小白提问:蓝桥杯单片机板子程序的初始化问题
我是想把这几个部分关掉,但是现象是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();
}
作者:
大学大家觉
时间:
2020-3-12 22:04
蓝桥杯板子由138译码器控制743锁存器所以
作者:
大学大家觉
时间:
2020-3-12 22:07
蓝桥杯板子138译码器控制743锁存器,P2的高三位控制138译码器,所以初始化要加
P2=0xa0;P0=0x00;P2=0x80;P0=0xff;
作者:
xiaohanha
时间:
2020-3-13 11:02
本帖最后由 xiaohanha 于 2020-3-13 12:28 编辑
要关闭蜂鸣器,继电器的话,给0x00也可以,我这里是给了0xaf就是只关闭蜂鸣器和继电器。通过138译码器控制74HC573锁存器,就可以控制数码管的位选段选,LED灯和蜂鸣器继电器等,我写的程序里面,给完P0以后都让LSA、LSB、LSC等于0,那就是Y0是高电平,其他的都是低电平,74HC573锁存器的D口不能控制Q口状态, Q端保持上一次的电平状态。然后我再给数码管,LED灯值。为什么会互相干扰呢,不应该是独立的吗
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1