修改:多联开关场景执行中增加回路判断
多联开关场景执行中增加回路判断,删除部分调试信息
This commit is contained in:
@@ -9,6 +9,8 @@
|
|||||||
#include "SPI_SRAM.h"
|
#include "SPI_SRAM.h"
|
||||||
#include "rw_logging.h"
|
#include "rw_logging.h"
|
||||||
#include "sram_mem_addr.h"
|
#include "sram_mem_addr.h"
|
||||||
|
#include "debug.h"
|
||||||
|
#include "rtc.h"
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
BLV_AUTHORIZE sys_authorize;
|
BLV_AUTHORIZE sys_authorize;
|
||||||
@@ -89,4 +91,43 @@ __attribute__((section(".non_0_wait"))) uint32_t Get_Authorize_UnixTime(void)
|
|||||||
return sys_authorize.expires_time;
|
return sys_authorize.expires_time;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*******************************************************************************
|
||||||
|
* Function Name : BLV_Authorize_Task
|
||||||
|
* Description : BLV<4C><56>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD>
|
||||||
|
*******************************************************************************/
|
||||||
|
__attribute__((section(".non_0_wait"))) void BLV_Authorize_Task(void)
|
||||||
|
{
|
||||||
|
static uint32_t sys_tick = 0;
|
||||||
|
uint32_t temp_unix = 0,curr_unix = 0;
|
||||||
|
|
||||||
|
if(SysTick_1ms - sys_tick > 10000)
|
||||||
|
{
|
||||||
|
sys_tick = SysTick_1ms;
|
||||||
|
|
||||||
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"RTCʱ<EFBFBD><EFBFBD>: 20%02X-%02X-%02X %02X:%02X:%02X <20><><EFBFBD><EFBFBD>%X",RTC_Raw_Data.year,RTC_Raw_Data.month,RTC_Raw_Data.day,RTC_Raw_Data.hour,RTC_Raw_Data.minute,RTC_Raw_Data.second,RTC_Raw_Data.week);
|
||||||
|
|
||||||
|
temp_unix = RTC_Conversion_To_Unix(&RTC_Raw_Data);
|
||||||
|
|
||||||
|
BLV_Authorize_Processing(temp_unix);
|
||||||
|
|
||||||
|
if(Get_Authorize_Lock_Status() == 0x01)
|
||||||
|
{
|
||||||
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"MCU<EFBFBD><EFBFBD>Ȩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%08X now:%08X-----",Get_Authorize_UnixTime(),temp_unix);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*<2A><><EFBFBD>в<EFBFBD><D0B2><EFBFBD>12ʱ<32>䱣<EFBFBD>棬<EFBFBD><E6A3AC>ʱ<EFBFBD>䱣<EFBFBD>浽Flash<73><68>*/
|
||||||
|
curr_unix = SRAM_Read_DW(SRAM_Register_Start_ADDRESS + Register_CurrentUsageTime_OFFSET);
|
||||||
|
if(temp_unix - curr_unix > 43200)
|
||||||
|
{
|
||||||
|
SRAM_Write_DW(temp_unix,SRAM_Register_Start_ADDRESS + Register_CurrentUsageTime_OFFSET);
|
||||||
|
Retain_Flash_Register_Data();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -3460,7 +3460,7 @@ __attribute__((section(".non_0_wait"))) void DevAction_DevAddr_Ctrl(
|
|||||||
|
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
* @Function Name : BLV_DevDly_Process
|
* @Function Name : BLV_DevDly_Process
|
||||||
* @Description : <20><>ʱ<EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
* @Description : <20><>ʱ<EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> -
|
||||||
* <20><>ʱ<EFBFBD>豸ִ<E8B1B8><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
* <20><>ʱ<EFBFBD>豸ִ<E8B1B8><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
||||||
* <20>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>
|
* <20>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>
|
||||||
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><D6B4>
|
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><D6B4>
|
||||||
@@ -3471,8 +3471,6 @@ __attribute__((section(".non_0_wait"))) void BLV_DevDly_Process(uint32_t dly_pro
|
|||||||
uint8_t KeepFlag = 0x00;
|
uint8_t KeepFlag = 0x00;
|
||||||
Dev_Output_Ctrl_ptr Dev_Output_Ctrl;
|
Dev_Output_Ctrl_ptr Dev_Output_Ctrl;
|
||||||
|
|
||||||
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"%s : %x",__func__,dly_processing_addr);
|
|
||||||
|
|
||||||
SRAM_DMA_Read_Buff((uint8_t *)&DevDlyInfo, sizeof(Struct_Dev_Dly), dly_processing_addr);
|
SRAM_DMA_Read_Buff((uint8_t *)&DevDlyInfo, sizeof(Struct_Dev_Dly), dly_processing_addr);
|
||||||
|
|
||||||
if( (DevDlyInfo.DlyExcuteFlag == 0x01) && (SysTick_1ms >= DevDlyInfo.DlyExcuteTime) )
|
if( (DevDlyInfo.DlyExcuteFlag == 0x01) && (SysTick_1ms >= DevDlyInfo.DlyExcuteTime) )
|
||||||
@@ -3484,6 +3482,7 @@ __attribute__((section(".non_0_wait"))) void BLV_DevDly_Process(uint32_t dly_pro
|
|||||||
|
|
||||||
if(DevDlyInfo.DevDlyCore.DevDlyAddr != 0x00)
|
if(DevDlyInfo.DevDlyCore.DevDlyAddr != 0x00)
|
||||||
{
|
{
|
||||||
|
Device_Public_Information_G BUS_Public;
|
||||||
switch(DevDlyInfo.DevDlyCore.DevType)
|
switch(DevDlyInfo.DevDlyCore.DevType)
|
||||||
{
|
{
|
||||||
case Dev_Host_HVout:
|
case Dev_Host_HVout:
|
||||||
@@ -3509,10 +3508,14 @@ __attribute__((section(".non_0_wait"))) void BLV_DevDly_Process(uint32_t dly_pro
|
|||||||
case DEV_Carbon_Saved:
|
case DEV_Carbon_Saved:
|
||||||
case Dev_Energy_Monitor:
|
case Dev_Energy_Monitor:
|
||||||
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ʱ<EFBFBD>豸ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d %d· <20><><EFBFBD><EFBFBD>: %X",DevDlyInfo.DevDlyCore.DevType, DevDlyInfo.DevDlyCore.DevOutputLoop ,DevDlyInfo.DevOutputType);
|
Dbg_Println(DBG_BIT_LOGIC_STATUS_bit,"<EFBFBD><EFBFBD>ʱ<EFBFBD>豸ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d %d· <20><><EFBFBD><EFBFBD>: %X",DevDlyInfo.DevDlyCore.DevType, DevDlyInfo.DevDlyCore.DevOutputLoop ,DevDlyInfo.DevOutputType);
|
||||||
Dev_Output_Ctrl = (Dev_Output_Ctrl_ptr)SRAM_Read_DW(DevDlyInfo.DevDlyCore.DevDlyAddr + Dev_Output_Ctrl_0);
|
|
||||||
if(Dev_Output_Ctrl != NULL)
|
if(BLV_Device_PublicInfo_Read_To_Struct(DevDlyInfo.DevDlyCore.DevDlyAddr,&BUS_Public) == 0x00)
|
||||||
{
|
{
|
||||||
Dev_Output_Ctrl(0x00, 0x00, DevDlyInfo.DevDlyCore.DevDlyAddr, DevDlyInfo.DevDlyCore.DevOutputLoop, DevDlyInfo.DevOutputType);
|
Dev_Output_Ctrl = (Dev_Output_Ctrl_ptr)BUS_Public.DevFunInfo.Dev_Output_Ctrl;
|
||||||
|
if(Dev_Output_Ctrl != NULL)
|
||||||
|
{
|
||||||
|
Dev_Output_Ctrl(0x00, 0x00, DevDlyInfo.DevDlyCore.DevDlyAddr, DevDlyInfo.DevDlyCore.DevOutputLoop, DevDlyInfo.DevOutputType);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case Dev_Host_Invalid:
|
case Dev_Host_Invalid:
|
||||||
@@ -3526,6 +3529,7 @@ __attribute__((section(".non_0_wait"))) void BLV_DevDly_Process(uint32_t dly_pro
|
|||||||
SRAM_DMA_Write_Buff((uint8_t *)&DevDlyInfo,sizeof(Struct_Dev_Dly),dly_processing_addr);
|
SRAM_DMA_Write_Buff((uint8_t *)&DevDlyInfo,sizeof(Struct_Dev_Dly),dly_processing_addr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//ִ<><D6B4><EFBFBD><EFBFBD>˸<EFBFBD><CBB8><EFBFBD><EFBFBD>
|
||||||
if( DevDlyInfo.DlyBlinkFlag == 0x01 )
|
if( DevDlyInfo.DlyBlinkFlag == 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>:%d %d· <20><><EFBFBD><EFBFBD>: %X",DevDlyInfo.DevDlyCore.DevType, DevDlyInfo.DevDlyCore.DevOutputLoop ,DevDlyInfo.DevOutputType); //<2F>̵<EFBFBD><CCB5><EFBFBD>״̬<D7B4><CCAC>ֵ
|
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>:%d %d· <20><><EFBFBD><EFBFBD>: %X",DevDlyInfo.DevDlyCore.DevType, DevDlyInfo.DevDlyCore.DevOutputLoop ,DevDlyInfo.DevOutputType); //<2F>̵<EFBFBD><CCB5><EFBFBD>״̬<D7B4><CCAC>ֵ
|
||||||
|
|||||||
@@ -247,9 +247,8 @@ typedef struct
|
|||||||
uint8_t DlyExcuteFlag; //<2F><>ʱִ<CAB1>б<EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>־<EFBFBD><D6BE>һ
|
uint8_t DlyExcuteFlag; //<2F><>ʱִ<CAB1>б<EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>־<EFBFBD><D6BE>һ
|
||||||
uint8_t DlyBlinkFlag; //<2F><>ʱ<EFBFBD><CAB1>˸<EFBFBD><CBB8>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>˸<EFBFBD><CBB8>־<EFBFBD><D6BE><EFBFBD><EFBFBD>һʱ<D2BB><CAB1><EFBFBD><EFBFBD>ʱִ<CAB1>б<EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD>һ Ҳ<>Ƕ<EFBFBD><C7B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־ 0Ϊ<30><CEAA><EFBFBD><EFBFBD> 1Ϊ<31><CEAA><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ֱ<><D6B1>ִ<EFBFBD><D6B4><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>
|
uint8_t DlyBlinkFlag; //<2F><>ʱ<EFBFBD><CAB1>˸<EFBFBD><CBB8>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>˸<EFBFBD><CBB8>־<EFBFBD><D6BE><EFBFBD><EFBFBD>һʱ<D2BB><CAB1><EFBFBD><EFBFBD>ʱִ<CAB1>б<EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD>һ Ҳ<>Ƕ<EFBFBD><C7B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־ 0Ϊ<30><CEAA><EFBFBD><EFBFBD> 1Ϊ<31><CEAA><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ֱ<><D6B1>ִ<EFBFBD><D6B4><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>
|
||||||
uint16_t DevOutputType; //<2F>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸ִ<E8B1B8>з<EFBFBD>ʽ<EFBFBD><CABD>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
uint16_t DevOutputType; //<2F>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸ִ<E8B1B8>з<EFBFBD>ʽ<EFBFBD><CABD>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
uint32_t DlyExcuteTime; //<EFBFBD><EFBFBD>ʱִ<EFBFBD><EFBFBD>ʱ<EFBFBD>䣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ʱ<EFBFBD>䱻<EFBFBD><EFBFBD>ֵ
|
uint32_t DlyExcuteTime; //ִ<><D6B4><EFBFBD><EFBFBD>ʱʱ<EFBFBD>䣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ʱ<EFBFBD>䱻<EFBFBD><EFBFBD>ֵ
|
||||||
Struct_Dev_Dly_Core DevDlyCore; //<2F><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> <20>ؼ<EFBFBD><D8BC><EFBFBD>Ϣ
|
Struct_Dev_Dly_Core DevDlyCore; //<2F><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> <20>ؼ<EFBFBD><D8BC><EFBFBD>Ϣ
|
||||||
|
|
||||||
Dev_Dly_Value DlyBlinkTime; //<2F><>˸Ƶ<CBB8><C6B5> 0201 Ϊ1S<31>л<EFBFBD> 0202 Ϊ2S<32>л<EFBFBD> <20><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD> Ϊ<><CEAA>ǰ<EFBFBD><C7B0>Ҫִ<D2AA>е<EFBFBD><D0B5><EFBFBD>չ<EFBFBD>豸<EFBFBD>±<EFBFBD>
|
Dev_Dly_Value DlyBlinkTime; //<2F><>˸Ƶ<CBB8><C6B5> 0201 Ϊ1S<31>л<EFBFBD> 0202 Ϊ2S<32>л<EFBFBD> <20><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD> Ϊ<><CEAA>ǰ<EFBFBD><C7B0>Ҫִ<D2AA>е<EFBFBD><D0B5><EFBFBD>չ<EFBFBD>豸<EFBFBD>±<EFBFBD>
|
||||||
}Struct_Dev_Dly; //<2F>豸<EFBFBD><E8B1B8>ʱ<EFBFBD>ṹ<EFBFBD>壬<EFBFBD><E5A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>չ<EFBFBD><D5B9><EFBFBD><EFBFBD><EFBFBD>豸 <20>̶<EFBFBD>16<31><36><EFBFBD>ֽ<EFBFBD>
|
}Struct_Dev_Dly; //<2F>豸<EFBFBD><E8B1B8>ʱ<EFBFBD>ṹ<EFBFBD>壬<EFBFBD><E5A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>չ<EFBFBD><D5B9><EFBFBD><EFBFBD><EFBFBD>豸 <20>̶<EFBFBD>16<31><36><EFBFBD>ֽ<EFBFBD>
|
||||||
|
|
||||||
|
|||||||
@@ -30,9 +30,9 @@ int main(void)
|
|||||||
SystemCoreClockUpdate();
|
SystemCoreClockUpdate();
|
||||||
Systick_Init();
|
Systick_Init();
|
||||||
|
|
||||||
UARTx_Init(UART_0,9600); //RS485<38><35>ѯ<EFBFBD>˿<EFBFBD>
|
UARTx_Init(UART_0,9600); //RS485<38><35>ѯ<EFBFBD>˿<EFBFBD>
|
||||||
UARTx_Init(UART_1,512000); //<2F><><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD>
|
UARTx_Init(UART_1,512000); //<2F><><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD>
|
||||||
UARTx_Init(UART_2,9600); //RS485<38><35><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
|
UARTx_Init(UART_2,9600); //RS485<38><35><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
|
||||||
UARTx_Init(UART_3,115200); //BUS<55><53><EFBFBD><EFBFBD>
|
UARTx_Init(UART_3,115200); //BUS<55><53><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
SYS_LED_Init();
|
SYS_LED_Init();
|
||||||
@@ -49,6 +49,7 @@ int main(void)
|
|||||||
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"DEV_ACTION_INFO Size:%d \r\n",sizeof(DEV_ACTION_INFO));
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"DEV_ACTION_INFO Size:%d \r\n",sizeof(DEV_ACTION_INFO));
|
||||||
|
|
||||||
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"Dev_Action_U64Cond Size:%d \r\n",sizeof(Dev_Action_U64Cond));
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"Dev_Action_U64Cond Size:%d \r\n",sizeof(Dev_Action_U64Cond));
|
||||||
|
Dbg_Println(DBG_BIT_SYS_STATUS_bit,"Struct_Dev_Dly Size:%d \r\n",sizeof(Struct_Dev_Dly));
|
||||||
|
|
||||||
BLV_DevAction_AllData_Init();
|
BLV_DevAction_AllData_Init();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user