Преглед изворни кода

MBIC Header 추가 부분 추가

PYJ пре 5 година
родитељ
комит
884d8406b6

BIN
Debug/STM32F103_ATTEN_PLL_Zig.elf


Разлика између датотеке није приказан због своје велике величине
+ 535 - 567
Debug/STM32F103_ATTEN_PLL_Zig.hex


Разлика између датотеке није приказан због своје велике величине
+ 2765 - 2959
Debug/STM32F103_ATTEN_PLL_Zig.list


Разлика између датотеке није приказан због своје велике величине
+ 396 - 420
Debug/STM32F103_ATTEN_PLL_Zig.map


+ 48 - 2
Src/MBIC_Bootloader.c

@@ -126,6 +126,52 @@ BootLoaderDataCheck_st MBIC_FileDataCheck(uint8_t* data){
126 126
 }
127 127
 
128 128
 
129
+uint8_t* MBIC_HeaderMergeFunction(uint8_t* data, uint32_t CrcIndex)
130
+{
131
+    byte[] ret = new byte[data.Length + 22 + 3];
132
+    UInt16 CRCData = CRC16_Generate(data,data.Length);
133
+
134
+    ret[(int)MBICProt_st.MBIC_PAYLOADSTART + CrcIndex + 0] = Convert.ToByte((CRCData & 0xFF00) >> 8);
135
+    ret[(int)MBICProt_st.MBIC_PAYLOADSTART + CrcIndex + 1] = Convert.ToByte((CRCData & 0x00FF));
136
+    ret[(int)MBICProt_st.MBIC_PAYLOADSTART + CrcIndex + 2] = 0x03;
137
+
138
+    ret[(int)MBICProt_st.MBIC_PREAMBLE_0] = MBIC_PREAMBLE0;
139
+    ret[(int)MBICProt_st.MBIC_PREAMBLE_1] = MBIC_PREAMBLE1;
140
+    ret[(int)MBICProt_st.MBIC_PREAMBLE_2] = MBIC_PREAMBLE2;
141
+    ret[(int)MBICProt_st.MBIC_PREAMBLE_3] = MBIC_PREAMBLE3;
142
+
143
+    ret[(int)MBICProt_st.MBIC_SUBUID_0] = MBIC_SUBUID0;
144
+    ret[(int)MBICProt_st.MBIC_SUBUID_1] = MBIC_SUBUID1;
145
+
146
+    ret[(int)MBICProt_st.MBIC_RCODE_0] = 0;
147
+
148
+    ret[(int)MBICProt_st.MBIC_TRID_0] = 0;
149
+    ret[(int)MBICProt_st.MBIC_TRID_1] = 0;
150
+
151
+    ret[(int)MBICProt_st.MBIC_SEQSUM_0] = 0;
152
+
153
+    ret[(int)MBICProt_st.MBIC_TTL_0] = 0;
154
+
155
+    ret[(int)MBICProt_st.MBIC_TIME_0] = 0;
156
+    ret[(int)MBICProt_st.MBIC_TIME_1] = 0;
157
+    ret[(int)MBICProt_st.MBIC_TIME_2] = 0;
158
+    ret[(int)MBICProt_st.MBIC_TIME_3] = 0;
159
+    ret[(int)MBICProt_st.MBIC_TIME_4] = 0;
160
+    ret[(int)MBICProt_st.MBIC_TIME_5] = 0;
161
+    ret[(int)MBICProt_st.MBIC_ERRRESPONSE_0] = MBIC_ERRRESPONSE;
162
+
163
+    ret[(int)MBICProt_st.MBIC_CMD_0] = MBIC_ERRRESPONSE;
164
+
165
+    ret[(int)MBICProt_st.MBIC_LENGTH_0] = MBIC_ERRRESPONSE;
166
+    ret[(int)MBICProt_st.MBIC_LENGTH_1] = MBIC_ERRRESPONSE;
167
+
168
+    ret[(int)MBICProt_st.MBIC_HEADERCHECKSUM_0] = Chksum_Create(ret);
169
+
170
+    for(int i = 0; i < data.Length; i ++)
171
+        ret[(int)MBICProt_st.MBIC_PAYLOADSTART + i] = data[i];
172
+
173
+    return ret;
174
+}
129 175
 
130 176
 void MBIC_Bootloader_FirmwareUpdate(uint8_t* data){
131 177
     uint8_t datatype = data[MBIC_PAYLOADSTART];
@@ -143,11 +189,11 @@ void MBIC_Bootloader_FirmwareUpdate(uint8_t* data){
143 189
         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
144 190
         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
145 191
     };
146
-    MBIC_FileDataCheck(dataTest);
147 192
     
148 193
 #endif // PYJ.2020.06.04_END -- 
194
+    MBIC_FileDataCheck(&data[MBIC_PAYLOADSTART]);
149 195
 
150
-
196
+    
151 197
 //    printf("RX");
152 198
 //    for(int i = 0; i < 128; i++)
153 199
 //        printf("%c",*data++);