使用赋码仪主板 app升级,方案升级验证通过

This commit is contained in:
ranchuan
2023-10-11 18:10:06 +08:00
parent ed9e4c0c3e
commit f0f36cf79a
25 changed files with 324 additions and 207 deletions

View File

@@ -172,20 +172,8 @@ static void print_sys_param(const sys_param_def *par)
cmd_print("device type: %s",par->device_type);
cmd_print("mac addr: %02x.%02x.%02x.%02x.%02x.%02x",
par->mac[0],par->mac[1],par->mac[2],par->mac[3],par->mac[4],par->mac[5]);
cmd_print("local ip: %d.%d.%d.%d",
par->local_ip[0],par->local_ip[1],par->local_ip[2],par->local_ip[3]);
cmd_print("host ip: %d.%d.%d.%d",
par->host_ip[0],par->host_ip[1],par->host_ip[2],par->host_ip[3]);
cmd_print("host port: %d",par->host_port);
cmd_print("local cmd port: %d",par->local_cmd_port);
cmd_print("host log port: %d",par->host_log_port);
cmd_print("local id: %d",par->local_id);
cmd_print("host log ip: %d.%d.%d.%d",
par->host_log_ip[0],par->host_log_ip[1],par->host_log_ip[2],par->host_log_ip[3]);
cmd_print("uart bsp: %d",par->uartbsp);
cmd_print("coder ret mode: %d",par->coder_ret_mode);
cmd_print("slave_addr_start: %d",par->slave_addr_start);
cmd_print("moter_max_count: %d",par->moter_max_count);
}
@@ -211,19 +199,10 @@ commend_export(sysinfo,sysinfo,"print the software info")
static void print_sys_help(void)
{
cmd_print("example for how to set system params:");
cmd_print("set hostif uart4/utcp");
cmd_print("set hostif can/uart1/host");
cmd_print("set devicetype checker/coder");
cmd_print("set localip 192.168.80.10");
cmd_print("set hostip 192.168.80.100");
cmd_print("set hostport 7777");
cmd_print("set localcmdport 7777");
cmd_print("set hostlogport 12345");
cmd_print("set localid 1");
cmd_print("set hostlogip 192.168.80.80");
cmd_print("set uartbsp 115200");
cmd_print("set codermode 1/0");
cmd_print("set slave_addr_start 1/0");
cmd_print("set moter_max_count 0~30000");
cmd_print("set uartbsp 57600");
cmd_print("set save");
}
@@ -271,46 +250,6 @@ static int sys_set(list_def *argv)
memcpy(spar->device_type,str,strlen(str)+1);
cmd_print("device type: %s",spar->device_type);
}
else if(strcmp(list_get_str(argv,1),"localip")==0)
{
char *str=list_get_str(argv,2);
list_def *ip=str_atod_list(str,'.');
spar->local_ip[0]=list_get_int(ip,0);
spar->local_ip[1]=list_get_int(ip,1);
spar->local_ip[2]=list_get_int(ip,2);
spar->local_ip[3]=list_get_int(ip,3);
cmd_print("local ip: %d.%d.%d.%d",
spar->local_ip[0],spar->local_ip[1],spar->local_ip[2],spar->local_ip[3]);
}
else if(strcmp(list_get_str(argv,1),"hostip")==0)
{
char *str=list_get_str(argv,2);
list_def *ip=str_atod_list(str,'.');
spar->host_ip[0]=list_get_int(ip,0);
spar->host_ip[1]=list_get_int(ip,1);
spar->host_ip[2]=list_get_int(ip,2);
spar->host_ip[3]=list_get_int(ip,3);
cmd_print("host ip: %d.%d.%d.%d",
spar->host_ip[0],spar->host_ip[1],spar->host_ip[2],spar->host_ip[3]);
}
else if(strcmp(list_get_str(argv,1),"hostport")==0)
{
char *str=list_get_str(argv,2);
spar->host_port=str_atoi(str);
cmd_print("host port: %d",spar->host_port);
}
else if(strcmp(list_get_str(argv,1),"localcmdport")==0)
{
char *str=list_get_str(argv,2);
spar->local_cmd_port=str_atoi(str);
cmd_print("local cmd port: %d",spar->local_cmd_port);
}
else if(strcmp(list_get_str(argv,1),"hostlogport")==0)
{
char *str=list_get_str(argv,2);
spar->host_log_port=str_atoi(str);
cmd_print("local log port: %d",spar->host_log_port);
}
else if(strcmp(list_get_str(argv,1),"localid")==0)
{
char *str=list_get_str(argv,2);
@@ -323,35 +262,6 @@ static int sys_set(list_def *argv)
spar->uartbsp=str_atoi(str);
cmd_print("uart bsp: %d",spar->uartbsp);
}
else if(strcmp(list_get_str(argv,1),"hostlogip")==0)
{
char *str=list_get_str(argv,2);
list_def *ip=str_atod_list(str,'.');
spar->host_log_ip[0]=list_get_int(ip,0);
spar->host_log_ip[1]=list_get_int(ip,1);
spar->host_log_ip[2]=list_get_int(ip,2);
spar->host_log_ip[3]=list_get_int(ip,3);
cmd_print("host log ip: %d.%d.%d.%d",
spar->host_log_ip[0],spar->host_log_ip[1],spar->host_log_ip[2],spar->host_log_ip[3]);
}
else if(strcmp(list_get_str(argv,1),"codermode")==0)
{
char *str=list_get_str(argv,2);
spar->coder_ret_mode=str_atoi(str);
cmd_print("coder ret mode: %d",spar->coder_ret_mode);
}
else if(strcmp(list_get_str(argv,1),"slave_addr_start")==0)
{
char *str=list_get_str(argv,2);
spar->slave_addr_start=str_atoi(str);
cmd_print("slave addr start: %d",spar->slave_addr_start);
}
else if(strcmp(list_get_str(argv,1),"moter_max_count")==0)
{
char *str=list_get_str(argv,2);
spar->moter_max_count=str_atoi(str);
cmd_print("moter_max_count: %d",spar->moter_max_count);
}
else{
cmd_print("unknown cmd for sysset.");
print_sys_help();
@@ -405,6 +315,10 @@ int main()
uint8_t *rom;
rom_head *head;
rom=flash_get_rom(&head);
if(strcmp(head->device_type,"slave")!=0){
// 如果不是小板的固件,本次不升级
bk_reboot_guide();
}
param_init(head);
if(rom)
{
@@ -464,14 +378,9 @@ void param_init(rom_head *h)
memcpy(pars.pack_time,h->pack_time,20);
if(pars.local_id==0xffffffff){
memcpy(pars.host_if,h->host_if,8);
memcpy(pars.device_type,"checker",8);
memcpy(pars.device_type,"slave",8);
mac_init(pars.mac);
memcpy(pars.local_ip,h->local_ip,4);
memcpy(pars.host_ip,h->host_ip,4);
pars.host_port=h->host_port;
pars.local_cmd_port=7777;
pars.host_log_port=12345;
pars.local_id=1;
pars.local_id=0;
}
flash_save_param(&pars);
}
@@ -479,16 +388,10 @@ void param_init(rom_head *h)
// 填充默认配置
if(pars.local_id==0xffffffff){
memcpy(pars.pack_time,"initial app",12);
memcpy(pars.host_if,"uart4",6);
memcpy(pars.device_type,"coder",6);
memcpy(pars.host_if,"host",6);
memcpy(pars.device_type,"slave",6);
mac_init(pars.mac);
memcpy(pars.local_ip,(uint8_t []){192,168,80,10},4);
memcpy(pars.host_ip,(uint8_t []){192,168,80,80},4);
memcpy(pars.host_log_ip,(uint8_t []){192,168,80,80},4);
pars.host_port=9527;
pars.local_cmd_port=7777;
pars.host_log_port=12345;
pars.local_id=1;
pars.local_id=0;
flash_save_param(&pars);
}
}