2025-12-06 13:49:01 +08:00
|
|
|
|
/*
|
|
|
|
|
|
* logic_file_function.c
|
|
|
|
|
|
*
|
|
|
|
|
|
* Created on: Nov 11, 2025
|
|
|
|
|
|
* Author: cc
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
#include "includes.h"
|
|
|
|
|
|
#include <stdint.h>
|
|
|
|
|
|
#include <string.h>
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : DevAction_CondData_Init
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD>ʼ<EFBFBD><EFBFBD>
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void DevAction_CondData_Init(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
DevActionGlobal.DevActionU64Cond.RcuLockState = Get_Authorize_Lock_Status();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Action_Coord_Get
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD>õ<EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
Dev_processing_addr :<EFBFBD>豸<EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD>ַ
|
|
|
|
|
|
BUS_Public :<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Action_Coord_Get(uint32_t Dev_processing_addr, Device_Public_Information_G *BUS_Public)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint16_t i;
|
|
|
|
|
|
uint32_t DevActionAddr;
|
|
|
|
|
|
|
|
|
|
|
|
for(i = 0; i < DevActionGlobal.DevActionNum; i++) //
|
|
|
|
|
|
{
|
|
|
|
|
|
DevActionAddr = SRAM_DevAction_List_Start_Addr + i*SRAM_DevAction_List_Size;
|
|
|
|
|
|
|
|
|
|
|
|
if(SRAM_Read_DW(DevActionAddr+sizeof(Dev_Action_Core)+sizeof(Dev_Action_Input)+sizeof(Dev_Action_Cond)+sizeof(Dev_Action_State)-4) == Dev_processing_addr)
|
|
|
|
|
|
{
|
|
|
|
|
|
BUS_Public->ActionCoord = i; //<2F><>ǰ<EFBFBD><C7B0>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD>һ<EFBFBD>µĶ<C2B5><C4B6><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Action_Coord_Get
|
|
|
|
|
|
* Description : <EFBFBD>豸<EFBFBD>±<EFBFBD><EFBFBD>õ<EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
Dev_processing_addr :<EFBFBD>豸<EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD>ַ
|
|
|
|
|
|
BUS_Public :<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Dev_Coord_Get(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint16_t i; //<2F><><EFBFBD><EFBFBD><EFBFBD>豸
|
|
|
|
|
|
uint32_t Dev_processing_addr;
|
|
|
|
|
|
Device_Public_Information_G BUS_Public; //<2F><><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
for(i = 0; i < DevActionGlobal.DevNum; i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dev_processing_addr = SRAM_Device_List_Start_Addr + i*SRAM_Device_List_Size;
|
|
|
|
|
|
SRAM_DMA_Read_Buff((uint8_t *)&BUS_Public, sizeof(Device_Public_Information_G), Dev_processing_addr); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><D0B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
BUS_Public.DevCoord = i; //<2F>õ<EFBFBD><C3B5>豸<EFBFBD>±<EFBFBD>
|
|
|
|
|
|
Action_Coord_Get(Dev_processing_addr, &BUS_Public); //<2F>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD>,<2C><>ַ:%08X<38><58><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>:%d<><64><EFBFBD>豸<EFBFBD><E8B1B8>ַ:%d<><64><EFBFBD>豸<EFBFBD>±<EFBFBD>:%d<><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>:%d", Dev_processing_addr, BUS_Public.type, BUS_Public.addr, BUS_Public.DevCoord, BUS_Public.ActionCoord);
|
|
|
|
|
|
switch(BUS_Public.type)
|
|
|
|
|
|
{
|
|
|
|
|
|
case Dev_Host_HVout: //<2F><><EFBFBD><EFBFBD>Ϊ<EFBFBD>̵<EFBFBD><CCB5><EFBFBD>
|
|
|
|
|
|
if((ENUM_RS485_DEV_PRO_01 == BUS_Public.Protocol)&&(0x00 == BUS_Public.addr)) //1<><31>Э<EFBFBD><D0AD> <20><>ַΪ0
|
|
|
|
|
|
{
|
|
|
|
|
|
// NOR_HVOUT_INFO DevHVoutInfo; //<2F>̵<EFBFBD><CCB5><EFBFBD><EFBFBD>ֲ<EFBFBD><D6B2><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
// SRAM_DMA_Read_Buff((uint8_t *)&DevHVoutInfo,sizeof(NOR_HVOUT_INFO),Dev_processing_addr+Dev_Privately);
|
|
|
|
|
|
//
|
|
|
|
|
|
// DevHVoutInfo.DevC5IOAddr = Find_AllDevice_List_Information(DEV_C5IO_Type, 0x00); //<2F>õ<EFBFBD>C5IO<49>洢<EFBFBD><E6B4A2>ַ
|
|
|
|
|
|
// Dbg_Println(DBG_BIT_DEVICE_STATUS_bit,"DevHVoutInfo.DevC5IOAddr:%08X", DevHVoutInfo.DevC5IOAddr);
|
|
|
|
|
|
// SRAM_DMA_Write_Buff((uint8_t *)&DevHVoutInfo,sizeof(NOR_HVOUT_INFO),Dev_processing_addr+Dev_Privately); //<2F>̵<EFBFBD><CCB5><EFBFBD>˽<EFBFBD><CBBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><D0B4>
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
/*<2A><><EFBFBD>±<EFBFBD><C2B1>浱ǰ<E6B5B1>豸*/
|
|
|
|
|
|
BUS_Public.check = 0x00;
|
|
|
|
|
|
SRAM_Write_Byte(BUS_Public.check, Dev_processing_addr+Dev_Check); //<2F><>У<EFBFBD><D0A3>
|
|
|
|
|
|
SRAM_Write_Word(BUS_Public.DevCoord, Dev_processing_addr+Dev_Coord); //<2F><><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD>豸<EFBFBD>±<EFBFBD>
|
|
|
|
|
|
SRAM_Write_Word(BUS_Public.ActionCoord, Dev_processing_addr+Dev_ActionCoord); //<2F><><EFBFBD><EFBFBD>д<EFBFBD>붯<EFBFBD><EBB6AF><EFBFBD>±<EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
BUS_Public.check = Log_CheckSum(Dev_processing_addr,BUS_Public.data_len); //<2F><><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3> DoubleData_CheckSum((uint8_t *)&BUS_Public, sizeof(Device_Public_Information_G), (uint8_t *)&Rs485SwiInfo, sizeof(RS485_SWI_INFO));
|
|
|
|
|
|
SRAM_Write_Byte(BUS_Public.check, Dev_processing_addr+Dev_Check); //<2F><><EFBFBD><EFBFBD>д<EFBFBD><D0B4>У<EFBFBD><D0A3>
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : DevAction_ReuseFlag_Get
|
|
|
|
|
|
* Description : Ϊ<EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD>־<EFBFBD>õ<EFBFBD>
|
|
|
|
|
|
* ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еĶ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><EFBFBD>ͻ<EFBFBD>·<EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD>ñ<EFBFBD>־<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɨ<EFBFBD>趯<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void DevAction_ReuseFlag_Get(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint16_t i = 0x00,j = 0x00,k = 0x00; //<2F><><EFBFBD>ڱ<EFBFBD><DAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD>
|
|
|
|
|
|
uint32_t list_addri = 0x00,list_addrj = 0x00;
|
|
|
|
|
|
DEV_ACTION_INFO DevActionInfoi; //<2F><>ǰ<EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
DEV_ACTION_INFO DevActionInfoj; //<2F><>ǰ<EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
|
|
|
|
|
|
for(i = 0; i < DevActionGlobal.DevActionNum; i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
list_addri = SRAM_DevAction_List_Start_Addr + i * SRAM_DevAction_List_Size;
|
|
|
|
|
|
SRAM_DMA_Read_Buff((uint8_t *)&DevActionInfoi, sizeof(DEV_ACTION_INFO), list_addri);
|
|
|
|
|
|
DevActionInfoi.DevActionState.DevAddrIn = Find_AllDevice_List_Information(DevActionInfoi.DevActionInput.DevType, DevActionInfoi.DevActionInput.DevAddr);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d<><64><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d<><64><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ:%d,<2C>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ:%04x",
|
|
|
|
|
|
DevActionInfoi.DevCtrlNum,
|
|
|
|
|
|
DevActionInfoi.DevActionInput.DevType,
|
|
|
|
|
|
DevActionInfoi.DevActionInput.DevAddr,
|
|
|
|
|
|
DevActionInfoi.DevActionState.DevAddrIn);
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Print_Buff(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݴ<EFBFBD>ӡ:",(uint8_t *)&DevActionInfoi,sizeof(Dev_Action_Core) + sizeof(Dev_Action_Input)+sizeof(Dev_Action_Cond)+sizeof(Dev_Action_State));
|
|
|
|
|
|
|
|
|
|
|
|
for(j = 0; j < DevActionGlobal.DevActionNum ; j++)
|
|
|
|
|
|
{
|
|
|
|
|
|
if( j != i )
|
|
|
|
|
|
{
|
|
|
|
|
|
list_addrj = SRAM_DevAction_List_Start_Addr + j * SRAM_DevAction_List_Size;
|
|
|
|
|
|
SRAM_DMA_Read_Buff((uint8_t *)&DevActionInfoj, sizeof(DEV_ACTION_INFO), list_addrj);
|
|
|
|
|
|
if( ( DevActionInfoi.DevActionCond.DevActionU64Cond.DevActionOutFlag == 0x00 )
|
|
|
|
|
|
&& ( DevActionInfoj.DevActionCond.DevActionU64Cond.DevActionOutFlag == 0x00 )
|
|
|
|
|
|
&& ( DevActionInfoi.DevActionInput.DevType == DevActionInfoj.DevActionInput.DevType )
|
|
|
|
|
|
&& ( DevActionInfoi.DevActionInput.DevAddr == DevActionInfoj.DevActionInput.DevAddr )
|
|
|
|
|
|
&& ( DevActionInfoi.DevActionInput.inAddr == DevActionInfoj.DevActionInput.inAddr )
|
|
|
|
|
|
&& ( DevActionInfoi.DevActionInput.inType == DevActionInfoj.DevActionInput.inType ) )
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ:%08X<38><58>֮ǰ<D6AE><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ:%08X", list_addri, list_addrj);
|
|
|
|
|
|
DevActionInfoi.DevActionState.SceneReuseFlag = 0x01;
|
|
|
|
|
|
if( (DevActionInfoi.DevActionInput.DevType == DEV_RS485_SWT)
|
|
|
|
|
|
&& (DevActionInfoi.DevActionCond.SceneExcute == ACTION_SCENE_MULTI)
|
|
|
|
|
|
&& (DevActionInfoj.DevActionInput.DevType == DEV_RS485_SWT)
|
|
|
|
|
|
&& (DevActionInfoj.DevActionCond.SceneExcute == ACTION_SCENE_MULTI) )
|
|
|
|
|
|
{
|
|
|
|
|
|
if( j > i )
|
|
|
|
|
|
{
|
|
|
|
|
|
if( (DevActionInfoi.DevActionState.MultiValidNo == 0x00)
|
|
|
|
|
|
&& (DevActionInfoi.DevActionState.MultiSetFlag == 0x00) )
|
|
|
|
|
|
{
|
|
|
|
|
|
DevActionInfoi.DevActionState.MultiSetFlag = 0x01;
|
|
|
|
|
|
DevActionInfoi.DevActionState.MultiNumber = 0x01;
|
|
|
|
|
|
DevActionInfoi.DevActionState.MultiValidNo++;
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d <20><>·:%d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>ַ:%08X <20><><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>:%d",
|
|
|
|
|
|
DevActionInfoi.DevActionInput.DevAddr,
|
|
|
|
|
|
DevActionInfoi.DevActionInput.inAddr,
|
|
|
|
|
|
list_addri,
|
|
|
|
|
|
DevActionInfoi.DevActionState.MultiNumber);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if(DevActionInfoj.DevActionState.MultiSetFlag == 0x00)
|
|
|
|
|
|
{
|
|
|
|
|
|
Device_Public_Information_G BUS_Public;
|
|
|
|
|
|
RS485_SWI_INFO Rs485SwiInfo;
|
|
|
|
|
|
uint32_t DevAdd = 0x00;
|
|
|
|
|
|
|
|
|
|
|
|
DevActionInfoi.DevActionState.MultiValidNo++;
|
|
|
|
|
|
DevActionInfoj.DevActionState.MultiNumber = DevActionInfoi.DevActionState.MultiValidNo;
|
|
|
|
|
|
DevActionInfoj.DevActionState.MultiSetFlag = 0x01;
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d <20><>·:%d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0>ַ:%08X <20><><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>:%d",
|
|
|
|
|
|
DevActionInfoj.DevActionInput.DevAddr,
|
|
|
|
|
|
DevActionInfoj.DevActionInput.inAddr,
|
|
|
|
|
|
list_addrj,
|
|
|
|
|
|
DevActionInfoj.DevActionState.MultiNumber);
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD>Ż<EFBFBD><C5BB><EFBFBD>
|
|
|
|
|
|
for(k = 0; k < SRAM_DevAction_List_Size; k++)
|
|
|
|
|
|
{
|
|
|
|
|
|
SRAM_Write_Byte(0x00,list_addrj+k);
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD>,<2C><>ַ:%08X", list_addrj);
|
|
|
|
|
|
DevActionInfoj.CheckVal = 0x00;
|
|
|
|
|
|
SRAM_DMA_Write_Buff((uint8_t *)&DevActionInfoj, DevActionInfoj.data_len, list_addrj);
|
|
|
|
|
|
DevActionInfoj.CheckVal = DevAction_CheckSum(list_addrj,DevActionInfoj.data_len);
|
|
|
|
|
|
SRAM_Write_Byte(DevActionInfoj.CheckVal, ( list_addrj + sizeof(Dev_Action_Core) + sizeof(Dev_Action_Input) + sizeof(Dev_Action_Cond) + sizeof(Dev_Action_State) ) );
|
|
|
|
|
|
|
|
|
|
|
|
DevAdd = Find_AllDevice_List_Information2(Active_Port, DevActionInfoi.DevActionInput.DevType, DevActionInfoi.DevActionInput.DevAddr);
|
|
|
|
|
|
if(DevAdd != 0x00)
|
|
|
|
|
|
{
|
|
|
|
|
|
SRAM_DMA_Read_Buff((uint8_t *)&BUS_Public,sizeof(Device_Public_Information_G),DevAdd);
|
|
|
|
|
|
SRAM_DMA_Read_Buff((uint8_t *)&Rs485SwiInfo,sizeof(RS485_SWI_INFO),DevAdd+Dev_Privately);
|
|
|
|
|
|
if(DevActionInfoi.DevActionState.MultiValidNo <= 127)
|
|
|
|
|
|
{
|
|
|
|
|
|
Rs485SwiInfo.MultiValidNo[DevActionInfoi.DevActionInput.inAddr] = DevActionInfoi.DevActionState.MultiValidNo;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
BUS_Public.check = 0x00;
|
|
|
|
|
|
BUS_Public.check = DoubleData_CheckSum((uint8_t *)&BUS_Public, sizeof(Device_Public_Information_G), (uint8_t *)&Rs485SwiInfo, sizeof(RS485_SWI_INFO));
|
|
|
|
|
|
SRAM_DMA_Write_Buff((uint8_t *)&BUS_Public, sizeof(Device_Public_Information_G),DevAdd);
|
|
|
|
|
|
SRAM_DMA_Write_Buff((uint8_t *)&Rs485SwiInfo,sizeof(RS485_SWI_INFO),DevAdd+Dev_Privately);
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"%d <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>·:%d <20><>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>:%d",
|
|
|
|
|
|
DevActionInfoi.DevActionInput.DevAddr,
|
|
|
|
|
|
DevActionInfoi.DevActionInput.inAddr,
|
|
|
|
|
|
Rs485SwiInfo.MultiValidNo[DevActionInfoi.DevActionInput.inAddr]);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}else {
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
for( k = 0; k < DevActionInfoi.DevCtrlNum; k++ )
|
|
|
|
|
|
{
|
|
|
|
|
|
if(DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevType == Dev_Host_Invalid) //Ψ<>г<EFBFBD><D0B3><EFBFBD>
|
|
|
|
|
|
{
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutAddr = DevAction_No_Get(DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevOutputLoop);
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>ַ:%08X <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ:%08X <20>±<EFBFBD>:%d <20><>·:%d",
|
|
|
|
|
|
list_addri,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutAddr,
|
|
|
|
|
|
i,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevOutputLoop);
|
|
|
|
|
|
}else {
|
|
|
|
|
|
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutAddr = Find_AllDevice_List_Information(
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevType,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevAddr);
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>չ<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d<><64><EFBFBD><EFBFBD>չ<EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ:%d,<2C><>չ<EFBFBD>豸<EFBFBD><E8B1B8>·<EFBFBD><C2B7>ַ:%d,<2C><>չ<EFBFBD>豸<EFBFBD>洢<EFBFBD><E6B4A2>ַ:%04x",
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevType,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevAddr,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevOutputLoop,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutAddr);
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if(DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevDlyValue.DelayCont != 0x00)
|
|
|
|
|
|
{
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevDlyAddr = Add_DevDly_To_List(
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevType,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutAddr,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevOutputLoop);
|
|
|
|
|
|
|
|
|
|
|
|
if(Dev_Host_Invalid != DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevType)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD>,<2C><>ַ:%08X <20>±<EFBFBD>:%d,<2C><>ʱ<EFBFBD>ڵ<EFBFBD>:%08X <20><><EFBFBD>漰<EFBFBD><E6BCB0><EFBFBD><EFBFBD>ʱ<EFBFBD>豸<EFBFBD><E8B1B8>ַ:%08X, <20><>·:%d",
|
|
|
|
|
|
list_addri,
|
|
|
|
|
|
i,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevDlyAddr,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutAddr,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevOutputLoop);
|
|
|
|
|
|
}else{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD>,<2C><>ַ:%08X <20>±<EFBFBD>:%d,<2C><>ʱ<EFBFBD>ڵ<EFBFBD>:%08X <20><><EFBFBD>漰<EFBFBD><E6BCB0><EFBFBD><EFBFBD>ʱ<EFBFBD>豸<EFBFBD><E8B1B8>ַ:%08X, <20><>·:%d",
|
|
|
|
|
|
list_addri,
|
|
|
|
|
|
i,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevDlyAddr,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutAddr,
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevActionOutCfg.DevOutputLoop);
|
|
|
|
|
|
}
|
|
|
|
|
|
}else {
|
|
|
|
|
|
DevActionInfoi.DevActionOutput[k].DevDlyAddr = 0x00; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD>豸δ<E8B1B8><CEB4>ʱ<EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ڵ㡣<DAB5><E3A1A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><C2B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٸ<EFBFBD>ֵ<EFBFBD><D6B5>ʱ<EFBFBD>豸<EFBFBD><E8B1B8>Ϣ
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
for(k = 0; k < SRAM_DevAction_List_Size; k++)
|
|
|
|
|
|
{
|
|
|
|
|
|
SRAM_Write_Byte(0x00,list_addri+k);
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD>־<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD>,<2C><>ַ:%08X", list_addri);
|
|
|
|
|
|
DevActionInfoi.CheckVal = 0x00;
|
|
|
|
|
|
SRAM_DMA_Write_Buff((uint8_t *)&DevActionInfoi, DevActionInfoi.data_len, list_addri); //д<><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
DevActionInfoi.CheckVal = DevAction_CheckSum(list_addri,DevActionInfoi.data_len); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3>
|
|
|
|
|
|
|
|
|
|
|
|
SRAM_Write_Byte(DevActionInfoi.CheckVal,(list_addri + sizeof(Dev_Action_Core) + sizeof(Dev_Action_Input) + sizeof(Dev_Action_Cond) + sizeof(Dev_Action_State)) ); //У<><D0A3>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>д<EFBFBD><D0B4>
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Expand_Scene_Get
|
|
|
|
|
|
* Description : Ϊ<EFBFBD><EFBFBD><EFBFBD>Ƴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ַ<EFBFBD>õ<EFBFBD>
|
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>и<EFBFBD>ֵ
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Expand_Scene_Get(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint8_t KeepFlag = 0,CtrlWay = 0;
|
|
|
|
|
|
uint16_t i = 0,j = 0;
|
|
|
|
|
|
uint32_t list_addr = 0;
|
|
|
|
|
|
DEV_ACTION_INFO DevActionInfo;
|
|
|
|
|
|
|
|
|
|
|
|
for(i = 0; i < DevActionGlobal.DevActionNum; i++ )
|
|
|
|
|
|
{
|
|
|
|
|
|
KeepFlag = 0x00;
|
|
|
|
|
|
list_addr = SRAM_DevAction_List_Start_Addr + i*SRAM_DevAction_List_Size;
|
|
|
|
|
|
SRAM_DMA_Read_Buff((uint8_t *)&DevActionInfo, sizeof(DEV_ACTION_INFO), list_addr);
|
|
|
|
|
|
|
|
|
|
|
|
for(j = 0; j < DevActionInfo.DevCtrlNum; j++)
|
|
|
|
|
|
{
|
|
|
|
|
|
if( DevActionInfo.DevActionOutput[j].DevActionOutCfg.DevType == Dev_Host_Invalid )
|
|
|
|
|
|
{
|
|
|
|
|
|
DevActionInfo.DevActionOutput[j].DevActionOutAddr = DevAction_No_Get(DevActionInfo.DevActionOutput[j].DevActionOutCfg.DevOutputLoop);
|
|
|
|
|
|
if( DevActionInfo.DevActionOutput[j].DevActionOutAddr != 0x00 )
|
|
|
|
|
|
{
|
|
|
|
|
|
KeepFlag = 0x01;
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD>,<2C><>ַ:%08X <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ:%08X <20>±<EFBFBD>:%d <20><>·:%d",
|
|
|
|
|
|
list_addr,DevActionInfo.DevActionOutput[j].DevActionOutAddr,
|
|
|
|
|
|
i,
|
|
|
|
|
|
DevActionInfo.DevActionOutput[j].DevActionOutCfg.DevOutputLoop);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(DevActionInfo.DevActionOutput[i].DevActionOutCfg.DevType)
|
|
|
|
|
|
{
|
|
|
|
|
|
case DEV_RS485_SWT:
|
|
|
|
|
|
case Dev_Host_LVoutput:
|
|
|
|
|
|
CtrlWay = DevActionInfo.DevActionOutput[i].DevActionOutCfg.DevCtrlState & 0x00ff; //ִ<>з<EFBFBD>ʽ
|
|
|
|
|
|
switch(CtrlWay)
|
|
|
|
|
|
{
|
|
|
|
|
|
case DEV_CTRLWAY_RELATESCENE: //<2F><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>
|
|
|
|
|
|
case CFG_Dev_CtrlWay_Is_RelateBlink: //<2F><>Ӧ<EFBFBD><D3A6>˸
|
|
|
|
|
|
DevActionInfo.DevActionState.SceneTypeFlag = 0x01;
|
|
|
|
|
|
KeepFlag = 0x01; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>±<EFBFBD><C2B1><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_NodeCurtain:
|
|
|
|
|
|
if(DEV_CTRLWAY_RELATESCENE == (DevActionInfo.DevActionOutput[i].DevActionOutCfg.DevCtrlState & 0x00ff))
|
|
|
|
|
|
{
|
|
|
|
|
|
KeepFlag = 0x01; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>±<EFBFBD><C2B1><EFBFBD>
|
|
|
|
|
|
DevActionInfo.DevActionState.SceneTypeFlag = 0x01;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(DevActionInfo.DevActionCond.SceneExcute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case ACTION_SCENE_TWO:
|
|
|
|
|
|
case ACTION_SCENE_SLEEP:
|
|
|
|
|
|
case ACTION_SCENE_MAINSWITCH:
|
|
|
|
|
|
case ACTION_SCENE_HELPSLEEP:
|
|
|
|
|
|
KeepFlag = 0x01; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>±<EFBFBD><C2B1><EFBFBD>
|
|
|
|
|
|
DevActionInfo.DevActionState.SceneTypeFlag = 0x01;
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if( KeepFlag == 0x01 )
|
|
|
|
|
|
{
|
|
|
|
|
|
for(uint16_t k = 0;k<SRAM_DevAction_List_Size;k++)
|
|
|
|
|
|
{
|
|
|
|
|
|
SRAM_Write_Byte(0x00,list_addr+k);
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD>,<2C><>ַ:%08X", list_addr);
|
|
|
|
|
|
DevActionInfo.CheckVal = 0x00;
|
|
|
|
|
|
SRAM_DMA_Write_Buff((uint8_t *)&DevActionInfo, DevActionInfo.data_len, list_addr); //д<><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
DevActionInfo.CheckVal = DevAction_CheckSum(list_addr,DevActionInfo.data_len); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3>
|
|
|
|
|
|
|
|
|
|
|
|
SRAM_Write_Byte(DevActionInfo.CheckVal,(list_addr + sizeof(Dev_Action_Core) + sizeof(Dev_Action_Input) + sizeof(Dev_Action_Cond) + sizeof(Dev_Action_State)) ); //У<><D0A3>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>д<EFBFBD><D0B4>
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Expand_DevDly_Get
|
|
|
|
|
|
* Description : <EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD>ʼ<EFBFBD><EFBFBD>
|
|
|
|
|
|
* Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ڵ㸳ֵ<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ij<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ַ<EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD> Ϊ<EFBFBD><EFBFBD><EFBFBD>Ƴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ַ<EFBFBD>õ<EFBFBD>
|
|
|
|
|
|
*******************************************************************************/
|
2025-12-10 14:06:45 +08:00
|
|
|
|
__attribute__((section(".non_0_wait"))) void Expand_DevDly_Get(void)
|
2025-12-06 13:49:01 +08:00
|
|
|
|
{
|
|
|
|
|
|
uint8_t KeepFlag = 0x00;
|
|
|
|
|
|
uint16_t i = 0,j = 0;
|
|
|
|
|
|
uint32_t list_addr = 0;
|
|
|
|
|
|
DEV_ACTION_INFO DevActionInfo;
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еĶ<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>ַ:%08X",DevActionGlobal.DevActionNum, SRAM_DevAction_List_Start_Addr);
|
|
|
|
|
|
|
|
|
|
|
|
for(i = 0; i < DevActionGlobal.DevActionNum; i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
KeepFlag = 0x00;
|
|
|
|
|
|
list_addr = SRAM_DevAction_List_Start_Addr + i*SRAM_DevAction_List_Size;
|
|
|
|
|
|
SRAM_DMA_Read_Buff((uint8_t *)&DevActionInfo, sizeof(DEV_ACTION_INFO), list_addr);
|
|
|
|
|
|
for(j = 0; j < DevActionInfo.DevCtrlNum; j++)
|
|
|
|
|
|
{
|
|
|
|
|
|
if( DevActionInfo.DevActionOutput[j].DevActionOutCfg.DevDlyValue.DelayCont == 0x00 )
|
|
|
|
|
|
{
|
|
|
|
|
|
DevActionInfo.DevActionOutput[j].DevDlyAddr = DevDlyAddr_Get(DevActionInfo.DevActionOutput[j].DevActionOutAddr, DevActionInfo.DevActionOutput[j].DevActionOutCfg.DevOutputLoop);
|
|
|
|
|
|
if(DevActionInfo.DevActionOutput[j].DevDlyAddr != 0x00)
|
|
|
|
|
|
{
|
|
|
|
|
|
KeepFlag = 0x01;
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD>,<2C><>ַ:%08X <20>±<EFBFBD>:%d,<2C><>ʱ<EFBFBD>ڵ<EFBFBD>:%08X <20><><EFBFBD>漰<EFBFBD><E6BCB0><EFBFBD><EFBFBD>ʱ<EFBFBD>豸<EFBFBD><E8B1B8>ַ:%08X, <20><>·:%d",
|
|
|
|
|
|
list_addr,
|
|
|
|
|
|
i,
|
|
|
|
|
|
DevActionInfo.DevActionOutput[j].DevDlyAddr,
|
|
|
|
|
|
DevActionInfo.DevActionOutput[j].DevActionOutAddr,
|
|
|
|
|
|
DevActionInfo.DevActionOutput[j].DevActionOutCfg.DevOutputLoop);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if(KeepFlag == 0x01)
|
|
|
|
|
|
{
|
|
|
|
|
|
for(uint16_t k = 0;k<SRAM_DevAction_List_Size;k++)
|
|
|
|
|
|
{
|
|
|
|
|
|
SRAM_Write_Byte(0x00,list_addr+k);
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD><EFBFBD><EFBFBD>,<2C><>ַ:%08X", list_addr);
|
|
|
|
|
|
DevActionInfo.CheckVal = 0x00; //У<><D0A3><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD>д<EFBFBD><D0B4>
|
|
|
|
|
|
SRAM_DMA_Write_Buff((uint8_t *)&DevActionInfo, DevActionInfo.data_len, list_addr); //д<><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
DevActionInfo.CheckVal = DevAction_CheckSum(list_addr,DevActionInfo.data_len); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3>
|
|
|
|
|
|
|
|
|
|
|
|
SRAM_Write_Byte(DevActionInfo.CheckVal,(list_addr + sizeof(Dev_Action_Core) + sizeof(Dev_Action_Input) + sizeof(Dev_Action_Cond) + sizeof(Dev_Action_State)));
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : BLV_DevAction_AllData_Init
|
|
|
|
|
|
* Description : <EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD>ʼ<EFBFBD><EFBFBD>
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void BLV_DevAction_AllData_Init(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
memset((void *)&BUS485_Info,0,sizeof(BLV_BUS_Manage_G));
|
|
|
|
|
|
memset(&Poll485_Info,0,sizeof(BLV_POLL_Manage_G));
|
|
|
|
|
|
memset((void *)&Act485_Info,0,sizeof(BLV_ACTIVE_Manage_G));
|
|
|
|
|
|
memset((void *)&NorDevInfoGlobal,0,sizeof(BLV_NORDEV_Manage_G));
|
|
|
|
|
|
memset((void *)&DevActionGlobal,0,sizeof(BLV_DevAction_Manage_G)); //ȫ<>ֲ<EFBFBD><D6B2><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>0
|
|
|
|
|
|
|
|
|
|
|
|
//SRAM_PowerOn_Restore_ParaInfo();
|
|
|
|
|
|
|
|
|
|
|
|
DevAction_CondData_Init(); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD>ʼ<EFBFBD><CABC>
|
|
|
|
|
|
|
|
|
|
|
|
LOGIC_FILE_Check();
|
|
|
|
|
|
|
|
|
|
|
|
DevAction_ReuseFlag_Get(); //<2F><><EFBFBD>ñ<EFBFBD>־<EFBFBD><D6BE>λ <20><><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD>µõ<C2B5> <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>չ<EFBFBD>豸 <20><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
Expand_DevDly_Get(); /*Ϊ<><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD>չ<EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ڵ㸳ֵ*/
|
|
|
|
|
|
|
|
|
|
|
|
Dev_Coord_Get(); //<2F>õ<EFBFBD><C3B5>豸<EFBFBD>±<EFBFBD><C2B1>Ͷ<EFBFBD><CDB6><EFBFBD><EFBFBD>±<EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
DevActionGlobal.DevLockAddr = Find_AllDevice_List_Information(DEV_RS485_WxLock, DevActionGlobal.Lock485Addr); //
|
|
|
|
|
|
DevActionGlobal.pc_addr = Find_Device_List_Information(DEV_PCTEST_TYPE,DEV_PCTEST_Addr);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Flash_read_Byte
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ⲿSPI Flash<EFBFBD>ж<EFBFBD>ȡһ<EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) uint8_t Flash_read_Byte(uint32_t addr)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint8_t data[2] = {0};
|
|
|
|
|
|
Flash_Read(data,1,addr);
|
|
|
|
|
|
return data[0];
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Data_Uint8_Convert_To_Uint32
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD>uint8_t <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>Ϊuint32_t
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) uint32_t Data_Uint8_Convert_To_Uint32(uint8_t *data)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t rev_data = 0;
|
|
|
|
|
|
|
|
|
|
|
|
rev_data = data[3];
|
|
|
|
|
|
rev_data <<= 8;
|
|
|
|
|
|
rev_data |= data[2];
|
|
|
|
|
|
rev_data <<= 8;
|
|
|
|
|
|
rev_data |= data[1];
|
|
|
|
|
|
rev_data <<= 8;
|
|
|
|
|
|
rev_data |= data[0];
|
|
|
|
|
|
|
|
|
|
|
|
return rev_data;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Data_Uint8_Convert_To_Uint16
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD>uint8_t <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>Ϊuint16_t
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) uint16_t Data_Uint8_Convert_To_Uint16(uint8_t *data)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint16_t rev_data = 0;
|
|
|
|
|
|
|
|
|
|
|
|
rev_data = data[1];
|
|
|
|
|
|
rev_data<<=8;
|
|
|
|
|
|
rev_data |= data[0];
|
|
|
|
|
|
|
|
|
|
|
|
return rev_data;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_Info_DeviceType_To_String
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>Ϊ<EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
char device_temp_string[32] = {0};
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) char *Logic_Info_DeviceType_To_String(uint8_t type)
|
|
|
|
|
|
{
|
|
|
|
|
|
memset(device_temp_string,0,sizeof(device_temp_string));
|
|
|
|
|
|
#if LOGIC_DEBUG_INFO_EN
|
|
|
|
|
|
switch(type)
|
|
|
|
|
|
{
|
|
|
|
|
|
case Dev_Host_Invalid:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_HVout:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"ǿ<EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD>",sizeof("ǿ<EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_LVinput:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_LVoutput:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_Service:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_NodeCurtain:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD>ɽڵ㴰<EFBFBD><EFBFBD>",sizeof("<EFBFBD>ɽڵ㴰<EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_SWT:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_TEMP:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD>յ<EFBFBD>",sizeof("<EFBFBD>յ<EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_INFRARED:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_AirDetect:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_CARD:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD>忨ȡ<EFBFBD><EFBFBD>",sizeof("<EFBFBD>忨ȡ<EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_HEATER:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD>ů",sizeof("<EFBFBD><EFBFBD>ů"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_RCU_NET:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"RCU<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("RCU<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_CURTAIN:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RELAY:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_IR_SEND:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD>ⷢ<EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD>ⷢ<EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_DIMMING:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_TRAIC:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD>ɿع<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD>ɿع<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_STRIP:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD>ƴ<EFBFBD>",sizeof("<EFBFBD>ƴ<EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_CoreCtrl:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD>п<EFBFBD>",sizeof("<EFBFBD>п<EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_WxLock:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_MUSIC:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_NET_ROOMSTATE:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD>̬<EFBFBD>·<EFBFBD>",sizeof("<EFBFBD><EFBFBD>̬<EFBFBD>·<EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_PWMLight:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_PWM:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"485PWM<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("485PWM<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_PB_LED:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RCU_POWER:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"RCU<EFBFBD><EFBFBD>Դ",sizeof("RCU<EFBFBD><EFBFBD>Դ"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_A9_IO_SWT:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"A9IO<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("A9IO<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_A9_IO_EXP:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"A9IO<EFBFBD><EFBFBD>չ",sizeof("A9IO<EFBFBD><EFBFBD>չ"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_A9_IO_POWER:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"A9IO<EFBFBD><EFBFBD>Դ",sizeof("A9IO<EFBFBD><EFBFBD>Դ"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RFGatewayCycle:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RFGatewayHost:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RFGatewayDoor:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_AirReveal:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RFGatewayRelayPir:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_TimeCtrl:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"ʱ<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD>",sizeof("ʱ<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Rs458_MonitorCtrl:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Rs458_RotaryCtrl:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_BUS_C5IO:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"BLV_CSIO",sizeof("BLV_CSIO"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
#endif
|
|
|
|
|
|
return device_temp_string;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_Info_DevicePort_To_String
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<EFBFBD>豸<EFBFBD>˿<EFBFBD>ת<EFBFBD><EFBFBD>Ϊ<EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) char *Logic_Info_DevicePort_To_String(uint8_t type)
|
|
|
|
|
|
{
|
|
|
|
|
|
memset(device_temp_string,0,sizeof(device_temp_string));
|
|
|
|
|
|
#if LOGIC_DEBUG_INFO_EN
|
|
|
|
|
|
switch(type)
|
|
|
|
|
|
{
|
|
|
|
|
|
case Polling_Port:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"Polling_Port",sizeof("Polling_Port"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Active_Port:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"Active_Port",sizeof("Active_Port"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Bus_port:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"Bus_port",sizeof("Bus_port"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
#endif
|
|
|
|
|
|
return device_temp_string;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_Info_DeviceAction_Condition_To_String
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>Ϊ<EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_Info_DeviceAction_Condition_To_String(uint8_t *data)
|
|
|
|
|
|
{
|
|
|
|
|
|
LOGIC_ACTIVE_CONDITION_G temp_condition;
|
|
|
|
|
|
memset(&temp_condition,0,sizeof(LOGIC_ACTIVE_CONDITION_G));
|
|
|
|
|
|
|
|
|
|
|
|
memcpy((char *)&temp_condition,(const char *)data,sizeof(LOGIC_ACTIVE_CONDITION_G));
|
|
|
|
|
|
#if LOGIC_DEBUG_INFO_EN
|
|
|
|
|
|
switch(temp_condition.DevActionOutFlag) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD> - Error:%d",temp_condition.DevActionOutFlag);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.RoomState) //<2F><>̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>̬ - <20><><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F>˷<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>̬ - <20>˷<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03: //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>̬ - <20><><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x04: //<2F>շ<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>̬ - <20>շ<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>̬ - Error:%d",temp_condition.RoomState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.EleCtrlFlag) //ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><>ִ<EFBFBD><D6B4>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><>ִ<EFBFBD><D6B4>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //ִ<><D6B4>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - ִ<><D6B4>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - Error:%d",temp_condition.EleCtrlFlag);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.EleState) //ȡ<><C8A1>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ȡ<EFBFBD><EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ȡ<EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ȡ<EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ȡ<EFBFBD><EFBFBD>״̬ - Error:%d",temp_condition.EleState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.DndState) //<2F><><EFBFBD><EFBFBD>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - Error:%d",temp_condition.DndState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.CleanState) //<2F><><EFBFBD><EFBFBD>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - Error:%d",temp_condition.CleanState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.CallState) //<2F><><EFBFBD><EFBFBD>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - Error:%d",temp_condition.CallState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.WashState) //ϴ<><CFB4>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ϴ<EFBFBD><EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ϴ<EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ϴ<EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ϴ<EFBFBD><EFBFBD>״̬ - Error:%d",temp_condition.WashState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.CheckOutState) //<2F>˷<EFBFBD>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>˷<EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>˷<EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>˷<EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>˷<EFBFBD>״̬ - Error:%d",temp_condition.CheckOutState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.WaitState) //<2F>Ժ<EFBFBD>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Ժ<EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Ժ<EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Ժ<EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Ժ<EFBFBD>״̬ - Error:%d",temp_condition.WaitState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.SosState) //SOS״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"SOS״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"SOS״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"SOS״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"SOS״̬ - Error:%d",temp_condition.SosState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.RentState) //ԤԼ<D4A4><D4BC><EFBFBD><EFBFBD>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ԤԼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ԤԼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ԤԼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ԤԼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - Error:%d",temp_condition.RentState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.LockState) //<2F><><EFBFBD><EFBFBD>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - Error:%d",temp_condition.LockState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.LuggageState) //<2F><><EFBFBD><EFBFBD>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - Error:%d",temp_condition.LuggageState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.StrongState) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - Error:%d",temp_condition.StrongState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.DoorState) //<2F>Ŵ<EFBFBD>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Ŵ<EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Ŵ<EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Ŵ<EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Ŵ<EFBFBD>״̬ - Error:%d",temp_condition.DoorState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.WarningState) //<2F><>ʾ<EFBFBD><CABE>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>״̬ - Error:%d",temp_condition.WarningState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.BacklightState) //<2F><><EFBFBD><EFBFBD>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - Error:%d",temp_condition.BacklightState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.SeasonState) //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x04: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> - Error:%d",temp_condition.SeasonState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.TimeState) //ʱ<><CAB1>
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ʱ<EFBFBD><EFBFBD> - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //ȫ<><C8AB>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ʱ<EFBFBD><EFBFBD> - ȫ<><C8AB>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ʱ<EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03: //<2F><>ҹ
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ʱ<EFBFBD><EFBFBD> - <20><>ҹ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ʱ<EFBFBD><EFBFBD> - Error:%d",temp_condition.TimeState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.NeightState) //<2F><>ҹ״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ҹ״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ҹ״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ҹ״̬ - <20><>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ҹ״̬ - Error:%d",temp_condition.NeightState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_condition.RcuLockState) //<2F><><EFBFBD><EFBFBD>״̬
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><><EFBFBD>ж<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - <20><><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬ - Error:%d",temp_condition.RcuLockState);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
#endif
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_FrameType_LogicInfo_TempProcessing
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> - <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ <EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_FrameType_LogicInfo_TempProcessing(uint8_t *data,uint16_t len)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint16_t temp_len = 0;
|
|
|
|
|
|
uint32_t temp_data = 0;
|
|
|
|
|
|
char temp_str[36];
|
|
|
|
|
|
memset(temp_str,0,sizeof(temp_str));
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"%s",__func__);
|
|
|
|
|
|
|
|
|
|
|
|
// #if LOGIC_DEBUG_INFO_EN
|
|
|
|
|
|
|
|
|
|
|
|
strncpy(temp_str,(const char *)&data[temp_len],32);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%s",temp_str);
|
|
|
|
|
|
temp_len += 32;
|
|
|
|
|
|
|
|
|
|
|
|
memcpy(temp_str,&data[temp_len],4);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>汾:%d-%d-%d-%d",temp_str[0],temp_str[1],temp_str[2],temp_str[3]);
|
|
|
|
|
|
temp_len += 4;
|
|
|
|
|
|
|
|
|
|
|
|
strncpy(temp_str,(const char *)&data[temp_len],7);
|
|
|
|
|
|
temp_data = temp_str[0]*256+temp_str[1];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>: %04d-%02d-%02d %02d:%02d:%02d \r\n",temp_data,temp_str[2],temp_str[3],temp_str[4],temp_str[5],temp_str[6]);
|
|
|
|
|
|
temp_len += 7;
|
|
|
|
|
|
|
|
|
|
|
|
strncpy(temp_str,(const char *)&data[temp_len],32);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%s",temp_str);
|
|
|
|
|
|
temp_len += 32;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint32(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_data);
|
|
|
|
|
|
temp_len += 4;
|
|
|
|
|
|
|
|
|
|
|
|
strncpy(temp_str,(const char *)&data[temp_len],32);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%s",temp_str);
|
|
|
|
|
|
temp_len += 32;
|
|
|
|
|
|
|
|
|
|
|
|
strncpy(temp_str,(const char *)&data[temp_len],32);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ͱ<EFBFBD><EFBFBD><EFBFBD>:%s",temp_str);
|
|
|
|
|
|
temp_len += 32;
|
|
|
|
|
|
|
|
|
|
|
|
strncpy(temp_str,(const char *)&data[temp_len],3);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݰ汾:%d-%d-%d",temp_str[0],temp_str[1],temp_str[2]);
|
|
|
|
|
|
temp_len += 3;
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - 64Byte
|
|
|
|
|
|
// strncpy(temp_str,(const char *)&data[temp_len],3);
|
|
|
|
|
|
// Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><EFBFBD><DFBC><EFBFBD><EFBFBD>ݰ汾:%d-%d-%d",temp_str[0],temp_str[1],temp_str[2]);
|
|
|
|
|
|
temp_len += 64;
|
|
|
|
|
|
|
|
|
|
|
|
//ʱ<><CAB1>ƫ<EFBFBD><C6AB><EFBFBD><EFBFBD> - 2Byte
|
|
|
|
|
|
g_time_info.timezone = data[temp_len+1];
|
|
|
|
|
|
g_time_info.timezone <<= 8;
|
|
|
|
|
|
g_time_info.timezone |= data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ʱ<EFBFBD><EFBFBD>ƫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",g_time_info.timezone);
|
|
|
|
|
|
|
|
|
|
|
|
// #endif
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Read_LogicFile_Information
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>Ϣ -
|
|
|
|
|
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Flash<EFBFBD>洢<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ - <EFBFBD>о<EFBFBD><EFBFBD>У<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD>û<EFBFBD><EFBFBD>
|
|
|
|
|
|
<EFBFBD>ر<EFBFBD>ע<EFBFBD><EFBFBD>ݽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>buff<EFBFBD><EFBFBD><EFBFBD>鹻<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᵼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
select :
|
|
|
|
|
|
0x00:<EFBFBD><EFBFBD>ѯȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
0x01:<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - 32Byte
|
|
|
|
|
|
0x02:<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>汾 - 4Byte
|
|
|
|
|
|
0x03:<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD> - 7Byte
|
|
|
|
|
|
0x04:<EFBFBD><EFBFBD>ѯ<EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - 32Byte
|
|
|
|
|
|
0x05:<EFBFBD><EFBFBD>ѯ<EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - 4Byte
|
|
|
|
|
|
0x06:<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> - 32Byte
|
|
|
|
|
|
0x07:<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD>ͱ<EFBFBD><EFBFBD><EFBFBD> - 32Byte
|
|
|
|
|
|
0x08:<EFBFBD><EFBFBD>ѯ<EFBFBD>汾<EFBFBD><EFBFBD> - 3Byte
|
|
|
|
|
|
buff <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>ַ
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
0x00<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD>ɹ<EFBFBD>
|
|
|
|
|
|
0x01<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯʧ<EFBFBD><EFBFBD>
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
#define LogicFile_InfoDetails_Len 0x92
|
|
|
|
|
|
#define LogicFile_InfoDetails_Author_Offset 0x0000 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - 32Byte
|
|
|
|
|
|
#define LogicFile_Infodetails_SWVersion_Offset 0x0020 //<2F><><EFBFBD><EFBFBD><EFBFBD>汾 - 4Byte
|
|
|
|
|
|
#define LogicFile_Infodetails_ReleaseDate_Offset 0x0026 //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> - 7Byte
|
|
|
|
|
|
#define LogicFile_Infodetails_HotelName_Offset 0x002B //<2F>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD> - 32Byte
|
|
|
|
|
|
#define LogicFile_Infodetails_HotelCode_Offset 0x004B //<2F>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD> - 4Byte
|
|
|
|
|
|
#define LogicFile_Infodetails_HotelGroupName_Offset 0x004F //<2F><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> - 32Byte
|
|
|
|
|
|
#define LogicFile_Infodetails_HomeName_Offset 0x006F //<2F><><EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD> - 32Byte
|
|
|
|
|
|
#define LogicFile_Infodetails_Version_Offset 0x008F //<2F>汾<EFBFBD><E6B1BE> - 3Byte
|
|
|
|
|
|
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) uint8_t Read_LogicFile_Information(uint8_t select,uint8_t *buff)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t temp = 0,file_len = 0;
|
|
|
|
|
|
uint8_t md5[16];
|
|
|
|
|
|
uint8_t file_info[30];
|
|
|
|
|
|
uint8_t rev= 0x01;
|
|
|
|
|
|
memset(file_info,0,sizeof(file_info));
|
|
|
|
|
|
memset(md5,0,sizeof(md5));
|
|
|
|
|
|
|
|
|
|
|
|
/*1<><31><EFBFBD>ȶ<EFBFBD>ȡ<EFBFBD><EFBFBD><DFBC>ļ<EFBFBD><C4BC><EFBFBD>־λ*/
|
|
|
|
|
|
Flash_Read(file_info,24,SPIFLASH_LOGIC_DataFlag_ADDRESS);
|
|
|
|
|
|
|
|
|
|
|
|
temp = file_info[3];
|
|
|
|
|
|
temp <<= 8;
|
|
|
|
|
|
temp |= file_info[2];
|
|
|
|
|
|
temp <<= 8;
|
|
|
|
|
|
temp |= file_info[1];
|
|
|
|
|
|
temp <<= 8;
|
|
|
|
|
|
temp |= file_info[0];
|
|
|
|
|
|
|
|
|
|
|
|
if(temp != LOGIC_DataFlag)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>־λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%08X",temp);
|
|
|
|
|
|
return 0x01;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
file_len = file_info[7];
|
|
|
|
|
|
file_len <<= 8;
|
|
|
|
|
|
file_len |= file_info[6];
|
|
|
|
|
|
file_len <<= 8;
|
|
|
|
|
|
file_len |= file_info[5];
|
|
|
|
|
|
file_len <<= 8;
|
|
|
|
|
|
file_len |= file_info[4];
|
|
|
|
|
|
|
|
|
|
|
|
if((file_len != 0x00) &&(file_len > 0x70000))
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><EFBFBD><EFBFBD>:%08X",file_len);
|
|
|
|
|
|
return 0x01;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
MD5Digest_FLASH(SPIFLASH_LOGIC_DataStart_ADDRESS, file_len,(char *)&md5[0]);
|
|
|
|
|
|
|
|
|
|
|
|
if(0==strncmp((const char *)md5,(const char *)&file_info[8],16))
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"MD5У<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!");
|
|
|
|
|
|
}else {
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"MD5У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Len:%08X",file_len);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>Md5<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X%02X,%02X,%02X,%02X,%02X,%02X",md5[0],md5[1],md5[2],md5[3],md5[4],md5[5],md5[6],md5[7],md5[8],md5[9],md5[10],md5[11],md5[12],md5[13],md5[14],md5[15]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"File Md5:%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X",\
|
|
|
|
|
|
file_info[8],file_info[9],\
|
|
|
|
|
|
file_info[10],file_info[11],\
|
|
|
|
|
|
file_info[12],file_info[13],\
|
|
|
|
|
|
file_info[14],file_info[15],\
|
|
|
|
|
|
file_info[16],file_info[17],\
|
|
|
|
|
|
file_info[18],file_info[19],\
|
|
|
|
|
|
file_info[21],file_info[21],\
|
|
|
|
|
|
file_info[22],file_info[23]);
|
|
|
|
|
|
|
|
|
|
|
|
/*<2A><><EFBFBD><EFBFBD>Flash<73>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>־λ<D6BE><CEBB>MD5ֵ*/
|
|
|
|
|
|
memset(file_info,0,sizeof(file_info));
|
|
|
|
|
|
Flash_Write(file_info,24,SPIFLASH_LOGIC_DataFlag_ADDRESS);
|
|
|
|
|
|
|
|
|
|
|
|
return 0x01;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if((Flash_read_Byte(SPIFLASH_LOGIC_DataStart_ADDRESS+Logic_D_Hear_L) == 0xCC) && (Flash_read_Byte(SPIFLASH_LOGIC_DataStart_ADDRESS+Logic_D_Hear_H) == 0xC0))
|
|
|
|
|
|
{
|
|
|
|
|
|
uint8_t temp_data[4];
|
|
|
|
|
|
uint16_t temp_len = 0;
|
|
|
|
|
|
Flash_Read(temp_data,4,SPIFLASH_LOGIC_DataStart_ADDRESS+Logic_D_Len_L);
|
|
|
|
|
|
temp_len = temp_data[1];
|
|
|
|
|
|
temp_len <<= 8;
|
|
|
|
|
|
temp_len |= temp_data[0];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>ҵ<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><EFBFBD><EFBFBD>:%d",temp_len);
|
|
|
|
|
|
if((temp_len <= file_len) && (temp_len <= 1024)) //Ŀǰ<C4BF><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1024
|
|
|
|
|
|
{
|
|
|
|
|
|
uint16_t temp_crc = 0,data_crc = 0;
|
|
|
|
|
|
uint16_t data_frame = 0,data_sn = 0;
|
|
|
|
|
|
uint8_t temp_buff[temp_len];
|
|
|
|
|
|
memset(temp_buff,0,sizeof(temp_buff));
|
|
|
|
|
|
|
|
|
|
|
|
Flash_Read(temp_buff,temp_len,SPIFLASH_LOGIC_DataStart_ADDRESS);
|
|
|
|
|
|
temp_crc = NetCRC16_Data(temp_buff ,temp_len,Logic_D_CRC_L);
|
|
|
|
|
|
|
|
|
|
|
|
data_crc = temp_buff[Logic_D_CRC_H];
|
|
|
|
|
|
data_crc <<= 8;
|
|
|
|
|
|
data_crc |= temp_buff[Logic_D_CRC_L];
|
|
|
|
|
|
|
|
|
|
|
|
if(data_crc == temp_crc)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"CRCУ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>");
|
|
|
|
|
|
|
|
|
|
|
|
data_frame = temp_buff[Logic_D_FrameNum_H];
|
|
|
|
|
|
data_frame <<= 8;
|
|
|
|
|
|
data_frame |= temp_buff[Logic_D_FrameNum_L];
|
|
|
|
|
|
|
|
|
|
|
|
data_sn = temp_buff[Logic_D_Frame_H];
|
|
|
|
|
|
data_sn <<= 8;
|
|
|
|
|
|
data_sn |= temp_buff[Logic_D_Frame_L];
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic Data SN:%d,NUM:%d",data_sn,data_frame);
|
|
|
|
|
|
Dbg_Print_Buff(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>֡<EFBFBD><EFBFBD><EFBFBD><EFBFBD>" ,temp_buff,temp_len);
|
|
|
|
|
|
|
|
|
|
|
|
if(temp_buff[Logic_D_FrameType] == Logic_FrameType_LogicInfo)
|
|
|
|
|
|
{
|
|
|
|
|
|
switch(select)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00: //<2F><>ѯȫ<D1AF><C8AB><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
memcpy(buff,&temp_buff[Logic_D_Para],LogicFile_InfoDetails_Len);
|
|
|
|
|
|
rev = 0x00;
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01: //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - 32Byte
|
|
|
|
|
|
memcpy(buff,&temp_buff[Logic_D_Para + LogicFile_InfoDetails_Author_Offset],32);
|
|
|
|
|
|
rev = 0x00;
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD>汾 - 4Byte
|
|
|
|
|
|
memcpy(buff,&temp_buff[Logic_D_Para + LogicFile_Infodetails_SWVersion_Offset],4);
|
|
|
|
|
|
rev = 0x00;
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03: //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> - 7Byte
|
|
|
|
|
|
memcpy(buff,&temp_buff[Logic_D_Para + LogicFile_Infodetails_ReleaseDate_Offset],7);
|
|
|
|
|
|
rev = 0x00;
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x04: //<2F><>ѯ<EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD> - 32Byte
|
|
|
|
|
|
memcpy(buff,&temp_buff[Logic_D_Para + LogicFile_Infodetails_HotelName_Offset],32);
|
|
|
|
|
|
rev = 0x00;
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x05: //<2F><>ѯ<EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD> - 4Byte
|
|
|
|
|
|
memcpy(buff,&temp_buff[Logic_D_Para + LogicFile_Infodetails_HotelCode_Offset],4);
|
|
|
|
|
|
rev = 0x00;
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x06: //<2F><>ѯ<EFBFBD><D1AF>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> - 32Byte
|
|
|
|
|
|
memcpy(buff,&temp_buff[Logic_D_Para + LogicFile_Infodetails_HotelGroupName_Offset],32);
|
|
|
|
|
|
rev = 0x00;
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x07: //<2F><>ѯ<EFBFBD><D1AF><EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD> - 32Byte
|
|
|
|
|
|
memcpy(buff,&temp_buff[Logic_D_Para + LogicFile_Infodetails_HomeName_Offset],32);
|
|
|
|
|
|
rev = 0x00;
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x08: //<2F><>ѯ<EFBFBD>汾<EFBFBD><E6B1BE> - 3Byte
|
|
|
|
|
|
memcpy(buff,&temp_buff[Logic_D_Para + LogicFile_Infodetails_Version_Offset],3);
|
|
|
|
|
|
rev = 0x00;
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}else {
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"CRCУ<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>!");
|
|
|
|
|
|
}
|
|
|
|
|
|
}else{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><EFBFBD>Ȳ<EFBFBD><EFBFBD>ڷ<EFBFBD>Χ<EFBFBD><EFBFBD>:%08X - %d",temp_len);
|
|
|
|
|
|
}
|
|
|
|
|
|
}else {
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݰ<EFBFBD>ͷ!%02X %02X",Flash_read_Byte(SPIFLASH_LOGIC_DataStart_ADDRESS+Logic_D_Hear_L) , Flash_read_Byte(SPIFLASH_LOGIC_DataStart_ADDRESS+Logic_D_Hear_H));
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return rev;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_FrameType_Global_TempProcessing
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> - ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ <EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_FrameType_Global_TempProcessing(uint8_t *data,uint16_t len)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"%s",__func__);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_FrameType_DeviceAction_TempProcessing
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> - <EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
0x00 :<EFBFBD>ж<EFBFBD>Ӧ<EFBFBD><EFBFBD>Э<EFBFBD><EFBFBD>
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) uint8_t Logic_DeviceType_Legal_Judgment(LOGICFILE_DEVICE_INFO *dev_info)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint8_t rev = 0x01;
|
|
|
|
|
|
|
|
|
|
|
|
switch(dev_info->type)
|
|
|
|
|
|
{
|
|
|
|
|
|
case Dev_Host_Invalid: //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x00) && (dev_info->port == 0x00)) rev = 0x00;
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_HVout: //ǿ<><C7BF><EFBFBD>̵<EFBFBD><CCB5><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Bus_port)) rev = 0x00; //BLV_Cx<43><78><EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><CCB5><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x02) && (dev_info->port == Polling_Port)) rev = 0x00; //A9IO<49>̵<EFBFBD><CCB5><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x03) && (dev_info->port == Active_Port)) rev = 0x00; //ǿ<>翪<EFBFBD><E7BFAA>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_LVinput: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == 0x00)) rev = 0x00; //BLV_Cx<43><78><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><>ͨ<EFBFBD>豸
|
|
|
|
|
|
else if((dev_info->version == 0x02) && (dev_info->port == Polling_Port)) rev = 0x00; //485<38><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ
|
|
|
|
|
|
else if((dev_info->version == 0x03) && (dev_info->port == Active_Port)) rev = 0x00; //6·<36><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_LVoutput: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == 0x00)) rev = 0x00; //BLV_Cx<43><78><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><>ͨ<EFBFBD>豸
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_Service: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == 0x00)) rev = 0x00; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>豸
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_NodeCurtain: //<2F>ɽӵ㴰<D3B5><E3B4B0>
|
|
|
|
|
|
if((dev_info->version == 0x00) && (dev_info->port == 0x00)) rev = 0x00; //<2F>ɽӵ㴰<D3B5><E3B4B0><EFBFBD>豸
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_SWT: //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Active_Port)) rev = 0x00; //T1<54><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x02) && (dev_info->port == Active_Port)) rev = 0x00; //C7T/C43<34><33><EFBFBD><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x03) && (dev_info->port == Polling_Port)) rev = 0x00; //A9IO<49><4F><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_TEMP: //<2F>յ<EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Polling_Port)) rev = 0x00; //T1<54>¿<EFBFBD><C2BF><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x02) && (dev_info->port == Active_Port)) rev = 0x00; //C7T/C43<34>¿<EFBFBD><C2BF><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x03) && (dev_info->port == Polling_Port)) rev = 0x00; //T1<54>Ĺ<EFBFBD><C4B9>¿<EFBFBD><C2BF><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x04) && (dev_info->port == Active_Port)) rev = 0x00; //T1<54><31><EFBFBD><EFBFBD><EFBFBD>¿<EFBFBD><C2BF><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_INFRARED: //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>ʱû<CAB1>жԽ<D0B6>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_AirDetect: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Polling_Port)) rev = 0x00; //M702<30><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_CARD: //<2F>忨ȡ<E5BFA8><C8A1>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Polling_Port)) rev = 0x00; //BLW<4C>忨ȡ<E5BFA8>磨<EFBFBD><E7A3A8>ѵ<EFBFBD><D1B5>
|
|
|
|
|
|
else if((dev_info->version == 0x02) && (dev_info->port == Active_Port)) rev = 0x00; //BLW<4C>忨ȡ<E5BFA8><C8A1>(<28><><EFBFBD><EFBFBD>)
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_HEATER: //<2F><>ů
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Polling_Port)) rev = 0x00; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ů
|
|
|
|
|
|
if((dev_info->version == 0x02) && (dev_info->port == Active_Port)) rev = 0x00; //CLED<45><44>ů
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_RCU_NET: //RCU<43>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>ʱû<CAB1>жԽ<D0B6>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_CURTAIN: //485<38><35><EFBFBD><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Active_Port)) rev = 0x00; //<2F><><EFBFBD>Ǵ<EFBFBD><C7B4><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x02) && (dev_info->port == Active_Port)) rev = 0x00; //<2F><><EFBFBD>괰<EFBFBD><EAB4B0>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RELAY: //<2F>̵<EFBFBD><CCB5><EFBFBD>
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸Ԥ<E8B1B8><D4A4>ȡ<EFBFBD><C8A1>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_IR_SEND: //<2F><><EFBFBD>ⷢ<EFBFBD><E2B7A2>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Polling_Port)) rev = 0x00; //<2F><>ѵ<EFBFBD><D1B5><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD>豸
|
|
|
|
|
|
if((dev_info->version == 0x02) && (dev_info->port == Active_Port)) rev = 0x00; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD>豸
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_DIMMING: //ֱ<><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸Ԥ<E8B1B8><D4A4>ȡ<EFBFBD><C8A1> - <20>ϲ<EFBFBD><CFB2><EFBFBD>485PWM<57><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_TRAIC: //<2F>ɿع<C9BF><D8B9><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸Ԥ<E8B1B8><D4A4>ȡ<EFBFBD><C8A1> - <20>ϲ<EFBFBD><CFB2><EFBFBD>485PWM<57><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_STRIP: //<2F>ƴ<EFBFBD>
|
|
|
|
|
|
// if((dev_info->version == 0x01) && (dev_info->port == Polling_Port)) rev = 0x00; //<2F>ϲ<EFBFBD><CFB2><EFBFBD>PWM<57><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_CoreCtrl: //<2F>п<EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Active_Port)) rev = 0x00; //С<><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_WxLock: //<><CEA2><EFBFBD><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Active_Port)) rev = 0x00; //BLW<57><CEA2><EFBFBD><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x02) && (dev_info->port == Polling_Port)) rev = 0x00; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><CEA2><EFBFBD><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x03) && (dev_info->port == Polling_Port)) rev = 0x00; //<2F><><EFBFBD><EFBFBD><EFBFBD><CEA2><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_MUSIC: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Bus_port)) rev = 0x00; //BLV_Cx<43><78><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x02) && (dev_info->port == Active_Port)) rev = 0x00; //BLW<4C><57><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֺ<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x06) && (dev_info->port == Polling_Port)) rev = 0x00; //<2F><><EFBFBD><EFBFBD>˼<EFBFBD><CBBC><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_NET_ROOMSTATE: //<2F><>̬<EFBFBD>·<EFBFBD>
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>ʱû<CAB1>жԽ<D0B6>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_PWMLight: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD>
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸Ԥ<E8B1B8><D4A4>ȡ<EFBFBD><C8A1>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_PWM: //485PWM<57><4D><EFBFBD><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Polling_Port)) rev = 0x00; //PWM<57><4D><EFBFBD><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x02) && (dev_info->port == Polling_Port)) rev = 0x00; //A9LD<4C><44><EFBFBD><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x03) && (dev_info->port == Active_Port)) rev = 0x00; //C7T<37><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x04) && (dev_info->port == Polling_Port)) rev = 0x00; //A8PB<50><42><EFBFBD><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x05) && (dev_info->port == Bus_port)) rev = 0x00; //C12<31><32><EFBFBD><EFBFBD>
|
|
|
|
|
|
else if((dev_info->version == 0x06) && (dev_info->port == Polling_Port)) rev = 0x00; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><C6B4><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_PB_LED: //<2F><><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD>
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸Ԥ<E8B1B8><D4A4>ȡ<EFBFBD><C8A1>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RCU_POWER: //RCU<43><55>Դ
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸Ԥ<E8B1B8><D4A4>ȡ<EFBFBD><C8A1>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_A9_IO_SWT: //A9IO<49><4F><EFBFBD><EFBFBD>
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸Ԥ<E8B1B8><D4A4>ȡ<EFBFBD><C8A1>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_A9_IO_EXP: //A9IO<49><4F>չ
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸Ԥ<E8B1B8><D4A4>ȡ<EFBFBD><C8A1>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_A9_IO_POWER: //A9IO<49><4F>Դ
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸Ԥ<E8B1B8><D4A4>ȡ<EFBFBD><C8A1>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RFGatewayCycle: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸Ԥ<E8B1B8><D4A4>ȡ<EFBFBD><C8A1>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RFGatewayHost: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Active_Port)) rev = 0x00; //RF<52><46><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RFGatewayDoor: //<2F><><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD>
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸Ԥ<E8B1B8><D4A4>ȡ<EFBFBD><C8A1>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_AirReveal: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Active_Port)) rev = 0x00; //C7T<37><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RFGatewayRelayPir: //<2F><><EFBFBD>̵<DFBC><CCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸Ԥ<E8B1B8><D4A4>ȡ<EFBFBD><C8A1>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_TimeCtrl: //ʱ<><CAB1>ͬ<EFBFBD><CDAC>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Active_Port)) rev = 0x00; //C7Tʱ<54><CAB1>ͬ<EFBFBD><CDAC>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Rs458_MonitorCtrl: //<2F><><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD>
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>豸Ԥ<E8B1B8><D4A4>ȡ<EFBFBD><C8A1>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Rs458_RotaryCtrl: //<2F><>ť<EFBFBD><C5A5><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Active_Port)) rev = 0x00; //<2F><>ť<EFBFBD><C5A5><EFBFBD><EFBFBD> Э<><D0AD>1
|
|
|
|
|
|
if((dev_info->version == 0x02) && (dev_info->port == Active_Port)) rev = 0x00; //<2F><>ť<EFBFBD><C5A5><EFBFBD><EFBFBD> Э<><D0AD>2
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_BUS_C5IO: //BLV_CSIO
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Bus_port)) rev = 0x00; //BLV_CxIO<49>豸
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_RS485_CardState:
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Active_Port)) rev = 0x00; //<2F><><EFBFBD><EFBFBD><EFBFBD>˿ڲ忨ͬ<E5BFA8><CDAC>
|
|
|
|
|
|
if((dev_info->version == 0x02) && (dev_info->port == Polling_Port)) rev = 0x00; //<2F><>ѯ<EFBFBD>˿ڲ忨ͬ<E5BFA8><CDAC>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_FreshAir: //485<38>·<EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Polling_Port)) rev = 0x00; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x02) && (dev_info->port == Active_Port)) rev = 0x00; //CLED<45>·<EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_LCD: //LCD1602
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Bus_port)) rev = 0x00; //LCD1602
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Rs485_PB20:
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Bus_port)) rev = 0x00; //PB20
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Rs485_PB20_LD:
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == 0x00)) rev = 0x00; //PB20_LED
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Rs485_PB20_LS:
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == 0x00)) rev = 0x00; //PB20_LightStrip
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Rs485_PB20_Relay:
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == 0x00)) rev = 0x00; //PB20_Relay
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_Virtual_NoCard:
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == 0x00)) rev = 0x00; //<2F><><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>豸
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_Virtual_Card:
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == 0x00)) rev = 0x00; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>豸
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_Virtual_ColorTemp:
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == 0x00)) rev = 0x00; //ɫ<>µ<EFBFBD><C2B5><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
#if Dev_485_BLE_Music_Flag
|
|
|
|
|
|
case Dev_485_BLE_Music:
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Active_Port)) rev = 0x00; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if Dev_Nor_Carbon_Flag
|
|
|
|
|
|
case DEV_Carbon_Saved:
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == 0x00)) rev = 0x00; //̼<><CCBC><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if Dev_Nor_Scene_Restore_Flag
|
|
|
|
|
|
case Dev_Scene_Restore:
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == 0x00)) rev = 0x00; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭ
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if Dev_Nor_GlobalSet_Flag //2025-07-15,YYW,ȫ<><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
case Dev_Virtual_GlobalSet:
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == 0x00)) rev = 0x00; //ȫ<><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
case Dev_Energy_Monitor:
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Polling_Port)) rev = 0x00; //<2F>ܺļ<DCBA><C4BC><EFBFBD>
|
|
|
|
|
|
if((dev_info->version == 0x01) && (dev_info->port == Active_Port)) rev = 0x00; //<2F>ܺļ<DCBA><C4BC><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return rev;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_FrameType_DeviceExist_TempProcessing
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> - <EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_FrameType_DeviceExist_TempProcessing(
|
|
|
|
|
|
uint32_t data_addr,
|
|
|
|
|
|
LOGICFILE_Content_Of_Statistical *Lfile_info,
|
|
|
|
|
|
uint8_t *data,
|
|
|
|
|
|
uint16_t len)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t temp_len = 0;
|
|
|
|
|
|
char temp_str[38] = {0};
|
|
|
|
|
|
LOGICFILE_DEVICE_INFO temp_dev_info;
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"%s",__func__);
|
|
|
|
|
|
|
|
|
|
|
|
memcpy(&temp_dev_info,data,sizeof(LOGICFILE_DEVICE_INFO));
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d - %s",temp_dev_info.type,Logic_Info_DeviceType_To_String(temp_dev_info.type));
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD><EFBFBD>ַ:%d",temp_dev_info.addr);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD>˿<EFBFBD>:%d - %s",temp_dev_info.port,Logic_Info_DevicePort_To_String(temp_dev_info.port));
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_dev_info.baud);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸Э<EFBFBD><EFBFBD><EFBFBD>汾:%d",temp_dev_info.version);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸ͨѶ<EFBFBD>ط<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_dev_info.retry);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸ͨѶ<EFBFBD>ȴ<EFBFBD>ʱ<EFBFBD><EFBFBD>:%dms",temp_dev_info.writ_time);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><EFBFBD>:%d",temp_dev_info.input_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><EFBFBD>:%d",temp_dev_info.output_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_dev_info.parent_type);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ַ:%d",temp_dev_info.parent_addr);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>˿<EFBFBD>:%d",temp_dev_info.parent_port);
|
|
|
|
|
|
|
|
|
|
|
|
temp_len += sizeof(LOGICFILE_DEVICE_INFO);
|
|
|
|
|
|
|
|
|
|
|
|
if((temp_len + temp_dev_info.input_num*4 + temp_dev_info.output_num*32) > len)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><EFBFBD><EFBFBD>:%d - %d",temp_len + temp_dev_info.input_num*4 + temp_dev_info.output_num*16,len);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·*4Byte*/
|
|
|
|
|
|
temp_len += temp_dev_info.input_num*4;
|
|
|
|
|
|
|
|
|
|
|
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·*32Byte 2022-06-07 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȸ<EFBFBD>Ϊ32Byte*/
|
|
|
|
|
|
for(uint16_t i=0;i<temp_dev_info.output_num;i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
memcpy(temp_str,&data[temp_len],32);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·:%d - %s",i+1,temp_str);
|
|
|
|
|
|
temp_len += 32;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
Lfile_info->device_num += 1;
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_dev_info.port)
|
|
|
|
|
|
{
|
|
|
|
|
|
case Bus_port:
|
|
|
|
|
|
if(Logic_DeviceType_Legal_Judgment(&temp_dev_info) == 0x00) {
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>ж<EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><EFBFBD>--");
|
|
|
|
|
|
|
|
|
|
|
|
if(Lfile_info->Bus_device_num < BusDevice_NumMax)
|
|
|
|
|
|
{
|
|
|
|
|
|
Lfile_info->Bus_device_addr[Lfile_info->Bus_device_num] = data_addr;
|
|
|
|
|
|
Lfile_info->Bus_device_num += 1;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Polling_Port:
|
|
|
|
|
|
if(Logic_DeviceType_Legal_Judgment(&temp_dev_info) == 0x00){
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>ж<EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><EFBFBD>--");
|
|
|
|
|
|
|
|
|
|
|
|
if(Lfile_info->Polling_device_num < PollingDevice_NumMax)
|
|
|
|
|
|
{
|
|
|
|
|
|
Lfile_info->Polling_device_addr[Lfile_info->Polling_device_num] = data_addr;
|
|
|
|
|
|
Lfile_info->Polling_device_num += 1;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Active_Port:
|
|
|
|
|
|
if(Logic_DeviceType_Legal_Judgment(&temp_dev_info) == 0x00){
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>ж<EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><EFBFBD>--");
|
|
|
|
|
|
|
|
|
|
|
|
if(Lfile_info->Active_device_num < ActiveDevice_NumMax)
|
|
|
|
|
|
{
|
|
|
|
|
|
Lfile_info->Active_device_addr[Lfile_info->Active_device_num] = data_addr;
|
|
|
|
|
|
Lfile_info->Active_device_num += 1;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x00: //<2F><><EFBFBD><EFBFBD><EFBFBD>豸 - <20><>ͨ<EFBFBD>豸
|
|
|
|
|
|
if(Logic_DeviceType_Legal_Judgment(&temp_dev_info) == 0x00){
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>ж<EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><EFBFBD>--");
|
|
|
|
|
|
|
|
|
|
|
|
if(Lfile_info->Nor_device_num < NorDevice_NumMax)
|
|
|
|
|
|
{
|
|
|
|
|
|
Lfile_info->Nor_device_addr[Lfile_info->Nor_device_num] = data_addr;
|
|
|
|
|
|
Lfile_info->Nor_device_num += 1;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) char *Logic_Device_DelayUnit_To_String(uint8_t type)
|
|
|
|
|
|
{
|
|
|
|
|
|
memset(device_temp_string,0,sizeof(device_temp_string));
|
|
|
|
|
|
|
|
|
|
|
|
#if LOGIC_DEBUG_INFO_EN
|
|
|
|
|
|
switch(type)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"ms",sizeof("ms"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"s",sizeof("s"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"min",sizeof("min"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
return device_temp_string;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) char *Logic_Data_Service_Info_To_String(uint8_t id)
|
|
|
|
|
|
{
|
|
|
|
|
|
memset(device_temp_string,0,sizeof(device_temp_string));
|
|
|
|
|
|
|
|
|
|
|
|
#if LOGIC_DEBUG_INFO_EN
|
|
|
|
|
|
|
|
|
|
|
|
switch(id)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD>ס<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD>ס<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD>ŷ<EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD>ŷ<EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x04:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD>з<EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD>з<EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x05:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"ϴ<EFBFBD>·<EFBFBD><EFBFBD><EFBFBD>",sizeof("ϴ<EFBFBD>·<EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x06:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD>˷<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD>˷<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x07:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD>Ժ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD>Ժ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x08:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"SOS<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("SOS<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x09:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD>Ͳͷ<EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD>Ͳͷ<EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0A:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0B:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0C:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0D:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD>Ŵŷ<EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD>Ŵŷ<EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
return device_temp_string;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) char *Logic_Data_Music_folder_To_String(uint8_t id)
|
|
|
|
|
|
{
|
|
|
|
|
|
memset(device_temp_string,0,sizeof(device_temp_string));
|
|
|
|
|
|
|
|
|
|
|
|
#if LOGIC_DEBUG_INFO_EN
|
|
|
|
|
|
|
|
|
|
|
|
switch(id)
|
|
|
|
|
|
{
|
|
|
|
|
|
case BLV_C5MUSIC_Music_Dir:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case BLV_C5MUSIC_Warning_Dir:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case BLV_C5MUSIC_Helpsleep_Dir:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case BLV_C5MUSIC_Doorbell_Dir:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case BLV_C5MUSIC_Greet_Dir:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD>ӭ<EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD>ӭ<EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case BLV_C5MUSIC_Helpsleep1_Dir:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڤ<EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڤ<EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case BLV_C5MUSIC_Helpsleep2_Dir:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD>ߺ<EFBFBD><EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD>ߺ<EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
case BLV_C5MUSIC_Helpsleep3_Dir:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɭ<EFBFBD><EFBFBD>",sizeof("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɭ<EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
strncpy(device_temp_string,(const char *)"δ֪<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>",sizeof("δ֪<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>"));
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
return device_temp_string;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_FrameType_DeviceAction_TempProcessing
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> - <EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><EFBFBD><EFBFBD> - 8Byte
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_Device_Action_Data_Analysis(uint8_t *data)
|
|
|
|
|
|
{
|
|
|
|
|
|
#if LOGIC_DEBUG_INFO_EN
|
|
|
|
|
|
|
|
|
|
|
|
LOGIC_DEVICE_ACTIVE_G temp_active;
|
|
|
|
|
|
memcpy(&temp_active,data,sizeof(LOGIC_DEVICE_ACTIVE_G));
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"****************************");
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d - %s",temp_active.type,Logic_Info_DeviceType_To_String(temp_active.type));
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ַ:%d",temp_active.addr);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ƻ<EFBFBD>·:%d",temp_active.loop);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸ִ<EFBFBD>з<EFBFBD>ʽ:%d",temp_active.execute);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:",temp_active.addr);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_active.type)
|
|
|
|
|
|
{
|
|
|
|
|
|
case Dev_Host_Invalid:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>·:%d ",temp_active.loop);
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_HVout:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>·:%d ",temp_active.loop);
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_LVinput:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_LVoutput:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>·:%d ",temp_active.loop);
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ:%d\r\n",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ:%d\r\n",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ:%d\r\n",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_Service:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"%s ",Logic_Data_Service_Info_To_String(temp_active.loop));
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>\r\n",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>\r\n",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_NodeCurtain:
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_SWT:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·:%d ",temp_active.loop);
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ:%d\r\n",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ:%d\r\n",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>볡<EFBFBD><EFBFBD><EFBFBD>й<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ:%d\r\n",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_TEMP:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>յ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬:");
|
|
|
|
|
|
{
|
|
|
|
|
|
uint8_t temp_1 = 0;
|
|
|
|
|
|
uint8_t tempstate = temp_active.execute;
|
|
|
|
|
|
|
|
|
|
|
|
temp_1 = (tempstate >> 6) & 0x03;
|
|
|
|
|
|
switch(temp_1)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>ػ<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
temp_1 = (tempstate >> 4) & 0x03;
|
|
|
|
|
|
switch(temp_1)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>ͷ<EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x00:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Զ<EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
temp_1 = (tempstate >> 2) & 0x03;
|
|
|
|
|
|
switch(temp_1)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x00:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Զ<EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
temp_1 = (tempstate >> 0) & 0x03;
|
|
|
|
|
|
switch(temp_1)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x00:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Զ<EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>:%d\r\n",temp_active.content);
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_INFRARED:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧû<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_AirDetect:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_CARD:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>忨ȡ<EFBFBD><EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_HEATER:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ů<EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬:");
|
|
|
|
|
|
{
|
|
|
|
|
|
uint8_t temp_1 = 0;
|
|
|
|
|
|
uint8_t tempstate = temp_active.execute;
|
|
|
|
|
|
|
|
|
|
|
|
temp_1 = (tempstate >> 6) & 0x03;
|
|
|
|
|
|
switch(temp_1)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>ػ<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
temp_1 = (tempstate >> 4) & 0x03;
|
|
|
|
|
|
switch(temp_1)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>ͷ<EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x00:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Զ<EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
temp_1 = (tempstate >> 2) & 0x03;
|
|
|
|
|
|
switch(temp_1)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x00:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Զ<EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
temp_1 = (tempstate >> 0) & 0x03;
|
|
|
|
|
|
switch(temp_1)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x00:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>Զ<EFBFBD> ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>:%d\r\n",temp_active.content);
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_RCU_NET:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"RCU<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_CURTAIN:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RELAY:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·:%d ",temp_active.loop);
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_IR_SEND:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ⷢ<EFBFBD><EFBFBD>-%d ",temp_active.loop);
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> ");
|
|
|
|
|
|
switch(temp_active.content)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x04:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x05:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x06:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x07:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x08:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x09:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0A:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0B:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"OK");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0C:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ҳ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0D:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>˵<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0E:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>Դ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0F:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>ؿ<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> ");
|
|
|
|
|
|
switch(temp_active.content)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x04:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x05:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x06:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x07:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x08:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x09:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0A:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0B:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"OK");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0C:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ҳ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0D:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>˵<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0E:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>Դ");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0F:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>ؿ<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ƥ<EFBFBD><EFBFBD> ");
|
|
|
|
|
|
switch(temp_active.content)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>յ<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x04:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"Ƶ<EFBFBD><EFBFBD>:%d ",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_DIMMING:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·:%d ",temp_active.loop);
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x07:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x08:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x09:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ֹͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0A:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0B:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ִ<EFBFBD>з<EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_TRAIC:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>ɿع<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·:%d ",temp_active.loop);
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ִ<EFBFBD>з<EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_STRIP:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>ƴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·:%d ",temp_active.loop);
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ִ<EFBFBD>з<EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_CoreCtrl:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>п<EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_WxLock:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_MUSIC:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d ",temp_active.loop);
|
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
uint8_t function = temp_active.execute & 0x0F;
|
|
|
|
|
|
uint8_t function_para = (temp_active.execute >> 4) & 0x0F;
|
|
|
|
|
|
|
|
|
|
|
|
switch(function)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x00:
|
|
|
|
|
|
switch(function_para)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ֹͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x04:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x05:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x06:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x07:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x08:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x09:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>ػ<EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> %s-%d",Logic_Data_Music_folder_To_String(function_para),temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x04:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> %s-%d",Logic_Data_Music_folder_To_String(function_para),temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ִ<EFBFBD>з<EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_NET_ROOMSTATE:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>̬<EFBFBD>·<EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_PWMLight:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·:%d ",temp_active.loop);
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ִ<EFBFBD>з<EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_PWM:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"485PWM<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·:%d ",temp_active.loop);
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x07:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x08:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x09:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ֹͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0A:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x0B:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ִ<EFBFBD>з<EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_PB_LED:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"PB<EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·:%d ",temp_active.loop);
|
|
|
|
|
|
switch(temp_active.execute)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>:%d",temp_active.content);
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ִ<EFBFBD>з<EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RCU_POWER:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"RCU<EFBFBD><EFBFBD>Դû<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_A9_IO_SWT:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"A9IO<EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_A9_IO_EXP:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"A9IO<EFBFBD><EFBFBD>չû<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_A9_IO_POWER:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"A9IO<EFBFBD><EFBFBD>Դû<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RFGatewayCycle:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯû<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RFGatewayHost:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RFGatewayDoor:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_AirReveal:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_RFGatewayRelayPir:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_TimeCtrl:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"ʱ<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Rs458_MonitorCtrl:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Rs458_RotaryCtrl:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_BUS_C5IO:
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"BLV_CSIOû<EFBFBD>п<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Dbg_NoTick_Print(DBG_BIT_LOGIC_STATUS_bit,"\r\n");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʱ<EFBFBD><EFBFBD>:%d%s",temp_active.delay_time,Logic_Device_DelayUnit_To_String(temp_active.delay_unit));
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"****************************");
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_FrameType_DeviceAction_TempProcessing
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> - <EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_FrameType_DeviceAction_TempProcessing(
|
|
|
|
|
|
uint32_t data_addr,
|
|
|
|
|
|
LOGICFILE_Content_Of_Statistical *Lfile_info,
|
|
|
|
|
|
uint8_t *data,
|
|
|
|
|
|
uint16_t len)
|
|
|
|
|
|
{
|
|
|
|
|
|
char temp_str[38] = {0};
|
|
|
|
|
|
uint32_t temp_len = 0;
|
|
|
|
|
|
uint32_t temp_data = 0;
|
|
|
|
|
|
uint8_t temp_num = 0;
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"%s",__func__);
|
|
|
|
|
|
|
|
|
|
|
|
Lfile_info->active_num += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d - %s",temp_data,Logic_Info_DeviceType_To_String(temp_data));
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD><EFBFBD>ַ:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint16(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_data);
|
|
|
|
|
|
temp_len += 2;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint16(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·:%d",temp_data);
|
|
|
|
|
|
temp_len += 2;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint16(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>:0x%04x",temp_data);
|
|
|
|
|
|
temp_len += 2;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Logic_Info_DeviceAction_Condition_To_String(&data[temp_len]); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1:%02X",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2:%02X",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3:%02X",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4:%02X",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>5:%02X",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>6:%02X",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>7:%02X",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8:%02X",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_len += 32; //2022-05-29 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>32Byte
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>з<EFBFBD>ʽ:%02X",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
strncpy(temp_str,(const char *)&data[temp_len],32);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%s",temp_str);
|
|
|
|
|
|
Dbg_Print_Buff(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" ,&data[temp_len],32);
|
|
|
|
|
|
temp_len += 32;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint16(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_data);
|
|
|
|
|
|
temp_len += 2; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
temp_len += 32; //2022-05-29 <20><><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%02X",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
if((temp_len + temp_data*8) > len)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><EFBFBD><EFBFBD>:%d - %d",temp_len + temp_data*8,len);
|
|
|
|
|
|
return ;
|
|
|
|
|
|
}
|
|
|
|
|
|
temp_num = temp_data;
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
for(uint16_t i=0;i<temp_num;i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
Logic_Device_Action_Data_Analysis(&data[temp_len]);
|
|
|
|
|
|
|
|
|
|
|
|
temp_len+=8;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#if LOGIC_FILE_EN
|
|
|
|
|
|
Logic_DevAction_Add(data, len);
|
|
|
|
|
|
#endif
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_FrameType_VoiceMap_TempProcessing
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> - <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_FrameType_VoiceMap_TempProcessing(
|
|
|
|
|
|
uint32_t data_addr,
|
|
|
|
|
|
LOGICFILE_Content_Of_Statistical *Lfile_info,
|
|
|
|
|
|
uint8_t *data,
|
|
|
|
|
|
uint16_t len)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t temp_len = 0;
|
|
|
|
|
|
uint32_t temp_data = 0;
|
|
|
|
|
|
|
|
|
|
|
|
Lfile_info->voicemap_num += 1;
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"%s",__func__);
|
|
|
|
|
|
|
|
|
|
|
|
// temp_data = data[temp_len];
|
|
|
|
|
|
// Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d ",temp_data);
|
|
|
|
|
|
// temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d - %s",temp_data,Logic_Info_DeviceType_To_String(temp_data));
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ַ:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint16(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ƻ<EFBFBD>·:%d",temp_data);
|
|
|
|
|
|
temp_len += 2;
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>:%d",Lfile_info->voicemap_num);
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Print_Buff(DBG_BIT_LOGIC_STATUS_bit, "<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>ϵ:", data, 6);
|
|
|
|
|
|
if(Dev_Host_Invalid != data[0]) //<2F><><EFBFBD>dz<EFBFBD><C7B3><EFBFBD>
|
|
|
|
|
|
{
|
|
|
|
|
|
if( (0x00 != data[4]) && (data[2]!=Dev_Host_Invalid) )
|
|
|
|
|
|
{
|
|
|
|
|
|
data[4]--;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
//Voice_Map_Dev_Add(&data[0]);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#if RS485_PB20Fun_Flag
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_FrameType_DevCheckMap_TempProcessing
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> - Ѳ<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>·<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_FrameType_DevCheckMap_TempProcessing(
|
|
|
|
|
|
uint32_t data_addr,
|
|
|
|
|
|
LOGICFILE_Content_Of_Statistical *Lfile_info,
|
|
|
|
|
|
uint8_t *data,
|
|
|
|
|
|
uint16_t len)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t temp_len = 0;
|
|
|
|
|
|
uint32_t temp_data = 0;
|
|
|
|
|
|
|
|
|
|
|
|
Lfile_info->devcheckmap_num += 1;
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"%s",__func__);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Ѳ<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Ѳ<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ַ:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint16(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Ѳ<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>·:%d",temp_data);
|
|
|
|
|
|
temp_len += 2;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint16(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d W",temp_data);
|
|
|
|
|
|
temp_len += 2;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint16(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d W",temp_data);
|
|
|
|
|
|
temp_len += 2;
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰѲ<EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>:%d",Lfile_info->devcheckmap_num);
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Print_Buff(DBG_BIT_LOGIC_STATUS_bit, "<EFBFBD><EFBFBD>ǰѲ<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:", data, 8);
|
|
|
|
|
|
|
|
|
|
|
|
Dev_Check_Map_Add(&data[0]);
|
|
|
|
|
|
}
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_FrameType_VCCondition_TempProcessing
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> - <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_FrameType_VCCondition_TempProcessing(
|
|
|
|
|
|
uint32_t data_addr,
|
|
|
|
|
|
LOGICFILE_Content_Of_Statistical *Lfile_info,
|
|
|
|
|
|
uint8_t *data,
|
|
|
|
|
|
uint16_t len)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t temp_len = 0;
|
|
|
|
|
|
uint32_t temp_data = 0;
|
|
|
|
|
|
|
|
|
|
|
|
uint32_t list_addr = 0;
|
|
|
|
|
|
|
|
|
|
|
|
uint8_t condata[len + 4]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ + 4<><34><EFBFBD>ֽ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
|
|
|
|
|
|
memset(condata, 0 , sizeof(condata));
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"%s",__func__);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˱<EFBFBD><CBB1><EFBFBD>:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint16(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ʱʱ<CAB1><CAB1>:%d",temp_data);
|
|
|
|
|
|
temp_len += 2;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ʱ<EFBFBD><CAB1>λ:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
for(uint8_t i = 0; i < 11; i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>˿<EFBFBD>%02d״̬:%d",i,temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint16(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ʱʱ<CAB1><CAB1>:%d",temp_data);
|
|
|
|
|
|
temp_len += 2;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ʱ<EFBFBD><CAB1>λ:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
if(data[0] == 0x01) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
{
|
|
|
|
|
|
if(DevActionGlobal.VC_ConNToSSubset < (VC_CONDSUB_MAX * VC_CONDGROUP_MAX / 2))
|
|
|
|
|
|
{
|
|
|
|
|
|
list_addr = SRAM_VCard_ConNToS_Start_Addr + DevActionGlobal.VC_ConNToSSubset * sizeof(CONDITION_STRUCT); //<2F>õ<EFBFBD><C3B5>µ<EFBFBD>ַ
|
|
|
|
|
|
memcpy(condata,data,len);
|
|
|
|
|
|
SRAM_DMA_Write_Buff(condata, sizeof(CONDITION_STRUCT), list_addr); //<2F><><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
DevActionGlobal.VC_ConNToSSubset++;
|
|
|
|
|
|
if((data[1] > DevActionGlobal.VC_ConNToSGruop) && (data[1] <= VC_CONDGROUP_MAX))
|
|
|
|
|
|
{
|
|
|
|
|
|
DevActionGlobal.VC_ConNToSGruop = data[1];
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӳɹ<D3B3>,<2C><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ:%08X <20><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d ",list_addr ,DevActionGlobal.VC_ConNToSSubset);
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
else if( (data[0] == 0x02) || (data[0] == 0x03) || (data[0] == 0x04) ) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
{
|
|
|
|
|
|
if(DevActionGlobal.VC_ConSToNSubset < (VC_CONDSUB_MAX * VC_CONDGROUP_MAX / 2))
|
|
|
|
|
|
{
|
|
|
|
|
|
list_addr = SRAM_VCard_ConSToN_Start_Addr + DevActionGlobal.VC_ConSToNSubset * sizeof(CONDITION_STRUCT); //<2F>õ<EFBFBD><C3B5>µ<EFBFBD>ַ
|
|
|
|
|
|
memcpy(condata,data,len);
|
|
|
|
|
|
SRAM_DMA_Write_Buff(condata, sizeof(CONDITION_STRUCT), list_addr); //<2F><><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
DevActionGlobal.VC_ConSToNSubset++;
|
|
|
|
|
|
if((data[1] > DevActionGlobal.VC_ConSToNGruop) && (data[1] <= VC_CONDGROUP_MAX))
|
|
|
|
|
|
{
|
|
|
|
|
|
DevActionGlobal.VC_ConSToNGruop = data[1];
|
|
|
|
|
|
}
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӳɹ<D3B3>,<2C><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ:%08X <20><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d ",list_addr ,DevActionGlobal.VC_ConSToNSubset);
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_FrameType_VCPortInfor_TempProcessing
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> - <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_FrameType_VCPortInfor_TempProcessing(
|
|
|
|
|
|
uint32_t data_addr,
|
|
|
|
|
|
LOGICFILE_Content_Of_Statistical *Lfile_info,
|
|
|
|
|
|
uint8_t *data,
|
|
|
|
|
|
uint16_t len)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t temp_len = 0;
|
|
|
|
|
|
uint32_t temp_data = 0;
|
|
|
|
|
|
|
|
|
|
|
|
uint32_t list_addr = 0;
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"%s",__func__);
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> ӳ<><D3B3><EFBFBD>˿<EFBFBD><CBBF><EFBFBD><EFBFBD><EFBFBD>:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> ӳ<><D3B3><EFBFBD>˿ڵ<CBBF>ַ:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint16(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> ӳ<><D3B3><EFBFBD>˿ڻ<CBBF>·:%d",temp_data);
|
|
|
|
|
|
temp_len += 2;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> <20>˿ڴ<CBBF><DAB4><EFBFBD><EFBFBD><EFBFBD>ֵ:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>˿ں<CBBF>:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ͳ<EFBFBD>Ʊ<EFBFBD><C6B1><EFBFBD>:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(DevActionGlobal.VC_PortNum < VIRTUAL_PORT_MAX)
|
|
|
|
|
|
{
|
|
|
|
|
|
list_addr = SRAM_VCard_PortInf_Start_Addr + DevActionGlobal.VC_PortNum * sizeof(VPORT_INFO_STRUCT); //<2F>õ<EFBFBD><C3B5>µ<EFBFBD>ַ
|
|
|
|
|
|
|
|
|
|
|
|
SRAM_DMA_Write_Buff(data,sizeof(VPORT_INFO_STRUCT), list_addr); //<2F><><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
DevActionGlobal.VC_PortNum++;
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> ӳ<><D3B3><EFBFBD><EFBFBD><EFBFBD>ӳɹ<D3B3>,<2C><>ǰ<EFBFBD>˿ڵ<CBBF>ַ:%08X <20><>ǰ<EFBFBD>˿ڼ<CBBF><DABC><EFBFBD>:%d ",list_addr ,DevActionGlobal.VC_PortNum); //
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD><EFBFBD>˿ڳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: %d", VIRTUAL_PORT_MAX);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_FrameType_VCProperty_TempProcessing
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> - <EFBFBD><EFBFBD>ȡ<EFBFBD>繫<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_FrameType_VCProperty_TempProcessing(
|
|
|
|
|
|
uint32_t data_addr,
|
|
|
|
|
|
LOGICFILE_Content_Of_Statistical *Lfile_info,
|
|
|
|
|
|
uint8_t *data,
|
|
|
|
|
|
uint16_t len)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t temp_len = 0;
|
|
|
|
|
|
uint32_t temp_data = 0;
|
|
|
|
|
|
|
|
|
|
|
|
uint32_t list_addr = 0;
|
|
|
|
|
|
|
|
|
|
|
|
uint8_t tempflag = 0x00;
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"%s",__func__);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> <20><><EFBFBD>ڼ<EFBFBD><DABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint16(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> <20><><EFBFBD>ڼ<EFBFBD><DABC><EFBFBD>ʱ<EFBFBD><CAB1>:%d",temp_data);
|
|
|
|
|
|
temp_len += 2;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ʱ<EFBFBD>䵥λ:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
/*<2A><><EFBFBD>ڼ<EFBFBD><DABC><EFBFBD>ʱ<EFBFBD><CAB1> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>10<31><30>Сʱ*/
|
|
|
|
|
|
switch(data[3])
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x01: //<2F><>
|
|
|
|
|
|
if(Data_Uint8_Convert_To_Uint16(&data[1]) <= (60 * 60 * 10))
|
|
|
|
|
|
{
|
|
|
|
|
|
tempflag = 0x01;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x02: //<2F><>
|
|
|
|
|
|
if(Data_Uint8_Convert_To_Uint16(&data[1]) <= (60 * 10))
|
|
|
|
|
|
{
|
|
|
|
|
|
tempflag = 0x01;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x03: //ʱ
|
|
|
|
|
|
if(Data_Uint8_Convert_To_Uint16(&data[1]) <= 10)
|
|
|
|
|
|
{
|
|
|
|
|
|
tempflag = 0x01;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD>־:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = Data_Uint8_Convert_To_Uint16(&data[temp_len]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>ʱʱ<CAB1><CAB1>:%d",temp_data);
|
|
|
|
|
|
temp_len += 2;
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>ʱʱ<CAB1>䵥λ:%d",temp_data);
|
|
|
|
|
|
temp_len += 1;
|
|
|
|
|
|
|
|
|
|
|
|
if(tempflag == 0x01)
|
|
|
|
|
|
{
|
|
|
|
|
|
list_addr = SRAM_VCard_Property_Start_Addr;
|
|
|
|
|
|
if(len < 1024)
|
|
|
|
|
|
{
|
|
|
|
|
|
SRAM_DMA_Write_Buff(data, len, list_addr); //<2F><><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䳬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> - ɫ<EFBFBD>µ<EFBFBD><EFBFBD>ڶ˿<EFBFBD>ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_FrameType_ColorTempMap_TempProcessing(
|
|
|
|
|
|
uint32_t data_addr,
|
|
|
|
|
|
LOGICFILE_Content_Of_Statistical *Lfile_info,
|
|
|
|
|
|
uint8_t *data,
|
|
|
|
|
|
uint16_t len)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t temp_len = 0;
|
|
|
|
|
|
uint32_t temp_data = 0;
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"%s",__func__);
|
|
|
|
|
|
|
|
|
|
|
|
Lfile_info->ColorTemp_Map_Addr = data_addr; //<2F><><EFBFBD>ð<EFBFBD><C3B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>ɺ<EFBFBD><C9BA><EFBFBD><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len++];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ɫ<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ַ:%d",temp_data);
|
|
|
|
|
|
|
|
|
|
|
|
temp_data = data[temp_len++];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ɫ<EFBFBD>»<EFBFBD>·ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d",temp_data);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : LOGIC_FILE_Analysis
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>SRAM<EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void LOGIC_FILE_Analysis(LOGICFILE_Content_Of_Statistical *Lfile_info,uint32_t data_len)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t read_addr = 0;
|
|
|
|
|
|
uint8_t temp_data[4] = {0};
|
|
|
|
|
|
uint16_t temp_frame_num = 0; //<2F><EFBFBD><DFBC>ܰ<EFBFBD><DCB0><EFBFBD>
|
|
|
|
|
|
uint16_t temp_frame_id = 0; //<2F><EFBFBD><DFBC><EFBFBD>ǰ<EFBFBD><C7B0>
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"LOGIC_FILE_Analysis Len:%d",data_len);
|
|
|
|
|
|
|
|
|
|
|
|
read_addr = SPIFLASH_LOGIC_DataStart_ADDRESS;
|
|
|
|
|
|
for(uint32_t i=0;i<data_len;i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
if((Flash_read_Byte(read_addr+Logic_D_Hear_L) == 0xCC) && (Flash_read_Byte(read_addr+Logic_D_Hear_H) == 0xC0))
|
|
|
|
|
|
{
|
|
|
|
|
|
uint16_t temp_len = 0;
|
|
|
|
|
|
Flash_Read(temp_data,4,read_addr+Logic_D_Len_L);
|
|
|
|
|
|
temp_len = temp_data[1];
|
|
|
|
|
|
temp_len <<= 8;
|
|
|
|
|
|
temp_len |= temp_data[0];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>ҵ<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><EFBFBD><EFBFBD>:%d",temp_len);
|
|
|
|
|
|
if(((i+temp_len) <= data_len) && (temp_len <= 1536)) //Ŀǰ<C4BF><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1024
|
|
|
|
|
|
{
|
|
|
|
|
|
uint16_t temp_crc = 0,data_crc = 0;
|
|
|
|
|
|
uint16_t data_frame = 0,data_sn = 0;
|
|
|
|
|
|
|
|
|
|
|
|
memset(Temp_Flash_Buff,0,sizeof(Temp_Flash_Buff));
|
|
|
|
|
|
|
|
|
|
|
|
Flash_Read(Temp_Flash_Buff,temp_len,read_addr);
|
|
|
|
|
|
temp_crc = NetCRC16_Data(Temp_Flash_Buff ,temp_len,Logic_D_CRC_L);
|
|
|
|
|
|
|
|
|
|
|
|
data_crc = Temp_Flash_Buff[Logic_D_CRC_H];
|
|
|
|
|
|
data_crc <<= 8;
|
|
|
|
|
|
data_crc |= Temp_Flash_Buff[Logic_D_CRC_L];
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"CRCУ<EFBFBD><EFBFBD>:%04X %04X",data_crc,temp_crc);
|
|
|
|
|
|
|
|
|
|
|
|
if(data_crc == temp_crc)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"CRCУ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
data_frame = Temp_Flash_Buff[Logic_D_FrameNum_H];
|
|
|
|
|
|
data_frame <<= 8;
|
|
|
|
|
|
data_frame |= Temp_Flash_Buff[Logic_D_FrameNum_L];
|
|
|
|
|
|
|
|
|
|
|
|
data_sn = Temp_Flash_Buff[Logic_D_Frame_H];
|
|
|
|
|
|
data_sn <<= 8;
|
|
|
|
|
|
data_sn |= Temp_Flash_Buff[Logic_D_Frame_L];
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic Data SN:%d,NUM:%d",data_sn,data_frame);
|
|
|
|
|
|
|
|
|
|
|
|
if((temp_frame_num != 0x00) && (temp_frame_num != data_frame)) Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Frame<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
if((temp_frame_id != 0x00) && ((temp_frame_id+1) != data_sn)) Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰFrame SN<53><4E><EFBFBD><EFBFBD>");
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Print_Buff(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>֡<EFBFBD><EFBFBD><EFBFBD><EFBFBD>" ,Temp_Flash_Buff,temp_len);
|
|
|
|
|
|
|
|
|
|
|
|
temp_frame_id = data_sn;
|
|
|
|
|
|
temp_frame_num = data_frame;
|
|
|
|
|
|
|
|
|
|
|
|
switch(Temp_Flash_Buff[Logic_D_FrameType])
|
|
|
|
|
|
{
|
|
|
|
|
|
case Logic_FrameType_LogicInfo:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic_FrameType_LogicInfo - <20><EFBFBD><DFBC><EFBFBD>Ϣ");
|
|
|
|
|
|
Logic_FrameType_LogicInfo_TempProcessing(&Temp_Flash_Buff[Logic_D_Para],temp_len - Logic_D_Para);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Logic_FrameType_Global:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic_FrameType_Global - ȫ<><C8AB><EFBFBD><EFBFBD>Ϣ");
|
|
|
|
|
|
Logic_FrameType_Global_TempProcessing(&Temp_Flash_Buff[Logic_D_Para],temp_len - Logic_D_Para);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Logic_FrameType_DeviceExist:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic_FrameType_DeviceExist - <20>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Logic_FrameType_DeviceExist_TempProcessing(read_addr,Lfile_info,&Temp_Flash_Buff[Logic_D_Para],temp_len - Logic_D_Para);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Logic_FrameType_DeviceAction:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic_FrameType_DeviceAction - <20>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>");
|
|
|
|
|
|
Logic_FrameType_DeviceAction_TempProcessing(read_addr,Lfile_info,&Temp_Flash_Buff[Logic_D_Para],temp_len - Logic_D_Para);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#if RS485_MUSIC_BLW_Flag
|
|
|
|
|
|
case Logic_FrameType_VoiceMap:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic_FrameType_VoiceMap - С<><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3>");
|
|
|
|
|
|
Logic_FrameType_VoiceMap_TempProcessing(read_addr,Lfile_info,&Temp_Flash_Buff[Logic_D_Para],temp_len - Logic_D_Para);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if RS485_PB20Fun_Flag
|
|
|
|
|
|
case Logic_FrameType_DevCheckMap:
|
|
|
|
|
|
Logic_FrameType_DevCheckMap_TempProcessing(read_addr,Lfile_info,&temp_buff[Logic_D_Para],temp_len - Logic_D_Para);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if Dev_Nor_VirtualCard_Flag
|
|
|
|
|
|
case Logic_FrameType_VCCondition:
|
|
|
|
|
|
Logic_FrameType_VCCondition_TempProcessing(read_addr,Lfile_info,&Temp_Flash_Buff[Logic_D_Para],temp_len - Logic_D_Para);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Logic_FrameType_VCPortInfor:
|
|
|
|
|
|
Logic_FrameType_VCPortInfor_TempProcessing(read_addr,Lfile_info,&Temp_Flash_Buff[Logic_D_Para],temp_len - Logic_D_Para);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Logic_FrameType_VCProperty:
|
|
|
|
|
|
Logic_FrameType_VCProperty_TempProcessing(read_addr,Lfile_info,&Temp_Flash_Buff[Logic_D_Para],temp_len - Logic_D_Para);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
case Logic_FrameType_ColorTempMap:
|
|
|
|
|
|
Logic_FrameType_ColorTempMap_TempProcessing(read_addr,Lfile_info,&Temp_Flash_Buff[Logic_D_Para],temp_len - Logic_D_Para);
|
|
|
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
read_addr+=temp_len-1;
|
|
|
|
|
|
i+=temp_len - 1;
|
|
|
|
|
|
}else {
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"CRCУ<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>!%04X %04X",data_crc,temp_crc);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><EFBFBD>Ȳ<EFBFBD><EFBFBD>ڷ<EFBFBD>Χ<EFBFBD><EFBFBD>:%08X - %d",read_addr,temp_len);
|
|
|
|
|
|
}
|
|
|
|
|
|
}else {
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݰ<EFBFBD>ͷ! %d - %08x",i,read_addr);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
read_addr++;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_Device_Add_To_List(uint8_t type,uint8_t *data,uint16_t len)
|
|
|
|
|
|
{
|
|
|
|
|
|
LOGICFILE_DEVICE_INFO temp_dev_info;
|
|
|
|
|
|
|
|
|
|
|
|
memcpy(&temp_dev_info,data,sizeof(LOGICFILE_DEVICE_INFO));
|
|
|
|
|
|
|
|
|
|
|
|
if(temp_dev_info.port != type)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݶ˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><EFBFBD><EFBFBD>!");
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
switch(temp_dev_info.port)
|
|
|
|
|
|
{
|
|
|
|
|
|
case Bus_port:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"-------Bus<75><73><EFBFBD><EFBFBD>-------");
|
|
|
|
|
|
switch(temp_dev_info.type)
|
|
|
|
|
|
{
|
|
|
|
|
|
case Dev_Host_HVout:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Bus<75><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF><EFBFBD>̵<EFBFBD><CCB5><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_Nor_Dev_HVout_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_BUS_C5IO:
|
|
|
|
|
|
|
|
|
|
|
|
BLV_BUS_CSIO_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_C5MUSIC_Type:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD>ӱ<EFBFBD><D3B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_BUS_C5MUSIC_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#if RS485_LED_Flag
|
|
|
|
|
|
case DEV_RS485_PWM:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD><EFBFBD>C12<31><32><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLW_RS485_LED_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if RS485_LCD_1602_Flag
|
|
|
|
|
|
case DEV_RS485_LCD:
|
|
|
|
|
|
BLW_RS485_LCD_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>LCD1602<EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if RS485_PB20Fun_Flag
|
|
|
|
|
|
case Dev_Rs485_PB20:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>PB20<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLV_RS485_PB20_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Polling_Port:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"-------<2D><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>---------");
|
|
|
|
|
|
switch(temp_dev_info.type)
|
|
|
|
|
|
{
|
|
|
|
|
|
case Dev_Host_HVout:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD><EFBFBD>485<38><35>ѯ<EFBFBD>̵<EFBFBD><CCB5><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_Nor_Dev_HVout_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_SWT: //<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD><EFBFBD>485<38><35>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLW_RS485_Switch_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_TEMP:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD>¿<EFBFBD><C2BF><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLW_RS485_TempFun_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#if Dev_485_Card_Polling_Flag
|
|
|
|
|
|
case DEV_RS485_CARD:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD>Ӳ忨ȡ<E5BFA8><C8A1><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_RS485_Card_Data_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if Dev_485_IrSend_Polling_Flag
|
|
|
|
|
|
// case DEV_IRTYPE:
|
|
|
|
|
|
// //Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD>Ӻ<EFBFBD><D3BA><EFBFBD>ת<EFBFBD><D7AA><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
// RS485_IrSend_Data_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
// break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if RS485_LED_Flag
|
|
|
|
|
|
case DEV_RS485_PWM:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯPWM<57><4D><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d, <20><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD>:%d",temp_dev_info.addr,temp_dev_info.version);
|
|
|
|
|
|
//BLW_RS485_LED_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
case DEV_RS485_STRIP:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD><EFBFBD>RGB<47><42><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
// BLV_485_Dev_RGB_Light_Belt_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
// BLV_485_Dev_RGB_Light_Belt_Init(DevBuf[DEVDATALEN*i + 1]);
|
|
|
|
|
|
// Poll485_Info.device_num += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#if Dev_485_Pir_Flag
|
|
|
|
|
|
case Dev_Host_LVinput:
|
|
|
|
|
|
switch(temp_dev_info.version)
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x02: //485<38><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD><EFBFBD>485<38><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLV_485_Dev_Pir_Data_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
Poll485_Info.device_num += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if RS485_WxLock_Flag
|
|
|
|
|
|
case DEV_RS485_WxLock:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD><EFBFBD><EFBFBD><CEA2><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLW_RS485_WeixinLockFun_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
case DEV_RS485_AirDetect:
|
|
|
|
|
|
#if RS485_AirDetect_Flag
|
|
|
|
|
|
// Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD>ӿ<EFBFBD><D3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLW_RS485_AirDetect_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
#endif
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_MUSIC: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><>ѯ<EFBFBD>˿<EFBFBD><CBBF><EFBFBD><EFBFBD><EFBFBD>485<38><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLW_RS485_Music_Data_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
// case Dev_RS485_CardState:
|
|
|
|
|
|
// BLW_RS485_CardState_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
// break;
|
|
|
|
|
|
#if RS485_FreshAir_Flag
|
|
|
|
|
|
case DEV_RS485_FreshAir:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ѯ<EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>485<EFBFBD>·<EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLW_RS485_FreshAirFun_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if RS485_FloorHeat_Flag
|
|
|
|
|
|
case DEV_RS485_HEATER:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ѯ<EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>485<EFBFBD>·<EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLW_RS485_FloorHeatFun_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
case Dev_Energy_Monitor:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ѯ<EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>485<EFBFBD>ܺļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_RS485_EnrgyMonitor_Data_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Active_Port:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"-------<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>---------");
|
|
|
|
|
|
switch(temp_dev_info.type)
|
|
|
|
|
|
{
|
|
|
|
|
|
case Dev_Host_HVout:
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD><EFBFBD>485<38><35><EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><CCB5><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_Nor_Dev_HVout_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#if RS485_Dev_IN_CH6
|
|
|
|
|
|
case Dev_Host_LVinput:
|
|
|
|
|
|
|
|
|
|
|
|
switch(temp_dev_info.version) //Э<><D0AD>
|
|
|
|
|
|
{
|
|
|
|
|
|
case 0x03: //4`185 6·<36><C2B7><EFBFBD><EFBFBD>
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD><EFBFBD>485 6·<36><C2B7><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLV_485_DEV_IN_CH6_Data_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
Act485_Info.device_num += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
case DEV_RS485_SWT:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>485<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLW_RS485_Switch_Init(DEVDATALEN, &DevBuf[DEVDATALEN*i]);//<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD>˿ڼ<CBBF><DABC><EFBFBD><EFBFBD>ں<EFBFBD><DABA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
//BLW_RS485_Switch_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
case DEV_RS485_TEMP:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¿<EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLW_RS485_TempFun_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#if RS485_LED_Flag
|
|
|
|
|
|
case DEV_RS485_PWM:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PWM<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLW_RS485_LED_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if RS485_RFGatewayHost_Flag
|
|
|
|
|
|
case DEV_RS485_RFGatewayHost: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLW_RS485_RF_GatewayHost_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
Act485_Info.device_num += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if RS485_WxLock_Flag
|
|
|
|
|
|
case DEV_RS485_WxLock:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLW_RS485_WeixinLockFun_Logic_Init(&temp_dev_info,data,len); //<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD>˿ڼ<CBBF><DABC><EFBFBD><EFBFBD>ں<EFBFBD><DABA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if RS485_MUSIC_BLW_Flag
|
|
|
|
|
|
case DEV_XiaoBao_Type:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLV_485_Dev_XiaoBao_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
//BLV_485_Dev_XiaoBao_Init(DevBuf[DEVDATALEN*i + 1]);
|
|
|
|
|
|
Act485_Info.device_num += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
case DEV_RS485_MUSIC: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLW_RS485_Music_Data_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#if RS485_AirReveal_Flag
|
|
|
|
|
|
case DEV_RS485_AirReveal: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLW_RS485_AirReveal_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
Act485_Info.device_num += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
case DEV_PCTEST_TYPE:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>PC<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_TimeCtrl: //ʱ<><CAB1><EFBFBD>豸
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_485_Dev_Time_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
Act485_Info.device_num += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#if RS485_Curtain_Flag
|
|
|
|
|
|
case DEV_RS485_CURTAIN:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>485<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLW_RS485_Curtain_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
// case Dev_RS485_CardState:
|
|
|
|
|
|
// BLW_RS485_CardState_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
// break;
|
|
|
|
|
|
#if RS485_FreshAir_Flag
|
|
|
|
|
|
case DEV_RS485_FreshAir:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>485<EFBFBD>·<EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLW_RS485_FreshAirFun_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if RS485_FloorHeat_Flag
|
|
|
|
|
|
case DEV_RS485_HEATER:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>485<EFBFBD><EFBFBD>ů<EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLW_RS485_FloorHeatFun_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if RS485_Switch_Rotary_Flag
|
|
|
|
|
|
case Dev_Rs458_RotaryCtrl:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ť <20>豸<EFBFBD><E8B1B8>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLW_RS485_Rotary_Switch_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if Dev_485_Card_Active_Flag
|
|
|
|
|
|
case DEV_RS485_CARD:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>忨ȡ<EFBFBD><EFBFBD> <20>豸<EFBFBD><E8B1B8>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_RS485_Card_Data_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if Dev_485_IrSend_Active_Flag
|
|
|
|
|
|
// case DEV_IRTYPE:
|
|
|
|
|
|
// Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
// RS485_IrSend_Data_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
// break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if Dev_485_BLE_Music_Flag
|
|
|
|
|
|
case Dev_485_BLE_Music:
|
|
|
|
|
|
BLV_RS485_BLE_Music_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
case Dev_Energy_Monitor:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 485<38>ܺļ<DCBA><C4BC><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_RS485_EnrgyMonitor_Data_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
case 0x00:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"-------<2D><>ͨ<EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>---------");
|
|
|
|
|
|
switch(temp_dev_info.type)
|
|
|
|
|
|
{
|
|
|
|
|
|
case Dev_Host_Service:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ӷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
|
|
|
|
|
|
//BLV_Nor_Dev_Service_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
NorDevInfoGlobal.NorDeviceNum += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_LVinput:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLV_BUS_CSIO_DI_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
NorDevInfoGlobal.NorDeviceNum += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_HVout:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><EFBFBD><EFBFBD>̵<EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_Host_LVoutput:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_Nor_Dev_LVoutput_Init(temp_dev_info.addr);
|
|
|
|
|
|
NorDevInfoGlobal.NorDeviceNum += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
case Dev_NodeCurtain:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>Ӹɽӵ㴰<EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_Nor_Dev_Curtain_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
NorDevInfoGlobal.NorDeviceNum += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#if RS485_PB20_LD_Flag
|
|
|
|
|
|
case Dev_Rs485_PB20_LD:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>PB20_LED<EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLV_RS485_PB20_LED_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
NorDevInfoGlobal.NorDeviceNum += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if RS485_PB20_LS_Flag
|
|
|
|
|
|
case Dev_Rs485_PB20_LS:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>PB20_LS<EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLV_RS485_PB20_Strip_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
NorDevInfoGlobal.NorDeviceNum += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if RS485_PB20_Relay_Flag
|
|
|
|
|
|
case Dev_Rs485_PB20_Relay:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>PB20_Relay<EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLV_RS485_PB20_Relay_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
NorDevInfoGlobal.NorDeviceNum += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if Dev_Nor_NoCard_Flag
|
|
|
|
|
|
case DEV_Virtual_NoCard:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLV_Nor_Dev_NoCard_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
NorDevInfoGlobal.NorDeviceNum += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if Dev_Nor_VirtualCard_Flag
|
|
|
|
|
|
case DEV_Virtual_Card:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
BLV_Nor_Dev_VirtualCard_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
NorDevInfoGlobal.NorDeviceNum += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if Dev_Nor_ColorTemp
|
|
|
|
|
|
case DEV_Virtual_ColorTemp:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD>µ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_Nor_Dev_ColorTemp_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
NorDevInfoGlobal.NorDeviceNum += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if Dev_Nor_Carbon_Flag
|
|
|
|
|
|
case DEV_Carbon_Saved:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>̼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_Nor_Dev_Carbon_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
NorDevInfoGlobal.NorDeviceNum += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#if Dev_Nor_Scene_Restore_Flag
|
|
|
|
|
|
case Dev_Scene_Restore:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭ<EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_Nor_Dev_SceneRestore_For_Logic_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
NorDevInfoGlobal.NorDeviceNum += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
//2025-07-14,YYW,ȫ<><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><>ʼ<EFBFBD><CABC>
|
|
|
|
|
|
#if Dev_Nor_GlobalSet_Flag
|
|
|
|
|
|
case Dev_Virtual_GlobalSet:
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸 <20><>ַ: %d",temp_dev_info.addr);
|
|
|
|
|
|
//BLV_Nor_Dev_GlobalSet_Init(&temp_dev_info,data,len);
|
|
|
|
|
|
NorDevInfoGlobal.NorDeviceNum += 1;
|
|
|
|
|
|
break;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
}
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : Logic_File_To_Device_Init
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> - <EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
dev_info <EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>ṹ<EFBFBD><EFBFBD>
|
|
|
|
|
|
data <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
len <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>鳤<EFBFBD><EFBFBD>
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void Logic_File_Device_Init(LOGICFILE_Content_Of_Statistical *Lfile_info,uint32_t data_len)
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
uint32_t read_addr = 0;
|
|
|
|
|
|
uint8_t temp_data[4] = {0};
|
|
|
|
|
|
uint16_t temp_frame_num = 0; //<2F><EFBFBD><DFBC>ܰ<EFBFBD><DCB0><EFBFBD>
|
|
|
|
|
|
uint16_t temp_frame_id = 0; //<2F><EFBFBD><DFBC><EFBFBD>ǰ<EFBFBD><C7B0>
|
|
|
|
|
|
|
|
|
|
|
|
uint16_t device_Init_num = 0;
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"LOGIC_FILE_Analysis Len:%d",data_len);
|
|
|
|
|
|
|
|
|
|
|
|
read_addr = SPIFLASH_LOGIC_DataStart_ADDRESS;
|
|
|
|
|
|
for(uint32_t i=0;i<data_len;i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
if((Flash_read_Byte(read_addr+Logic_D_Hear_L) == 0xCC) && (Flash_read_Byte(read_addr+Logic_D_Hear_H) == 0xC0))
|
|
|
|
|
|
{
|
|
|
|
|
|
uint16_t temp_len = 0;
|
|
|
|
|
|
Flash_Read(temp_data,4,read_addr+Logic_D_Len_L);
|
|
|
|
|
|
temp_len = temp_data[1];
|
|
|
|
|
|
temp_len <<= 8;
|
|
|
|
|
|
temp_len |= temp_data[0];
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"%d <20>ҵ<EFBFBD><D2B5>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>:%d",i,temp_len);
|
|
|
|
|
|
if(((i+temp_len) < data_len) && (temp_len <= 1024)) //Ŀǰ<C4BF><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1024
|
|
|
|
|
|
{
|
|
|
|
|
|
uint16_t temp_crc = 0,data_crc = 0;
|
|
|
|
|
|
uint16_t data_frame = 0,data_sn = 0;
|
|
|
|
|
|
uint8_t temp_buff[temp_len];
|
|
|
|
|
|
memset(temp_buff,0,sizeof(temp_buff));
|
|
|
|
|
|
|
|
|
|
|
|
Flash_Read(temp_buff,temp_len,read_addr);
|
|
|
|
|
|
temp_crc = NetCRC16_Data(temp_buff ,temp_len,Logic_D_CRC_L);
|
|
|
|
|
|
|
|
|
|
|
|
data_crc = temp_buff[Logic_D_CRC_H];
|
|
|
|
|
|
data_crc <<= 8;
|
|
|
|
|
|
data_crc |= temp_buff[Logic_D_CRC_L];
|
|
|
|
|
|
|
|
|
|
|
|
if(data_crc == temp_crc)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"CRCУ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>");
|
|
|
|
|
|
|
|
|
|
|
|
data_frame = temp_buff[Logic_D_FrameNum_H];
|
|
|
|
|
|
data_frame <<= 8;
|
|
|
|
|
|
data_frame |= temp_buff[Logic_D_FrameNum_L];
|
|
|
|
|
|
|
|
|
|
|
|
data_sn = temp_buff[Logic_D_Frame_H];
|
|
|
|
|
|
data_sn <<= 8;
|
|
|
|
|
|
data_sn |= temp_buff[Logic_D_Frame_L];
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic Data SN:%d,NUM:%d",data_sn,data_frame);
|
|
|
|
|
|
|
|
|
|
|
|
if((temp_frame_num != 0x00) && (temp_frame_num != data_frame)) Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Frame<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
if((temp_frame_id != 0x00) && ((temp_frame_id+1) != data_sn)) Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰFrame SN<53><4E><EFBFBD><EFBFBD>");
|
|
|
|
|
|
|
|
|
|
|
|
temp_frame_id = data_sn;
|
|
|
|
|
|
temp_frame_num = data_frame;
|
|
|
|
|
|
|
|
|
|
|
|
if(temp_buff[Logic_D_FrameType] == Logic_FrameType_DeviceExist)
|
|
|
|
|
|
{
|
|
|
|
|
|
//Logic_Device_Add_To_List(&temp_buff[Logic_D_Para],temp_len - Logic_D_Para);
|
|
|
|
|
|
|
|
|
|
|
|
device_Init_num++;
|
|
|
|
|
|
if(Lfile_info->device_num <= device_Init_num) {
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic File <20>豸<EFBFBD><E8B1B8>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
read_addr+=temp_len-1;
|
|
|
|
|
|
i+=temp_len - 1;
|
|
|
|
|
|
}else {
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"CRCУ<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>!");
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><EFBFBD>Ȳ<EFBFBD><EFBFBD>ڷ<EFBFBD>Χ<EFBFBD><EFBFBD>:%08X - %d",read_addr,temp_len);
|
|
|
|
|
|
}
|
|
|
|
|
|
}else {
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݰ<EFBFBD>ͷ! %d - %08x",i,read_addr);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
read_addr++;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : SRAM_Dev_Data_Check
|
|
|
|
|
|
* Description : SRAM <EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) void SRAM_Dev_Data_Check(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint16_t i; //<2F><><EFBFBD><EFBFBD><EFBFBD>豸
|
|
|
|
|
|
uint32_t Dev_processing_addr;
|
|
|
|
|
|
Device_Public_Information_G BUS_Public; //<2F><><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
for(i = 0; i < DevActionGlobal.DevNum; i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dev_processing_addr = SRAM_Device_List_Start_Addr + i*SRAM_Device_List_Size;
|
|
|
|
|
|
SRAM_DMA_Read_Buff((uint8_t *)&BUS_Public, sizeof(Device_Public_Information_G), Dev_processing_addr); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><D0B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ǰ<EFBFBD>豸<EFBFBD>±<EFBFBD>:%d,<2C><>ַ:%08X<38><58><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>:%d<><64><EFBFBD>豸<EFBFBD><E8B1B8>ַ:%d", i, Dev_processing_addr, BUS_Public.type, BUS_Public.addr);
|
|
|
|
|
|
Dbg_Print_Buff(DBG_BIT_NET_STATUS_bit,"BUS_Public Data:",(uint8_t *)&BUS_Public, sizeof(BUS_Public));
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
|
|
|
|
* Function Name : LOGIC_FILE_Check
|
|
|
|
|
|
* Description : <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>SRAM<EFBFBD><EFBFBD>
|
|
|
|
|
|
* Input :
|
|
|
|
|
|
* Return :
|
|
|
|
|
|
*******************************************************************************/
|
|
|
|
|
|
__attribute__((section(".non_0_wait"))) uint8_t LOGIC_FILE_Check(void)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t temp = 0;
|
|
|
|
|
|
uint32_t file_len = 0;
|
|
|
|
|
|
uint8_t file_info[24];
|
|
|
|
|
|
uint8_t md5[16];
|
|
|
|
|
|
LOGICFILE_Content_Of_Statistical Lfile_stat;
|
|
|
|
|
|
|
|
|
|
|
|
memset(md5,0,sizeof(md5));
|
|
|
|
|
|
memset(file_info,0,sizeof(file_info));
|
|
|
|
|
|
memset(&Lfile_stat,0,sizeof(LOGICFILE_Content_Of_Statistical)); //<2F>ļ<EFBFBD>ͳ<EFBFBD><CDB3>
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><>ȡMD5ֵ<35><D6B5>У<EFBFBD><D0A3>
|
|
|
|
|
|
Flash_Read(file_info,24,SPIFLASH_LOGIC_DataFlag_ADDRESS);
|
|
|
|
|
|
|
|
|
|
|
|
temp = file_info[3];
|
|
|
|
|
|
temp <<= 8;
|
|
|
|
|
|
temp |= file_info[2];
|
|
|
|
|
|
temp <<= 8;
|
|
|
|
|
|
temp |= file_info[1];
|
|
|
|
|
|
temp <<= 8;
|
|
|
|
|
|
temp |= file_info[0];
|
|
|
|
|
|
|
|
|
|
|
|
if(temp == LOGIC_DataFlag)
|
|
|
|
|
|
{
|
|
|
|
|
|
file_len = file_info[7];
|
|
|
|
|
|
file_len <<= 8;
|
|
|
|
|
|
file_len |= file_info[6];
|
|
|
|
|
|
file_len <<= 8;
|
|
|
|
|
|
file_len |= file_info[5];
|
|
|
|
|
|
file_len <<= 8;
|
|
|
|
|
|
file_len |= file_info[4];
|
|
|
|
|
|
|
|
|
|
|
|
if((file_len != 0x00) &&(file_len >= 0x70000))
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȳ<EFBFBD><EFBFBD><EFBFBD>:%08X",file_len);
|
|
|
|
|
|
return 0x01;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
MD5Digest_FLASH(SPIFLASH_LOGIC_DataStart_ADDRESS, file_len,(char *)&md5[0]);
|
|
|
|
|
|
|
|
|
|
|
|
if(0==strncmp((const char *)md5,(const char *)&file_info[8],16))
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"MD5У<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!");
|
|
|
|
|
|
}else {
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"MD5У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Len:%08X",file_len);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>Md5<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X%02X,%02X,%02X,%02X,%02X,%02X",md5[0],md5[1],md5[2],md5[3],md5[4],md5[5],md5[6],md5[7],md5[8],md5[9],md5[10],md5[11],md5[12],md5[13],md5[14],md5[15]);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"UDP Md5:%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X,%02X",\
|
|
|
|
|
|
file_info[8],file_info[9],\
|
|
|
|
|
|
file_info[10],file_info[11],\
|
|
|
|
|
|
file_info[12],file_info[13],\
|
|
|
|
|
|
file_info[14],file_info[15],\
|
|
|
|
|
|
file_info[16],file_info[17],\
|
|
|
|
|
|
file_info[18],file_info[19],\
|
|
|
|
|
|
file_info[21],file_info[21],\
|
|
|
|
|
|
file_info[22],file_info[23]);
|
|
|
|
|
|
return 0x01;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*<2A>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD> - <20><>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>飬<EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>Ե<EFBFBD><D4B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|
|
|
|
|
LOGIC_FILE_Analysis(&Lfile_stat,file_len);
|
|
|
|
|
|
|
|
|
|
|
|
}else {
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>־λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%08X",temp);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"--------------------");
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%d",Lfile_stat.device_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"--BUS<55>豸<EFBFBD><E8B1B8><EFBFBD>ڣ<EFBFBD>%d",Lfile_stat.Bus_device_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"--Polling<6E>豸<EFBFBD><E8B1B8><EFBFBD>ڣ<EFBFBD>%d",Lfile_stat.Polling_device_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"--Active<76>豸<EFBFBD><E8B1B8><EFBFBD>ڣ<EFBFBD>%d",Lfile_stat.Active_device_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"--<2D><>ͨ<EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD>ڣ<EFBFBD>%d",Lfile_stat.Nor_device_num);
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"--------------------");
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%d",Lfile_stat.active_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"--------------------");
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%d",Lfile_stat.voicemap_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Ѳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%d",Lfile_stat.devcheckmap_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"--------------------");
|
|
|
|
|
|
|
|
|
|
|
|
/*<2A><><EFBFBD><EFBFBD><DFBC><EFBFBD><EFBFBD>е<EFBFBD><D0B5>豸<EFBFBD><E8B1B8><EFBFBD>г<EFBFBD>ʼ<EFBFBD><CABC>*/
|
|
|
|
|
|
memset((void *)&BUS485_Info,0,sizeof(BLV_BUS_Manage_G));
|
|
|
|
|
|
memset((void *)&Poll485_Info,0,sizeof(BLV_POLL_Manage_G));
|
|
|
|
|
|
memset((void *)&Act485_Info,0,sizeof(BLV_ACTIVE_Manage_G));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SRAM_Write_DW(SRAM_Device_List_Start_Addr,SRAM_BUS_Device_List_Addr);
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD>BUS<55>豸
|
|
|
|
|
|
for(uint8_t i=0;i<Lfile_stat.Bus_device_num;i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t data_addr = Lfile_stat.Bus_device_addr[i];
|
|
|
|
|
|
uint16_t temp_crc = 0,data_crc = 0;
|
|
|
|
|
|
uint16_t data_frame = 0,data_sn = 0;
|
|
|
|
|
|
uint16_t data_len = 0;
|
|
|
|
|
|
|
|
|
|
|
|
Flash_Read(file_info,4,data_addr+Logic_D_Len_L);
|
|
|
|
|
|
|
|
|
|
|
|
data_len = file_info[1];
|
|
|
|
|
|
data_len <<= 8;
|
|
|
|
|
|
data_len |= file_info[0];
|
|
|
|
|
|
|
|
|
|
|
|
uint8_t dev_buff[data_len];
|
|
|
|
|
|
memset(dev_buff,0,sizeof(dev_buff));
|
|
|
|
|
|
|
|
|
|
|
|
Flash_Read(dev_buff,data_len,data_addr);
|
|
|
|
|
|
temp_crc = NetCRC16_Data(dev_buff ,data_len,Logic_D_CRC_L);
|
|
|
|
|
|
|
|
|
|
|
|
data_crc = dev_buff[Logic_D_CRC_H];
|
|
|
|
|
|
data_crc <<= 8;
|
|
|
|
|
|
data_crc |= dev_buff[Logic_D_CRC_L];
|
|
|
|
|
|
|
|
|
|
|
|
if(data_crc == temp_crc)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"CRCУ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>");
|
|
|
|
|
|
|
|
|
|
|
|
data_frame = dev_buff[Logic_D_FrameNum_H];
|
|
|
|
|
|
data_frame <<= 8;
|
|
|
|
|
|
data_frame |= dev_buff[Logic_D_FrameNum_L];
|
|
|
|
|
|
|
|
|
|
|
|
data_sn = dev_buff[Logic_D_Frame_H];
|
|
|
|
|
|
data_sn <<= 8;
|
|
|
|
|
|
data_sn |= dev_buff[Logic_D_Frame_L];
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic Data SN:%d,NUM:%d",data_sn,data_frame);
|
|
|
|
|
|
|
|
|
|
|
|
if(dev_buff[Logic_D_FrameType] == Logic_FrameType_DeviceExist)
|
|
|
|
|
|
{
|
|
|
|
|
|
Logic_Device_Add_To_List(Bus_port,&dev_buff[Logic_D_Para],data_len - Logic_D_Para);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"BUS<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d", BUS485_Info.device_num);
|
|
|
|
|
|
BUS485_Info.Last_list_addr = SRAM_Device_List_Start_Addr;
|
|
|
|
|
|
BUS485_Info.port_mode = Port_Normal_Mode;
|
|
|
|
|
|
|
|
|
|
|
|
BUS485_Info.baud = 115200;
|
|
|
|
|
|
BUS485_Info.BaudRateCfg = &UART3_ChangeBaud;
|
|
|
|
|
|
BUS485_Info.BUS_Start = B_IDLE;
|
|
|
|
|
|
/*BLV_BUS<55>˿ڳ<CBBF>ʼ<EFBFBD><CABC>*/
|
|
|
|
|
|
UARTx_Init(UART_3,BUS485_Info.baud);
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"BUS485 Device Info Endaddr:%08X ---",SRAM_Read_DW(SRAM_BUS_Device_List_Addr));
|
|
|
|
|
|
|
|
|
|
|
|
Poll485_Info.Last_list_addr = SRAM_Read_DW(SRAM_BUS_Device_List_Addr);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"Poll485_Info addr:%08X ----",Poll485_Info.Last_list_addr);
|
|
|
|
|
|
|
|
|
|
|
|
SRAM_Write_DW(Poll485_Info.Last_list_addr,SRAM_POLL_Device_List_Addr); //<2F><>ʼ<EFBFBD><CABC>Polling<6E><67>ʼ<EFBFBD><CABC>ַ
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD>豸
|
|
|
|
|
|
for(uint8_t i=0;i<Lfile_stat.Polling_device_num;i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t data_addr = Lfile_stat.Polling_device_addr[i];
|
|
|
|
|
|
uint16_t temp_crc = 0,data_crc = 0;
|
|
|
|
|
|
uint16_t data_frame = 0,data_sn = 0;
|
|
|
|
|
|
uint16_t data_len = 0;
|
|
|
|
|
|
|
|
|
|
|
|
Flash_Read(file_info,4,data_addr+Logic_D_Len_L);
|
|
|
|
|
|
|
|
|
|
|
|
data_len = file_info[1];
|
|
|
|
|
|
data_len <<= 8;
|
|
|
|
|
|
data_len |= file_info[0];
|
|
|
|
|
|
|
|
|
|
|
|
uint8_t dev_buff[2048];
|
|
|
|
|
|
memset(dev_buff,0,sizeof(dev_buff));
|
|
|
|
|
|
|
|
|
|
|
|
Flash_Read(dev_buff,data_len,data_addr);
|
|
|
|
|
|
temp_crc = NetCRC16_Data(dev_buff ,data_len,Logic_D_CRC_L);
|
|
|
|
|
|
|
|
|
|
|
|
data_crc = dev_buff[Logic_D_CRC_H];
|
|
|
|
|
|
data_crc <<= 8;
|
|
|
|
|
|
data_crc |= dev_buff[Logic_D_CRC_L];
|
|
|
|
|
|
|
|
|
|
|
|
if(data_crc == temp_crc)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"CRCУ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>");
|
|
|
|
|
|
|
|
|
|
|
|
data_frame = dev_buff[Logic_D_FrameNum_H];
|
|
|
|
|
|
data_frame <<= 8;
|
|
|
|
|
|
data_frame |= dev_buff[Logic_D_FrameNum_L];
|
|
|
|
|
|
|
|
|
|
|
|
data_sn = dev_buff[Logic_D_Frame_H];
|
|
|
|
|
|
data_sn <<= 8;
|
|
|
|
|
|
data_sn |= dev_buff[Logic_D_Frame_L];
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic Data SN:%d,NUM:%d",data_sn,data_frame);
|
|
|
|
|
|
|
|
|
|
|
|
if(dev_buff[Logic_D_FrameType] == Logic_FrameType_DeviceExist)
|
|
|
|
|
|
{
|
|
|
|
|
|
Logic_Device_Add_To_List(Polling_Port,&dev_buff[Logic_D_Para],data_len - Logic_D_Para);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Dbg_Println(DBG_BIT_SYS_STATUS_bit,"Ĭ<><C4AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD>忨״̬ͬ<CCAC><CDAC><EFBFBD>豸");
|
|
|
|
|
|
// BLW_RS485_CardState_AddTo_PollingPort(); //2023-10-31
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d", Poll485_Info.device_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"BLV_POLL_dev END:%08X",SRAM_Read_DW(SRAM_POLL_Device_List_Addr));
|
|
|
|
|
|
|
|
|
|
|
|
/*<2A>˿ڳ<CBBF>ʼ<EFBFBD><CABC>*/
|
|
|
|
|
|
Poll485_Info.port_mode = Port_Normal_Mode;
|
|
|
|
|
|
Poll485_Info.baud = 9600;
|
|
|
|
|
|
|
|
|
|
|
|
#if (USE_CORE_TYPE == 1) //ʹ<><CAB9>C1F<31><46><EFBFBD>İ<EFBFBD>
|
|
|
|
|
|
Poll485_Info.BaudRateCfg = &UART0_ChangeBaud;
|
|
|
|
|
|
USART_INIT(USART_0,Poll485_Info.baud); //C1F<31><46><EFBFBD><EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD>Ǵ<EFBFBD><C7B4><EFBFBD>0
|
|
|
|
|
|
#elif (USE_CORE_TYPE == 2) //ʹ<><CAB9>C1<43><31><EFBFBD>İ<EFBFBD>
|
|
|
|
|
|
Poll485_Info.BaudRateCfg = &UART1_ChangeBaud;
|
|
|
|
|
|
USART_INIT(USART_1,Poll485_Info.baud); //C1<43><31><EFBFBD><EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD>Ǵ<EFBFBD><C7B4><EFBFBD>1
|
|
|
|
|
|
#endif //USE_CORE_TYPE == CORE_TYPE_C1F
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Act485_Info.Last_list_addr = SRAM_Read_DW(SRAM_POLL_Device_List_Addr); //<2F><><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>ʼ<EFBFBD><CABC>ַ
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"Act485_Info addr:%08X ----",Act485_Info.Last_list_addr);
|
|
|
|
|
|
SRAM_Write_DW(Act485_Info.Last_list_addr,SRAM_ACTIVE_Device_List_Addr); //<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>Ϣ<EFBFBD><CFA2>ʼ<EFBFBD><CABC>ַ
|
|
|
|
|
|
Act485_Info.device_num = 0;
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸
|
|
|
|
|
|
for(uint8_t i=0;i<Lfile_stat.Active_device_num;i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t data_addr = Lfile_stat.Active_device_addr[i];
|
|
|
|
|
|
uint16_t temp_crc = 0,data_crc = 0;
|
|
|
|
|
|
uint16_t data_frame = 0,data_sn = 0;
|
|
|
|
|
|
uint16_t data_len = 0;
|
|
|
|
|
|
|
|
|
|
|
|
Flash_Read(file_info,4,data_addr+Logic_D_Len_L);
|
|
|
|
|
|
|
|
|
|
|
|
data_len = file_info[1];
|
|
|
|
|
|
data_len <<= 8;
|
|
|
|
|
|
data_len |= file_info[0];
|
|
|
|
|
|
|
|
|
|
|
|
uint8_t dev_buff[2048];
|
|
|
|
|
|
memset(dev_buff,0,sizeof(dev_buff));
|
|
|
|
|
|
|
|
|
|
|
|
Flash_Read(dev_buff,data_len,data_addr);
|
|
|
|
|
|
temp_crc = NetCRC16_Data(dev_buff ,data_len,Logic_D_CRC_L);
|
|
|
|
|
|
|
|
|
|
|
|
data_crc = dev_buff[Logic_D_CRC_H];
|
|
|
|
|
|
data_crc <<= 8;
|
|
|
|
|
|
data_crc |= dev_buff[Logic_D_CRC_L];
|
|
|
|
|
|
|
|
|
|
|
|
if(data_crc == temp_crc)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"CRCУ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>");
|
|
|
|
|
|
|
|
|
|
|
|
data_frame = dev_buff[Logic_D_FrameNum_H];
|
|
|
|
|
|
data_frame <<= 8;
|
|
|
|
|
|
data_frame |= dev_buff[Logic_D_FrameNum_L];
|
|
|
|
|
|
|
|
|
|
|
|
data_sn = dev_buff[Logic_D_Frame_H];
|
|
|
|
|
|
data_sn <<= 8;
|
|
|
|
|
|
data_sn |= dev_buff[Logic_D_Frame_L];
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic Data SN:%d,NUM:%d",data_sn,data_frame);
|
|
|
|
|
|
|
|
|
|
|
|
if(dev_buff[Logic_D_FrameType] == Logic_FrameType_DeviceExist)
|
|
|
|
|
|
{
|
|
|
|
|
|
Logic_Device_Add_To_List(Active_Port,&dev_buff[Logic_D_Para],data_len - Logic_D_Para);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
/*<2A><><EFBFBD>Ӳ<EFBFBD><D3B2>Խӿ<D4BD>*/
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Ĭ<><C4AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PC<50><43><EFBFBD>Խӿ<D4BD> ");
|
|
|
|
|
|
//BLV_PC_DEVICE_TEST_Init();
|
|
|
|
|
|
//Act485_Info.device_num += 1;
|
|
|
|
|
|
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_SYS_STATUS_bit,"Ĭ<><C4AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>忨״̬ͬ<CCAC><CDAC><EFBFBD>豸");
|
|
|
|
|
|
//BLW_RS485_CardState_AddTo_ActivePort(); //2023-10-31
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d", Act485_Info.device_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"Active Device End List:%08X" , SRAM_Read_DW(SRAM_ACTIVE_Device_List_Addr));
|
|
|
|
|
|
|
|
|
|
|
|
Act485_Info.Act_Start = B_IDLE;
|
|
|
|
|
|
Act485_Info.baud = 9600;
|
|
|
|
|
|
Act485_Info.port_mode = Port_Normal_Mode;
|
|
|
|
|
|
Act485_Info.BaudRateCfg = &UART2_ChangeBaud;
|
|
|
|
|
|
/*<2A><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>*/
|
|
|
|
|
|
UARTx_Init(UART_2,Act485_Info.baud);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
temp = SRAM_Read_DW(SRAM_ACTIVE_Device_List_Addr);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"Act485 Device Info Endaddr:%08X ----",temp);
|
|
|
|
|
|
|
|
|
|
|
|
SRAM_Write_DW(temp,SRAM_NORMAL_Device_List_Addr);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ͨ<EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%08X",temp);
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD>豸
|
|
|
|
|
|
for(uint8_t i=0;i<Lfile_stat.Nor_device_num;i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
uint32_t data_addr = Lfile_stat.Nor_device_addr[i];
|
|
|
|
|
|
uint16_t temp_crc = 0,data_crc = 0;
|
|
|
|
|
|
uint16_t data_frame = 0,data_sn = 0;
|
|
|
|
|
|
uint16_t data_len = 0;
|
|
|
|
|
|
|
|
|
|
|
|
Flash_Read(file_info,4,data_addr+Logic_D_Len_L);
|
|
|
|
|
|
|
|
|
|
|
|
data_len = file_info[1];
|
|
|
|
|
|
data_len <<= 8;
|
|
|
|
|
|
data_len |= file_info[0];
|
|
|
|
|
|
|
|
|
|
|
|
uint8_t dev_buff[2048];
|
|
|
|
|
|
memset(dev_buff,0,sizeof(dev_buff));
|
|
|
|
|
|
|
|
|
|
|
|
Flash_Read(dev_buff,data_len,data_addr);
|
|
|
|
|
|
temp_crc = NetCRC16_Data(dev_buff ,data_len,Logic_D_CRC_L);
|
|
|
|
|
|
|
|
|
|
|
|
data_crc = dev_buff[Logic_D_CRC_H];
|
|
|
|
|
|
data_crc <<= 8;
|
|
|
|
|
|
data_crc |= dev_buff[Logic_D_CRC_L];
|
|
|
|
|
|
|
|
|
|
|
|
if(data_crc == temp_crc)
|
|
|
|
|
|
{
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"CRCУ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>");
|
|
|
|
|
|
|
|
|
|
|
|
data_frame = dev_buff[Logic_D_FrameNum_H];
|
|
|
|
|
|
data_frame <<= 8;
|
|
|
|
|
|
data_frame |= dev_buff[Logic_D_FrameNum_L];
|
|
|
|
|
|
|
|
|
|
|
|
data_sn = dev_buff[Logic_D_Frame_H];
|
|
|
|
|
|
data_sn <<= 8;
|
|
|
|
|
|
data_sn |= dev_buff[Logic_D_Frame_L];
|
|
|
|
|
|
|
|
|
|
|
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic Data SN:%d,NUM:%d",data_sn,data_frame);
|
|
|
|
|
|
|
|
|
|
|
|
if(dev_buff[Logic_D_FrameType] == Logic_FrameType_DeviceExist)
|
|
|
|
|
|
{
|
|
|
|
|
|
Logic_Device_Add_To_List(0x00,&dev_buff[Logic_D_Para],data_len - Logic_D_Para);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//Dbg_Println(DBG_BIT_SYS_STATUS_bit,"Ĭ<><C4AC><EFBFBD><EFBFBD><EFBFBD>Ӱ<EFBFBD><D3B0><EFBFBD><EFBFBD><EFBFBD>ҹ<EFBFBD><D2B9><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>豸");
|
|
|
|
|
|
//BLV_Nor_Dev_VirtualTime_Default_Init(); //2024-08-02
|
|
|
|
|
|
//NorDevInfoGlobal.NorDeviceNum++;
|
|
|
|
|
|
|
|
|
|
|
|
temp = SRAM_Read_DW(SRAM_NORMAL_Device_List_Addr);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"Nor Device Info Endaddr:%08X ----",temp);
|
|
|
|
|
|
|
|
|
|
|
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD><D0AD> - ɫ<>µ<EFBFBD><C2B5>ڻ<EFBFBD>·ӳ<C2B7><D3B3><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>*/
|
|
|
|
|
|
// if(Lfile_stat.ColorTemp_Map_Addr != 0x00)
|
|
|
|
|
|
// {
|
|
|
|
|
|
// uint32_t data_addr = Lfile_stat.ColorTemp_Map_Addr;
|
|
|
|
|
|
// uint16_t temp_crc = 0,data_crc = 0;
|
|
|
|
|
|
// uint16_t data_frame = 0,data_sn = 0;
|
|
|
|
|
|
// uint16_t data_len = 0;
|
|
|
|
|
|
//
|
|
|
|
|
|
// Flash_Read(file_info,4,data_addr+Logic_D_Len_L);
|
|
|
|
|
|
//
|
|
|
|
|
|
// data_len = file_info[1];
|
|
|
|
|
|
// data_len <<= 8;
|
|
|
|
|
|
// data_len |= file_info[0];
|
|
|
|
|
|
//
|
|
|
|
|
|
// uint8_t dev_buff[2048];
|
|
|
|
|
|
// memset(dev_buff,0,sizeof(dev_buff));
|
|
|
|
|
|
//
|
|
|
|
|
|
// Flash_Read(dev_buff,data_len,data_addr);
|
|
|
|
|
|
// temp_crc = NetCRC16_Data(dev_buff ,data_len,Logic_D_CRC_L);
|
|
|
|
|
|
//
|
|
|
|
|
|
// data_crc = dev_buff[Logic_D_CRC_H];
|
|
|
|
|
|
// data_crc <<= 8;
|
|
|
|
|
|
// data_crc |= dev_buff[Logic_D_CRC_L];
|
|
|
|
|
|
//
|
|
|
|
|
|
// if(data_crc == temp_crc)
|
|
|
|
|
|
// {
|
|
|
|
|
|
// Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"CRCУ<43><D0A3><EFBFBD>ɹ<EFBFBD>");
|
|
|
|
|
|
//
|
|
|
|
|
|
// data_frame = dev_buff[Logic_D_FrameNum_H];
|
|
|
|
|
|
// data_frame <<= 8;
|
|
|
|
|
|
// data_frame |= dev_buff[Logic_D_FrameNum_L];
|
|
|
|
|
|
//
|
|
|
|
|
|
// data_sn = dev_buff[Logic_D_Frame_H];
|
|
|
|
|
|
// data_sn <<= 8;
|
|
|
|
|
|
// data_sn |= dev_buff[Logic_D_Frame_L];
|
|
|
|
|
|
//
|
|
|
|
|
|
// Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"Logic Data SN:%d,NUM:%d",data_sn,data_frame);
|
|
|
|
|
|
//
|
|
|
|
|
|
// if(dev_buff[Logic_D_FrameType] == Logic_FrameType_ColorTempMap)
|
|
|
|
|
|
// {
|
|
|
|
|
|
// /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><DDBD>д<EFBFBD><D0B4><EFBFBD>*/
|
|
|
|
|
|
// data_addr = Find_Device_List_Information(DEV_Virtual_ColorTemp,dev_buff[Logic_D_Para]);
|
|
|
|
|
|
// if(data_addr != 0x00){
|
|
|
|
|
|
// Dev_ColorTemp_LoopBound(data_addr,&dev_buff[Logic_D_Para],data_len - Logic_D_Para);
|
|
|
|
|
|
// }else{
|
|
|
|
|
|
// Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"û<>ҵ<EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD>豸");
|
|
|
|
|
|
// }
|
|
|
|
|
|
// }
|
|
|
|
|
|
// }
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
DevActionGlobal.DevNum = BUS485_Info.device_num + Poll485_Info.device_num + Act485_Info.device_num + NorDevInfoGlobal.NorDeviceNum;
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"BUS485_Info.device_num:%d", BUS485_Info.device_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"Poll485_Info.device_num:%d", Poll485_Info.device_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"Act485_Info.device_num:%d", Act485_Info.device_num);
|
|
|
|
|
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"NorDevInfoGlobal.NorDeviceNum:%d", NorDevInfoGlobal.NorDeviceNum);
|
|
|
|
|
|
SRAM_Dev_Data_Check();
|
|
|
|
|
|
|
|
|
|
|
|
return 0x00;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|