JZ_H150A.c 2.6 KB
#include "JZsdkLib.h"
#include "BaseConfig.h"
#include <pthread.h>


#include "JZsdk_Hal.h"
#include "Megaphone/Megaphone.h"
#include "AudioDeal/AudioDeal.h"
#include "JZsdk_haldata_deal/JZsdk_data_transmisson.h"

#include "WarnLight/WarnLight.h"

#include "IRCUT/ircut.h"
#include "Hal_Send/HalSend.h"

/******************
 * 
 * 
 *  引脚初始化
 * 
 * *****************/
T_JZsdkReturnCode JZ_H150A_Ircut_Init()
{
    //引脚初始化
    IrcutInfo ircut_info;
    ircut_info.Amplifiter_Pin.Enable = JZ_FLAGCODE_ON;
    ircut_info.Amplifiter_Pin.Port = JZ_IRC_PORT_PG;
    ircut_info.Amplifiter_Pin.index = 5;
    ircut_info.Amplifiter_Pin.Group = 0;
    ircut_info.Amplifiter_Pin.mode = JZ_IRC_PIN_MODE_OUT;

    Ircut_Init(ircut_info);
}

/********************
 * 
 * 
 *  基础参数设置
 * 
 * 
 * ****************/
static T_JZsdkReturnCode BaseParamSet(void)
{

    //设置警灯颜色

    //设置警灯模式

    //设置喊话器音量
    
    return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
}

/****************************
 * 
 *  T40 初始化
 *  
 *  mode psdk为psdk模式 uart为串口模式
 * 
 * ****************************/
T_JZsdkReturnCode JZ_H150A_init(int mode)
{        
    //引脚初始化
    JZ_H150A_Ircut_Init();

    if (mode == APP_ATTENTION)
    {
        return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
    }

    if (mode == APP_UART)
    {
        //串口设备1初始化
        s_JZ_SerialPortHalRegInfo SerialInfo = {
            .BitRate = UART_DEV1_BITRATE,
            .ConnectType = PORT_CONNECT_TYPE_AS_SUB
        };  

        JZsdk_HalPort_Init(UART_DEV_1, (void *)&SerialInfo);
    }

    if (mode == APP_PSDK)
    {
        //外接传输模块,用于与飞机的数据通信
        JZsdk_data_transmisson_Receive_Init();
    }
    
    //4G串口初始化
    s_JZ_SerialPortHalRegInfo SerialInfo3 = {
        .BitRate = COMM_4G_UART_BITRATE,
        .ConnectType = PORT_CONNECT_TYPE_AS_MAIN,
    };
    JZsdk_HalPort_Init(UART_4G, (void *)&SerialInfo3);  

    //音频库初始化
    AudioDeal_Init();

    //喊话器初始化
    Megaphone_Init();

    //警灯初始化
    T_JzWarnLightInfo WarnLightInfo = {
        .Attribute.Color1 = E_JZ_WARNLIGHT_COLOR_RED,
        .Attribute.Color2 = E_JZ_WARNLIGHT_COLOR_BLUE,
        .Attribute.mode = JZ_FLAGCODE_OFF,
        .Attribute.status = JZ_FLAGCODE_OFF,

        .ControlMode = JZ_MODULE_CONTROL_WAY_INDEPENDENT,
        .Device = UART_4G,
        .FrameSequence = 0x00,
        .mode_version = 1,
    };
    WarnLight_Init(WarnLightInfo);

    //基础参数设置
    BaseParamSet();

    JZSDK_LOG_INFO("H150A Init Success");

    return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
}