当前位置: 首页 > 编程日记 > 正文

嵌入式BootLoader技术内幕(三)

四、 关于串口终端

在 boot loader 程序的设计与实现中,没有什么能够比从串口终端正确地收到打印信息能
更令人激动了。此外,向串口终端打印信息也是一个非常重要而又有效的调试手段。但是
,我们经常会碰到串口终端显示乱码或根本没有显示的问题。造成这个问题主要有两种原
因:(1) boot loader 对串口的初始化设置不正确。(2) 运行在 host 端的终端仿真程序
对串口的设置不正确,这包括:波特率、奇偶校验、数据位和停止位等方面的设置。

此外,有时也会碰到这样的问题,那就是:在 boot loader 的运行过程中我们可以正确地
向串口终端输出信息,但当 boot loader 启动内核后却无法看到内核的启动输出信息。对
这一问题的原因可以从以下几个方面来考虑:

(1) 首先请确认你的内核在编译时配置了对串口终端的支持,并配置了正确的串口驱动程
序。

(2) 你的 boot loader 对串口的初始化设置可能会和内核对串口的初始化设置不一致。此
外,对于诸如 s3c44b0x 这样的 CPU,CPU 时钟频率的设置也会影响串口,因此如果 boo
t loader 和内核对其 CPU 时钟频率的设置不一致,也会使串口终端无法正确显示信息。


(3) 最后,还要确认 boot loader 所用的内核基地址必须和内核映像在编译时所用的运行
基地址一致,尤其是对于 uClinux 而言。假设你的内核映像在编译时用的基地址是 0xc0
008000,但你的 boot loader 却将它加载到 0xc0010000 处去执行,那么内核映像当然不
能正确地执行了。

五、 结束语

Boot Loader 的设计与实现是一个非常复杂的过程。如果不能从串口收到那激动人心的


"uncompressing linux
.................. done,
booting the kernel……"

转载于:https://www.cnblogs.com/hnrainll/archive/2011/04/12/2013604.html

相关文章:

Maya 2020面部绑定动画学习视频教程 Facial Rigging 101 – Maya 2020

Maya 2020面部绑定动画学习视频教程 Facial Rigging 101 – Maya 2020 时长:16h 55m |视频:. MP4 1280x720,30 fps(r) |音频:AAC,44100 Hz,2ch |大小:15.5 GB 共62小节课程 流派:电子学习|语言:英语中文字幕(机译)含…

Java学习总结:9

继承 继承性是面向对象的第二大主要特征,而继承性要解决的就是代码重用的问题,利用继承性可以从已有的类继续派生出新的子类,也可以利用子类扩展出更多的操作功能。 继承的实现 继承的格式 class 子类 extends 父类 {}子类实际上是将父类…

转 小辉_Ray CORS(跨域资源共享)

前言:上一篇文章在写如何使用JSONP实现跨域请求的时候,偶然间提到CORS,即Cross-Origin Resource Sharing(跨域资源共享)。虽然前些天也看了一下CORS相关的文章,但是今天兴趣一来还是亲自地写篇博客来研究一…

使用dd命令复制ASM磁盘的spfile

