recoverparam.c
来自「一个uclinux下进行网络数据处理,及串口读取,CGI配置」· C语言 代码 · 共 50 行
C
50 行
#include<stdio.h>#include<stdlib.h>//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////HEAD:filename(32bytes)+filelength(4bytes)+filecontents(filelength)///////////////////////////////////////////////////////////////////////////int recover_file_from_flash(unsigned long addr){ FILE *fp; unsigned long i,j,len; unsigned short value_w,temp_w; char fname[32]; bzero(fname,32); ////////////////////////////////////////////////////////////////////////// //Judge if this is a valid file if(*(unsigned short *)addr==0xFFFF) return -1; ////////////////////////////////////////////////////////////////////////// //get filename strncpy(fname,(unsigned char *)addr,32); addr+=32; ////////////////////////////////////////////////////////////////////////// //write file length len=*(unsigned long *)addr; addr+=4; ////////////////////////////////////////////////////////////////////////// fp=fopen(fname,"w"); if(fp==NULL){ printf("open file error"); return 1; } for(i=0;i<len;i++){ fwrite((unsigned char *)(addr+i),sizeof(unsigned char),1,fp); } fclose(fp); return 0;}//write /etc/config/start to the last sector on the second FLASHint main(int argc,char *argv[]){ unsigned long addr; addr = 0xffff0000; //recover the communication parameters if (recover_file_from_flash(addr)!=0) printf("recover error.\n");}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?