From 40c783dfd0d50ac409ff89ec43771f5739273b69 Mon Sep 17 00:00:00 2001 From: zhangsan Date: Thu, 17 Sep 2020 15:11:55 +0800 Subject: [PATCH] v1.1 --- si4/ps5ws.si4project/soft_ps5ws.sip_xm | Bin 108 -> 100 bytes si4/ps5ws.si4project/soft_ps5ws.siwork | Bin 16454 -> 38246 bytes source/app/common.c | 46 ++++++------------------- source/app/common.h | 6 ++-- source/app/main.c | 3 +- 5 files changed, 13 insertions(+), 42 deletions(-) diff --git a/si4/ps5ws.si4project/soft_ps5ws.sip_xm b/si4/ps5ws.si4project/soft_ps5ws.sip_xm index 3a6d71d4bd71a7ef5b16087e6bb15f4d1069ac3d..cbb8664861dca657c6fad58c3eb14d24e9471686 100644 GIT binary patch delta 12 Tcmc~vnIOR;%D})dQN;rQ64nBb delta 20 ZcmYevnIOR<#lXNI0K}pU4D1tSJOCkh0>A(O diff --git a/si4/ps5ws.si4project/soft_ps5ws.siwork b/si4/ps5ws.si4project/soft_ps5ws.siwork index c3b9118858f08425708b401faa44c7abdace69b8..8f830cd32fed3d03efc861afe035cd835b528568 100644 GIT binary patch literal 38246 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 WH4XJaU|+iSKumD@(zi2n+y4U>_T3r) delta 2119 zcmbW2ZA@EL7{|};y@di}!T@D~!KFatWm|Z0;2a6K@~X&&X76kTyGq%x16l@zCWX;4 zqL8&7OlCBO8NSF8H&Y{vF~BO$5t9YUoFBF^XB3y1DDx$5iBtd2-6?7KV&aqh?*E+g zoSt)@=REgzX+n3oPr48*!e4oALV+GVaOH`i9w`Ohg;2HJ`-tV5=?g>GBbSJ5Y(9v{9gxz;lF>u|!m!Sj_g0(7gC626$4=%$>68ck{kQGoIk zYUJAo=**P6P$S=7F_5v!7feU6j?|`r+;;U6oiT;g<4Jtm7?88>O=*cwLVpt|<+syp zF_bB?vA7Rqx*ER0nU&oNH}RMNqTL&5s5NlAv(%?5%K!VNyByhy!-8~;)TVYG*Sn`YXrWZ~5MFxlMSeN;DQ!DT3G#dYVn!l&BKuW~tgb~3qE~^d5 z7k`_R{pnq*lrVx!Jb?E;vO)}nGnVMz+x@)GJ#z?`Y@X8U`)|BJMBc%GymRNQ{?j## zb%G}`b_~1`jj9CCfg4~FV_V?=168P^%s+x=fLFl}=#K+4xPi(#gDva9U-&{yf?UvU zU}o*havP2ZNLnS8Aj}I5!`NG4jGaaOEukc*al}0I4QO|PJ?L+RZvn9l<2S=l3)Y}p z`38Nef)6C#-#f>rPZ$gqM}9$J!Dbs*`?vA;i=+6<0~LI&tAuYIjftqDO<~*lC3hk> zx>I61Ipb(^j2(XL{(K|5*CIAO6Py?v8kAPyJf_T8d?~q&I3YY}rV1zyhb~G9R zeH$u3F~|i}jOzdy%0#mWyS3YCZf&t!#XU0x?|=i9pqad>yuyF}b+_!sA0Z=xDOyH4 z`f@(eQgj4QLdAzV>(4nk1MQob_$H_WVPFdBISz8b9YlNvhdQODtM~-!VtWJk^cfuZGQa# diff --git a/source/app/common.c b/source/app/common.c index 762b98e..90e3991 100644 --- a/source/app/common.c +++ b/source/app/common.c @@ -4,44 +4,12 @@ #include "../msp/msp_id.h" struct global_param G; -struct ts_eeprom_param eep_param; +struct ts_eeprom_enc eep_enc; #define EEP_SECTOR_SIZE 0x200 -#define EEP_PARAM_ADDR (EEP_SECTOR_SIZE * 0) +#define EEP_ENC_ADDR (EEP_SECTOR_SIZE * 0) #define ENC_KEY 0x01010101 -#if 0 -void L3_eeprom_read(void) -{ - U8 dlen = 0; - L0_Iap_Read_array(EEP_PARAM_ADDR, (U8*)&eep_param, 2 + EEPROM_PARAM_DATA_MAX + 2); - if(eep_param.filter == EEPROM_PARAM_FILTER) - { - dlen = eep_param.len - 2; - crc16(eep_param.crc,(U8*)&eep_param,2+dlen); - if(eep_param.crc[0] == eep_param.buf[dlen] && eep_param.crc[1] == eep_param.buf[dlen+1]) - { - L0_uart0_uc('#'); - Lc_buf_copy_uc((U8*)&G.p,(U8*)eep_param.buf,dlen); - } - } -} -#endif - -void L3_eeprom_persist(void) -{ - U8 dlen = MCU_ID_KEY_LEN + MCU_ID_LEN; - eep_param.filter = EEPROM_PARAM_FILTER; - eep_param.len = dlen + 2; - Lc_buf_copy_uc((U8*)eep_param.enc_key,(U8*)&G.enc_key,MCU_ID_KEY_LEN); - Lc_buf_copy_uc((U8*)eep_param.enc_val,(U8*)&G.mcu_enc_id,MCU_ID_LEN); - crc16(eep_param.crc, &eep_param, 2+dlen); - - L0_Iap_Erase(EEP_PARAM_ADDR); - L0_Iap_Program_array(EEP_PARAM_ADDR, (U8*)&eep_param, 2 + dlen + 2); -} - - void L3_chip_encrypt_main(void) { U8 i = 0; @@ -57,8 +25,14 @@ void L3_chip_encrypt_main(void) //2.ID加密 Lc_encrypt_id(G.mcu_enc_id,G.mcu_id, ENC_KEY, MCU_ID_LEN); - //3.写入EEPROM - L3_eeprom_persist(); + //3.构造数据结构 + Lc_buf_copy_uc((U8*)eep_enc.enc_key,(U8*)&G.enc_key,MCU_ID_KEY_LEN); + Lc_buf_copy_uc((U8*)eep_enc.enc_val,(U8*)&G.mcu_enc_id,MCU_ID_LEN); + crc16(eep_enc.crc, &eep_enc, MCU_ID_KEY_LEN + MCU_ID_LEN); + + //4. 写入EEPROM + L0_Iap_Erase(EEP_ENC_ADDR); + L0_Iap_Program_array(EEP_ENC_ADDR, (U8*)&eep_enc, MCU_ID_KEY_LEN + MCU_ID_LEN + 2); L0_uart0_uc('Y'); } diff --git a/source/app/common.h b/source/app/common.h index ff89038..3766b49 100644 --- a/source/app/common.h +++ b/source/app/common.h @@ -27,14 +27,12 @@ enum tp_handle */ #define EEPROM_PARAM_DATA_MAX 64 #define EEPROM_PARAM_FILTER 0xAA -typedef struct ts_eeprom_param +typedef struct ts_eeprom_enc { - U8 filter; - U8 len; U8 enc_key[MCU_ID_KEY_LEN]; U8 enc_val[MCU_ID_LEN]; U8 crc[2]; -}EEPROM_PARAM; +}EEPROM_ENC; /** * 用户协议 diff --git a/source/app/main.c b/source/app/main.c index 88de581..f985771 100644 --- a/source/app/main.c +++ b/source/app/main.c @@ -127,9 +127,8 @@ void main(void) //----------------------------------------------- //系统主循环 //----------------------------------------------- - //L0_id_main(); L3_chip_encrypt_main(); - //L1_Iap_main(); + L1_Iap_main(); while(1) { if(1 == s_nos_tick.t1s_heatbeart)