secure CRT 串口自动烧录程序

本文介绍了一种通过UART接口进行固件更新的方法。包括设置开发板的IP地址、网关等网络参数,通过TFTP协议下载固件文件,并将文件写入到Flash中。最后,重新启动开发板并配置新的MAC地址和IP信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

'file name: uart_update.vbs

Sub Main
    '设置开发板IP地址
    crt.Screen.Send chr(13)
    crt.Screen.sendKeys ("setenv ipaddr 192.168.10.30;setenv serverip 192.168.10.5;")
    crt.Screen.Send chr(13)
    crt.Screen.WaitForString ("setenv ipaddr")
    crt.Screen.sendKeys ("setenv gatewayip 192.168.10.1;setenv bootdelay 1;setenv phytype 0;")
    crt.Screen.Send chr(13)
    crt.Screen.WaitForString ("setenv gatewayip")
    crt.Screen.Send chr(13)
    
    'TFTP下载8M文件
    'crt.Screen.sendKeys ("tftpboot xxx) app8M-gk7202-sc2232_v_1_0_0822.bin
    crt.Screen.sendKeys ("tftpboot app8M-gk7205.bin")
    crt.Screen.Send chr(13)
    crt.Screen.WaitForString ("Bytes transferred = 8388608")
    
    '8M文件写入到flash
    crt.Screen.sendKeys ("sf probe 0 0;sf erase 0x00000 0x800000;sf write 0xC1000000 0x00000 0x800000")
    crt.Screen.Send chr(13)
    'crt.Screen.sendKeys ("sf probe 1 0;sf erase 0x00000 0x800000;sf write 0xC1000000 0x00000 0x800000")
    
    '重启开发板,使用新的bootenv 参数,防止后面保存老的bootenv
    crt.Screen.WaitForString ("abc")
    crt.Screen.Send chr(13)    
    crt.Screen.sendKeys ("printenv")
    crt.Screen.Send chr(13)    
    crt.Screen.WaitForString ("Environment size:")
    
    '配置新的MAC和IP信息并保存参数
    crt.Screen.sendKeys ("setenv ipaddr 192.168.10.")
    crt.Screen.Send chr(13)
    crt.Screen.WaitForString ("setenv ipaddr")
    crt.Screen.sendKeys ("setenv ethaddr 3C:97:0E:22:E1:")    
    crt.Screen.WaitForString ("setenv ethaddr")
    crt.Screen.Send chr(13)

End Sub
 

转载于:https://my.oschina.net/u/1431835/blog/1932625

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值