|
|
@@ -194,7 +194,7 @@ static void app_init(META_DATA_S *meta)
|
|
|
{
|
|
|
flash_get_meta_data(meta);
|
|
|
FfLASH = NVIC_VECTTAB_FLASH;
|
|
|
- nvic_vector_table_set(NVIC_VECTTAB_FLASH,meta->rom_addr - NVIC_VECTTAB_FLASH);
|
|
|
+ nvic_vector_table_set(NVIC_VECTTAB_FLASH,0X08004000 - NVIC_VECTTAB_FLASH);
|
|
|
__enable_irq();
|
|
|
}
|
|
|
|
|
|
@@ -683,7 +683,7 @@ void switch_recode()
|
|
|
{
|
|
|
handle_detection[0] = 1;
|
|
|
uint8_t value = 0xFF;
|
|
|
- for(int i = RELAY_ChN_default-1;i >=0;i--)
|
|
|
+ for(int i = 0 ;i < RELAY_ChN_default;i++)
|
|
|
{
|
|
|
if(handle_status[i])
|
|
|
{
|
|
|
@@ -844,10 +844,9 @@ int main(void)
|
|
|
static uint8_t write_iic_flash = 0;
|
|
|
while(1)
|
|
|
{
|
|
|
-
|
|
|
-#if 0
|
|
|
- if((detection_value & 0x2) == 0)
|
|
|
- {
|
|
|
+//#if 1
|
|
|
+// if((detection_value & 0x1) == 0)
|
|
|
+// {
|
|
|
// for(int i = 0; i <RELAY_ChN_default / 2;i++)
|
|
|
// {
|
|
|
|
|
|
@@ -858,8 +857,32 @@ static uint8_t write_iic_flash = 0;
|
|
|
// //E
|
|
|
// //AT24CxxWriteOneByte(ERom_RL_ST_Addr,Eeprom_Rbuf[ERom_RL_ST_Addr]);
|
|
|
// }
|
|
|
+// }
|
|
|
// Eeprom_Rbuf[ERom_RL_ST_Addr] = DCPDU_Modbus_Reg[Mb_Dbuff_RL_ST_Addr] & Active_state_bit;
|
|
|
// RL_Rx_state = Eeprom_Rbuf[ERom_RL_ST_Addr];
|
|
|
+// Write_74hc573();
|
|
|
+// uint8_t data = RL_Rx_state;
|
|
|
+// RL_Rx_state = 0xF0;
|
|
|
+// RL_Rx_state &= data;
|
|
|
+//
|
|
|
+//#endif
|
|
|
+
|
|
|
+
|
|
|
+#if 0
|
|
|
+ if((detection_value & 0x2) == 0)
|
|
|
+ {
|
|
|
+ for(int i = 0; i <RELAY_ChN_default / 2;i++)
|
|
|
+ {
|
|
|
+
|
|
|
+ uint8_t temp0 = 0x01 << i;
|
|
|
+ Relayx_Onoff_state(i,RELAY_OFF);
|
|
|
+ temp0 = ~temp0;
|
|
|
+ DCPDU_Modbus_Reg[Mb_Dbuff_RL_ST_Addr] &= temp0;
|
|
|
+ //E
|
|
|
+ //AT24CxxWriteOneByte(ERom_RL_ST_Addr,Eeprom_Rbuf[ERom_RL_ST_Addr]);
|
|
|
+ }
|
|
|
+ Eeprom_Rbuf[ERom_RL_ST_Addr] = DCPDU_Modbus_Reg[Mb_Dbuff_RL_ST_Addr] & Active_state_bit;
|
|
|
+ RL_Rx_state = Eeprom_Rbuf[ERom_RL_ST_Addr];
|
|
|
// Write_74hc573();
|
|
|
uint8_t data = RL_Rx_state;
|
|
|
RL_Rx_state = 0xF0;
|
|
|
@@ -867,18 +890,18 @@ static uint8_t write_iic_flash = 0;
|
|
|
}
|
|
|
if((detection_value & 0x1) == 0)
|
|
|
{
|
|
|
-// for(int i = RELAY_ChN_default / 2; i <RELAY_ChN_default;i++)
|
|
|
-// {
|
|
|
+ for(int i = RELAY_ChN_default / 2; i <RELAY_ChN_default;i++)
|
|
|
+ {
|
|
|
|
|
|
-// uint8_t temp0 = 0x01 << i;
|
|
|
-// Relayx_Onoff_state(i,RELAY_OFF);
|
|
|
-// temp0 = ~temp0;
|
|
|
-// DCPDU_Modbus_Reg[Mb_Dbuff_RL_ST_Addr] &= temp0;
|
|
|
-// //E
|
|
|
-// //AT24CxxWriteOneByte(ERom_RL_ST_Addr,Eeprom_Rbuf[ERom_RL_ST_Addr]);
|
|
|
-// }
|
|
|
-// Eeprom_Rbuf[ERom_RL_ST_Addr] = DCPDU_Modbus_Reg[Mb_Dbuff_RL_ST_Addr] & Active_state_bit;
|
|
|
-// RL_Rx_state = Eeprom_Rbuf[ERom_RL_ST_Addr];
|
|
|
+ uint8_t temp0 = 0x01 << i;
|
|
|
+ Relayx_Onoff_state(i,RELAY_OFF);
|
|
|
+ temp0 = ~temp0;
|
|
|
+ DCPDU_Modbus_Reg[Mb_Dbuff_RL_ST_Addr] &= temp0;
|
|
|
+ //E
|
|
|
+ //AT24CxxWriteOneByte(ERom_RL_ST_Addr,Eeprom_Rbuf[ERom_RL_ST_Addr]);
|
|
|
+ }
|
|
|
+ Eeprom_Rbuf[ERom_RL_ST_Addr] = DCPDU_Modbus_Reg[Mb_Dbuff_RL_ST_Addr] & Active_state_bit;
|
|
|
+ RL_Rx_state = Eeprom_Rbuf[ERom_RL_ST_Addr];
|
|
|
// Write_74hc573();
|
|
|
uint8_t data = RL_Rx_state;
|
|
|
RL_Rx_state = 0x0F;
|