使用kermit通过串口升级uboot

在开发板的启动选项中看到如下两行:

7: Load Boot Loader code then write to Flash via Serial.

9: Load Boot Loader code then write to Flash via TFTP.

可以通过串口升级uboot。之前都是通过TFTP升级的,现在既然可以通过串口升级,就试着升一下吧,不然心里总觉得少了点什么。

在板子启动的时候,输入“7”来选择通过串口升级uboot,然后看到下面的输出:

## Ready for binary (kermit) download to 0x80100000 at 57600 bps...

那么问题来了,kermit是什么?

通过搜索资料知道,kermit是一种简单的文件传输协议,可用于PC之间交换文件,以及从大型计算机下载文件到微机。该协议是由哥伦比亚大学的kermit项目组成员开发和维护的,是一个半双工的通信协议。有关kermit的详细资料请查看其官网:http://www.columbia.edu/kermit/ck80.html

ckermit串口工具

在Linux环境下使用较多的两款串口软件分别是minicom和ckermit,其中minicom用得最多,不少Linux发行版已经自带。但不少人反映minicom有时会有问题,u-boot开发者也都推荐使用ckermit,下面我们就来认识一下ckermit串口工具。

c-kermit是基于kermit文件传输协议的串口工具,其配置和使用较为简单,如下所示:

【功能】

1、支持kermit文件传输协议

2、自定义了一种脚本语言,可用于自动化工作

3、无论是网络通信还是串口通信,其操作是一致的,并支持多种硬件、软件平台

4、有安全认证、加密功能

5、内建FTP、HTTP客户端功能以及SSH接口

6、支持字符集转换

【安装】

$ sudo apt-get install ckermit

【配置】

c-kermit启动时,会从当前用户目录下查找.kermrc配置文件,因此我们先在$HOME目录下创建一个.kermrc文件,然后编辑文件内容如下:

set line /dev/ttyUSB0  # 根据实际情况填写

set speed 57600    # 根据实际情况填写

set carrier-watch off

set handshake none

set flow-control none

robust

set file type bin

set file name lit

set rec  pack 1000

set send pack 1000  # 这里可以改大一点,方便下载内核

set window 5

【使用】

kermit有两种工作模式:命令模式和连接模式,默认情况为命令模式。所谓连接模式,即可以从开发板中读取数据。

$ sudo kermit

这里使用root权限,直接进入命令模式。在该模式下输入"connect"或"c"则进入连接模式。

$ sudo kermit -c

使用这种方式启动ckermit,直接进入连接模式。从连接模式退回到命令模式先输入"[Ctrl]\",接着再输入"c"即可。

在命令模式下可以输入shell命令来进行相应的操作,如cd、ls、pwd等。

传输文件可以使用命令:send filename

退出ckermit可以使用命令:exit

保存log命令:log session

该命令则会在当前目录下生成一个session.log文件,该文件保存了本次会话的串口信息。

【举例】

步骤1:

$ sudo kermit -c

与开发板的串口建立连接。

步骤2:

上电,板子启动,输入"7",进入通过串口升级uboot等待状态。

步骤3:

输入"[Ctrl]\",在输入"c",进行ckermit命令模式。

步骤4:

输入发送文件命令:send uboot.bin

开始传送文件……

步骤5:

文件传送完毕,此时仍处于命令模式,输入"c",再次进入连接模式,通过串口与开发板通信。

至此,举例完毕!

时间: 2024-07-31 02:22:04

使用kermit通过串口升级uboot的相关文章

一 在应用中升级u-boot、内核以及文件系统

近期在做在Linux系统中做在应用中升级功能,网络传输数据,实现的目标是:通过网络可以对u-boot.内核.文件系统的文件进行修改升级. 这里记录一下简单思路: 首先从全局考虑,要实现的功能网络通信部分和嵌入式系统对emmc的操作. 网络通信: 该部分考虑的问题主要是使用什么通信协议:是否允许多机连接服务器端,也就是同时允许多台嵌入式平台进行升级操作:大文件传输时,如果突然断网的问题:局域网和广域网的升级问题,在该问题中只考虑局域网,广域网与局域网类似:等等其他,如果有网友还有其他想法留言讨论哈

