#include <stdio.h>
#include <string.h>
int main(int argc,char **argv)
{
FILE *fp1,*fp2,*fp3;
char ch;
int lSize=0,rename0isOK=0;
char *name = NULL;
if(argc==1)
{
name = (char *)"TSL-TAG-RC-G10-SW-AIOT-GTB-V1.0.0.hex";
printf("HEXNAME %s\r\n",name);
}
else if(argc==2)
{
name = argv[1];
printf("HEXNAME %s\r\n",name);
}
fp1 = fopen("STM32F412RE/STM32F412REbootloader.hex", "r");
fp3 = fopen(name, "w");
ch = fgetc(fp1);
while(ch!=EOF)
{
fputc(ch , fp3);
ch = fgetc(fp1);
}
fclose(fp1);
fseek (fp3 , -13 , SEEK_END);//从尾部往左边走13 正好丢弃最后1行
fp2 = fopen("STM32F412RE/STM32F412REapp.hex", "r");
ch = fgetc(fp2);
while(ch!=EOF)
{
fputc(ch , fp3);
ch = fgetc(fp2);
}
fclose(fp2);
fclose(fp3);
printf("******GKOSON FINISHED*******");
//文件重命名 MV或者CP 把前面的bin MV到外面去
//https://blog.csdn.net/qq_41668547/article/details/85345581
lSize = strlen(name);
name[lSize-1]='n';
name[lSize-2]='i';
name[lSize-3]='b';
rename0isOK = rename("STM32F412RE/STM32F412REapp.bin",name);
printf("******RENAME BIN %d*******",rename0isOK);
//scanf("%d\n",&ch);//人为堵塞一下
return 1;
}