zhangbo
2025-03-04 d9eeaa73e91eb757f8707e26f204f443fe956a3f
keil/sn74hc595.c
@@ -1,21 +1,21 @@
#include "sn74hc595.h"
void IO_control_init(void)
{
//SDA->SER
    io_open_drain_set(SER_PIN, 0);
    io_pin_mux_set(SER_PIN,IO_FUNC0);//把原先io SDA变为普通GPIO
    gpio_pin_set_dir(SER_PIN , GPIO_DIR_OUT, 0);//复用原先GPIO引脚为SER
    io_pull_set(SER_PIN , IO_PULL_DOWN, IO_PULL_UP_LEVEL4);
//SRCLK
    io_pin_mux_set(SRCLK_PIN,IO_FUNC0);
    gpio_pin_set_dir(SRCLK_PIN , GPIO_DIR_OUT, 0);
    io_pull_set(SRCLK_PIN , IO_PULL_DOWN, IO_PULL_UP_LEVEL4);
//RCLK
    io_pin_mux_set(RCLK_PIN,IO_FUNC0);
    gpio_pin_set_dir(RCLK_PIN , GPIO_DIR_OUT, 0);
    io_pull_set(RCLK_PIN , IO_PULL_DOWN, IO_PULL_UP_LEVEL4);
}
//void IO_control_init(void)
//{
////SDA->SER
//    io_open_drain_set(SER_PIN, 0);
//    io_pin_mux_set(SER_PIN,IO_FUNC0);//把原先io SDA变为普通GPIO
//    gpio_pin_set_dir(SER_PIN , GPIO_DIR_OUT, 0);//复用原先GPIO引脚为SER
//    io_pull_set(SER_PIN , IO_PULL_DOWN, IO_PULL_UP_LEVEL4);
////SRCLK
//    io_pin_mux_set(SRCLK_PIN,IO_FUNC0);
//    gpio_pin_set_dir(SRCLK_PIN , GPIO_DIR_OUT, 0);
//    io_pull_set(SRCLK_PIN , IO_PULL_DOWN, IO_PULL_UP_LEVEL4);
////RCLK
//    io_pin_mux_set(RCLK_PIN,IO_FUNC0);
//    gpio_pin_set_dir(RCLK_PIN , GPIO_DIR_OUT, 0);
//    io_pull_set(RCLK_PIN , IO_PULL_DOWN, IO_PULL_UP_LEVEL4);
//}
void IO_LED_control_change(uint8_t data)
{
@@ -25,12 +25,12 @@
            SER_1;
        else
            SER_0;
        SRCLK_1;//将数据放入移位寄存器
        SRCLK_0;
//        SRCLK_1;//将数据放入移位寄存器
//        SRCLK_0;
        data>>=1;
    }
    RCLK_1;//将数据存入存储器并输出
    RCLK_0;
//    RCLK_1;//将数据存入存储器并输出
//    RCLK_0;
}
//高电平开启power,低电平关闭power
void gps_air780_power_change(uint8_t gps_state,uint8_t air_state)