在Linux运行期间升级Linux系统(Uboot+kernel+Rootfs)

版本:v1.2 摘要 本文主要介绍了如何在嵌入式Linux系统运行的时候,进行升级整个Linux系统,包括uboot,kernel和rootfs.以及简介Linux中的已有的通用的Nor Flash驱动m25p80,和简介mtd util以及相关工具mtdinfo,flash_erase,flash_eraseall,nanddump,nandwrite等的基本用法. 本文提供多种格式供: 在线阅读 HTML HTMLs PDF CHM TXT RTF WEBHELP 下载(7zip压缩包) H

linux移植u-boot(一)——U-Boot详解+自定义命令实战

linux移植u-boot(一)--U-Boot详解+自定义命令实战 2015-02-07 一.Bootloader ????简单地说:Bootloader主要功能就是 在系统上电时开始执行,初始化硬件和设备,准备好软件环境,最后调用操作系统. ????具体的包含:关闭你看门狗WATCHDOG,改变系统时钟,初始化存储控制器 ,将操作系统内核代码复制到内存中去运行. ????为了开发方便,可以增加网络功能,从PC上通过串口或者网络下载文件,烧写文件,将flash上的内核代码解压后运行等. Boo

linux下kermit工具的使用

1.环境: ubuntu16.04 2.背景: 想更换下位机内核 3.使用kermit进行串口传输 举例:传输文件到下位机 2.1首先进入下位机的uboot 2.2 使用uboot自带的命令从串口接收数据 loadb 将接收到的数据放到内存的某个位置 比如: loadb 0x42000000 2.3 进入kermit命令行 按下ctrl + \然后按下c 2.4 指定某个文件进行发送 send /home/jello/uImage

U-BOOT 移植到友善之臂mini2440

U-BOOT 移植到友善之臂mini2440 开发环境:ubuntu 10.10 编译器:友善之臂mini2440光盘自带arm-linux-gcc 4.4.3 一. 在denx官网下载源码,我所用版本号为u-boot-2010.03. 二. 主机编译环境为友善之臂提供的arm-linux-gcc.所參考板子为smdk2410. 三. 启动第一阶段移植过程 1.首先測试编译环境,由于arm-linux-gcc,已经添?了PATH环境变量,在lib_arm文件夹下的config.mk 定义了CRP

uboot移植(六)——uboot启动第二阶段(init_sequence)

    for (init_fnc_ptr = init_sequence; *init_fnc_ptr; ++init_fnc_ptr) {         if ((*init_fnc_ptr)() != 0) {             hang ();         }     } 通过前面的定义init_fnc_t **init_fnc_ptr;可以知道init_fnc_ptr是一个二重指针,而init_sequence是一个函数指针数组里面存放的都是函数的函数名,这些函数都是板级初

嵌入式linux开发uboot移植(三)——uboot启动过程源码分析

嵌入式linux开发uboot移植(三)--uboot启动过程源码分析 一.uboot启动流程简介 与大多数BootLoader一样,uboot的启动过程分为BL1和BL2两个阶段.BL1阶段通常是开发板的配置等设备初始化代码,需要依赖依赖于SoC体系结构,通常用汇编语言来实现:BL2阶段主要是对外部设备如网卡.Flash等的初始化以及uboot命令集等的自身实现,通常用C语言来实现. 1.BL1阶段 uboot的BL1阶段代码通常放在start.s文件中,用汇编语言实现,其主要代码功能如下:

am335x 更改调试串口

/********************************************************************* * am335x 更改调试串口 * * am335x的调试串口是uart0,uart硬件连接上与其他功能出现了冲突. * 打算将其更改为uart1.本文并没有全部更改成功. * 记录其过程,方便以后继续尝试. * * Tony Liu, 2016-4-47, Shenzhen ****************************************

串口WIF简单I调试

/*********************************************************************** Title:Wifi串口调试 Hardware: WirelessDemo+ESP8266串口WIFI Author:小X Date:2014年9月13日 **********************************************************************/ 小巧性感的外表 超诱人的价格:20元 引脚图: 此版本