通过下面sql查询参数文件在ASM磁盘中的AU分布SELECT x1.file_number,x1.name,x2.GROUP_KFFXP,x2.DISK_KFFXP,x2.AU_KFFXP,x3.pathFROM (SELECT *FROM (SELECT t1.GROUP_NUMBER, t1.FILE_NUMBER, t2.NAME, rownum AS rnFROM v$asm_file t1LEFT JOIN v$asm_alias t2ON t1.FILE_NU…

[转载]IPMSG(飞鸽传书)协议翻译

/***********************************************************本人(ypxing)根据下面的协议,C语言写的ipmsg(聊天,文件/文件夹传输)*请参见:http://blog.chinaunix.net/u1/35100/showart_689330.html**************************************…

SketchUp Pro 2021基础入门学习视频教程

SketchUp Pro 2021基础入门学习视频教程 1280X720 MP4 |视频:h264,1280720 |音频:AAC,44.1 KHz,2 Ch 流派:电子学习|语言:英语中文字幕(根据原英文字幕机译更准确) |时长:74节课(7h 31m) |大小:4.9 GB 含课程工程文件…

Java学习总结:10

覆写 在子类定义属性或方法时,有可能出现定义的属性或方法与父类同名的情况,这样的操作就称为覆写。 方法的覆写 当子类定义了和父类的方法名称、返回值类型、参数类型及个数完全相同的方法时,就称为方法的覆写。 class A1{public void f…

ubuntu中启用ssh服务

ssh程序分为有客户端程序openssh-client和服务端程序openssh-server。如果需要ssh登陆到别的电脑,需要安装openssh-client,该程序ubuntu是默认安装的。而如果需要从远程连接到本机,则需要安装openssh-server,该程序需要自己安装。…

JVM 常见异常及内存诊断

栈内存溢出 栈内存大小设置:-Xss size 默认除了window以外的所有操作系统默认情况大小为 1MB,window 的默认大小依赖于虚拟机内存。 栈帧过多导致栈内存溢出 下述示例代码,由于递归深度没有限制且没有设置出口,每次方法的调用都…

解决文字无法缩小的问题

在css设置文字大小的时候,到12px 的时候你在怎么缩小他,他的大小就是不变font-size:百分比来控制也不起作用-webkit-transform: scale(0.8); -o-transform: scale(1); display: inline-block; 转载于:https://www.cnblogs.com/xinlinux/p/408…

asp.net图片浏览器效果

技术来源于同学会实践 前台设计 <% Page Language"C#" AutoEventWireup"true" CodeFile"txh.aspx.cs" Inherits"txh" %> <!DOCTYPE html> <html xmlns"http://www.w3.org/1999/xhtml"> <head runat&qu…

Blender材质和着色基础视频教程 CGCookie – Fundamentals of Blender Materials and Shading

Blender材质和着色基础视频教程 CGCookie – Fundamentals of Blender Materials and Shading Blender材质和着色基础视频教程 CGCookie – Fundamentals of Blender Materials and Shading CGCookie–Blender材质和着色基础 教程大小解压后&#xff1a;3.1G 共6大章 45小节课…

Java学习总结:11(final关键字)

final关键字 在Java中final称为终结器&#xff0c;在Java中可以使用final定义类、方法和属性。 一.使用final定义的类不能再有子类&#xff0c;即&#xff1a;任何类都不能继承以final声明的父类。 在设计类的时候&#xff0c;如果这个类不需要有子类&#xff0c;类的细节不…

2022-2028年中国汽车制动器行业投资分析及前景预测报告

【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新&#xff08;交付时间约3个工作日&#xff09; 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国汽车制动器行业市场行业相关概述、中国汽车制动器行业市场行业运行环境、分析了中国汽车制…

[转]优秀编程的“艺术”

优秀的代码是一件艺术品&#xff1f;或者软件工艺宣言言过其实了&#xff1f;成为一名“优秀”的程序员&#xff0c;有什么要求&#xff1f; 设想你雇佣了一名水管工&#xff0c;让他更换地下室的旧管道。这个家伙在工作之前、之中、之后&#xff0c;他就没有停止过谈论他的管道…

洛谷 P5019 铺设道路(差分)

嗯... 题目链接&#xff1a;https://www.luogu.org/problem/P5019 首先简化一下题意&#xff1a; 给定一个长为N的数组&#xff0c;每次操作可以选择一个区间减去1&#xff0c;问最少多少次操作可以将数组中的数全变成0 N≤100000 思路&#xff1a; 首先对于第一个数字d_1我们至…

1小时教你做360度全景“小星球”效果图 Skillshare – Create a Panoramic ‘Little Planet’ from Anywhere

1小时教你做360度全景“小星球”效果图 Skillshare – Create a Panoramic ‘Little Planet’ from Anywhere 1小时教你做360度全景“小星球”效果图 Skillshare – Create a Panoramic ‘Little Planet’ from Anywhere 时长1h 2m 1280X720 MP4 语言&#xff1a;英语中文字幕…

BIO、NIO、AIO详解

BIO(Blocking I/O)就是传统的Java IO编程,其相关的类和接口在java.io包下。BIO是同步阻塞的,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,可以通过线程池机制改善(实现多个客户连接服务器)服务器端启动一个,注册端口,调用accpet方法监听客户端的Socket连接客户端启动Socket对服务器进行通信,默认情况下服务器端需要对每个客户建立一个线程与之通讯。

Java学习总结:12

多态性 1.方法的多态性&#xff1a;重载和覆写 重载&#xff1a;同一个方法名称&#xff0c;根据不同的参数类型及个数可以完成不同的功能&#xff1b; 覆写&#xff1a;同一个方法&#xff0c;根据不同的实例化的子类对象不同&#xff0c;所完成的功能也不同。 2.对象的多态性…

10万字总结Java8到21新特性详解

Java 8 是Java历史上一个重大的版本更新,发布于2014年3月18日。Lambda 表达式是在 Java 8 中引入,并且被吹捧为 Java 8 最大的特性。它是函数式编程的的一个重要特性,标志着 Java 向函数式编程迈出了重要的第一步。或者其中parameters:是 Lambda表达式的参数列表,可以为空或包含一个或多个参数。->:是 Lambda 操作符,用于将参数和 Lambda 主体分开。expression:是 Lambda 表达式的返回值,或者在主体中执行的单一表达式。

10万字总结Java8到21新特性详解

Java 17,发布于 2021 年 9 月,是一个长期支持(LTS)版本。Java 18,于2022年3月发布。Java 19, 于2022-09-20 发布众所周知,JVM 是一个多线程环境,它通过为我们提供了对操作系统线程的抽象,但是 Java 中的线程都只是对操作系统线程的一种简单封装,我们可以称之为“平台线程”。代价昂贵:创建平台线程的成本很高。每当创建一个平台线程时,操作系统都必须在堆栈中分配大量内存来存储线程的上下文、原生调用堆栈和 Java 调用堆栈。

iOS 对UIImage进行的一些操作

1、生成指定宽高的UIImage对象(oldImage为原始图片对象,newImage为操作后的图片对象) // 参数1:图片的尺寸 参数2:是否透明(没看出YES和NO有什么区别) 参数3:缩放(1表示不缩放) (1) UIGraphicsBeginImageContextWithOptions(CGSize size, BOOL opaque, CGFloat scale) (2) U…

mysql基础之视图

原文:mysql基础之视图 在查询中,我们经常把查询结果 当成临时表来看. View是什么? View可以看一张虚拟表. 是表通过某种运算得到的一个投影. 既然视图只是表的某种查询的投影,所以主要步骤在于查询表上.查询的结果命名为视图就可以了. 视图与表的关系 视图是表的查询结果,自然…

Maya教程-XGEN制作毛发技能学习 Patreon – Cartoon Grooming Series by Jesus FC

Maya教程-XGEN制作毛发技能学习 Patreon – Cartoon Grooming Series by Jesus FC Maya教程-XGEN制作毛发技能学习 Patreon – Cartoon Grooming Series by Jesus FC Maya教程-XGEN制作毛发技能学习 Patreon – Cartoon Grooming Series by Jesus FC Patreon – Cartoon Groom…

2.抽取代码(BaseActivity)

知识点俩种退出程序的方法复制集合同步的用法字符数组工厂模式&#xff0c;生产fatgment&#xff0c;解决了碎片重复创建的问题全局上下文actionbar用法fargmentadapter&#xff0c;当viewpager里是fargment的话更方便1.抽取BaseActivity 管理所有activity 方便退出 public c…

C语言画圆(编译器:VS2013)

一.graphics.h库的添加 方法一 先下载所需文件&#xff1a; graphic头文件解决方法&#xff08;密码&#xff1a;6z3y&#xff09; 1.先打开include文件夹 2.将里面的文件复制粘贴到VS2013安装目录的include文件夹中&#xff0c;如下&#xff1a; 3.打开下载好的文件夹中的…

JVM内存调优原则及几种JVM内存调优方法

JVM内存调优原则及几种JVM内存调优方法 1、堆大小设置。 2、回收器选择。 1、在对JVM内存调优的时候不能只看操作系统级别Java进程所占用的内存&#xff0c;这个数值不能准确的反应堆内存的真实占用情况&#xff0c;因为GC过后这个值是不会变化的&#xff0c;因此内存调优的时…

Meta标签中的format-detection属性及含义

format-detection翻译成中文的意思是“格式检测”&#xff0c;顾名思义&#xff0c;它是用来检测html里的一些格式的&#xff0c;那关于meta的format-detection属性主要是有以下几个设置&#xff1a;meta name"format-detection" content"telephoneno"meta…

Unity 3D游戏代码编程学习教程 Full Guide To Unity 3D C#: Learn To Code Making 3D Games

Unity 3D游戏代码编程学习教程 Full Guide To Unity 3D & C#: Learn To Code Making 3D Games Full Guide To Unity 3D & C#: Learn To Code Making 3D Games Unity 3D&C语言完整指南学习教程&#xff1a;学习编写3D游戏代码 由迈克尔穆尔创作|最后更新日期:2021年…

Java学习总结:13

抽象类 定义&#xff1a; 所谓抽象类就是指在普通类的结构里面增加抽象方法的组成部分&#xff0c;抽象方法指的是没有方法体的方法&#xff0c;同时抽象方法还必须使用abstract关键字进行定义。拥有抽象方法的类一定属于抽象类&#xff0c;抽象类要使用abstract声明。 关于抽…