标题: 麻烦大神帮我看看为什么继电器无法吸合?附单片机程序 [打印本页]

作者: W3s2c8    时间: 2022-4-17 16:08
标题: 麻烦大神帮我看看为什么继电器无法吸合?附单片机程序
#include <STC15F2K60S2.H>
#define u8 unsigned char
#define u16 unsigned int
   
typedef struct
{
    unsigned char b1:1;
    unsigned char b2:1;
    unsigned char b3:1;
    unsigned char b4:1;
    unsigned char b5:1;
    unsigned char b6:1;
    unsigned char b7:1;
    unsigned char b8:1;
}bits;

typedef union
{
    unsigned char hex;
    bits b;
}Hextobin;

Hextobin led_ctrl,buzzer_ctrl;
u16 count;
        
void Device_ctrl(u8 p2data,u8 p0data)
{
    P0=p0data;
    P2=p2data;
    P2=0;
}

void Timer2Init(void)        //1??@11.0592MHz
{
    AUXR &= 0xFB;        //?????12T??
    T2L = 0x66;        //??????
    T2H = 0xFC;        //??????
    AUXR |= 0x10;        //???2????
    IE2 |= 0x04;                    //????2??
  EA = 1;
}

void start(void)
{
    Device_ctrl(0xa0,0);
    led_ctrl.hex=0xff;
    Device_ctrl(0x80,led_ctrl.hex);
}

u8 step;

void led_process()
{
        if(count>=500)
    {
        count=0;
    led_ctrl.b.b1=~led_ctrl.b.b1;
    Device_ctrl(0x80,led_ctrl.hex);
        
        step++;
    }
}

void led_process2()
{
    if(step==10)
    {
        buzzer_ctrl.b.b4=1;
        Device_ctrl(0xa0,buzzer_ctrl.hex);
    }
    if(step==20)
    {
        step=0;
            buzzer_ctrl.b.b4=0;
        Device_ctrl(0xa0,buzzer_ctrl.hex);
    }
}

    void main(void)
{
    start();
    Timer2Init();
    while(1)
    {
    }
}
void t2int() interrupt 12           //????
{
    count++;
    led_process();
    led_process2();
}



作者: 51FAN2020    时间: 2022-4-17 20:12
void Device_ctrl(u8 p2data,u8 p0data)
{
    P0=p0data;
    P2=p2data;
    P2=0;
}
这里去掉P2=0;试试
作者: yzwzfyz    时间: 2022-4-18 17:02
硬件图呢?
作者: W3s2c8    时间: 2022-4-18 19:32
51FAN2020 发表于 2022-4-17 20:12
void Device_ctrl(u8 p2data,u8 p0data)
{
    P0=p0data;

51单片机P2口不是控制锁存器的么,如果不设置关闭锁存器不会有影响么
作者: jshine    时间: 2022-4-19 11:29
继电器无法吸合一般是供电不足引起,也可能输入接反了
作者: laowang123222    时间: 2022-4-19 12:37
大概率是继电器信号线接反了,还有别接在单片机的P0口,然后看看继电器是高电平触发还是低电平触发




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1