亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

嵌入式linux系統的開發——寄存器調試方法介紹

標簽:
Linux
前言

Linux系统在上电或复位时通常从地址0x00000000处开始执行,在这个地址处首先执行的是系统的Boot Loader程序,这段程序会在正式调用操作系统内核前完成硬件初始化等必须的准备工作,最终将内核镜像从硬盘上加载到RAM中,然后跳转至内核程序入口启动操作系统。嵌入式Linux系统主要由uboot、kernel和rootfs三份固件组成,u-boot即为用于嵌入式Linux系统中的Bootloader程序。

u-boot中会先初始化串口、网卡、flash、显示屏等一些必要的硬件设备,而后在kernel中会重新加载dts文件中指定的驱动对硬件设备再次初始化,在调试硬件设备时不可避免的会涉及到CPU外设寄存器的查看和调试,本文将分别介绍如何在uboot和kernel下调试CPU外设外设寄存器的方法。

内核读写寄存器

嵌入式Linux的openwrt/Lede发行版支持io工具的使用,这个工具可以访问内存地址空间。首先安装io工具包,将源码包放置在feeds/packages/utils路径下,再建个软连接到package/feeds/packages路径下,然后执行make menuconfig命令打开Configuration界面,在Utilities下选择io工具后进行编译即可。

在控制台输入io命令会提示具体的使用方法,比如io -r -l 350 0x10110000 为读取寄存器地址0x10110000开始的350个字节值,0x10110000为MT7628芯片的ESW 基地址。

图片描述
图片描述

uboot读写寄存器

uboot中提供了常用命令的应用,可以通过help命令查看有效的命令以及各个命令的详细参数。md用于显示寄存器的内容,mm可修改寄存器的内容,修改时地址自动递增。

图片描述
图片描述
图片描述

點擊查看更多內容
3人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
Python工程師
手記
粉絲
1.8萬
獲贊與收藏
1571

關注作者,訂閱最新文章

閱讀免費教程

感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消