[嵌入式系统-36]:龙芯1B 开发学习套件 -5- PMON常见命令

目录

0. 开机时按c键进入pmon模式 (自启动模式时)

1、帮助命令 h

2、显示设备信息 devls

3.重启:reboot

4、设置环境变量 set/unset

5.查询环境变量:env

6.网络设置相关命令:

①设置IP:ifconfig,ifaddr,

②检查网络是否连通:ping

7.set命令:

8.unset命令:

9.date:不支持

10.加载命令load

11.加载文件系统:initrd

12.执行命令 g

13.查询系统分区命令 fidsk 设备节点  (不支持)

14.查询pmon版本号 vers

15.拷贝命令  devcp A B  将文件A拷贝到位置B

16.pci设备扫描命令  pciscan

17.循环执行命令  loop (不支持)

18. 寄存器读命令      

19.寄存器写命令    

20.设备树相关命令 (不支持)


0. 开机时按c键进入pmon模式 (自启动模式时)

PMON下常用命令
在进入系统前按 “c” 进入pmon的命令行。

如设置自启动的话(pmon自动加载内核、启动文件系统),需要设置环境变量a l / al/al/al1、$append。

1、帮助命令 h

有两种使用方式:
① h 查看所有命令
② h xxx 查看命令xxx的说明

按回车或空格可以继续,按q键返回

2、显示设备信息 devls

PMON> devls
Device name  Type
syn0         IFNET     #以太网网口名词
loopdev0     DISK

3.重启:reboot

4、设置环境变量 set/unset

1)set有三种使用方式:

① set xxx aaa 将xxx环境变量的值设为aaa
② set xxx 查看环境变量aaa的值,只执行一个set查看所有环境变量

2)unset 删除环境变量
① unset xxx

5.查询环境变量:env

当最后一行显示more...时按回车可以显示更多信息,其中al1 为自动加载内核的镜像位置 ,appen用来设置自启动参数,包括调试串口的位置和波特率

PMON> env
   ethaddr = ff:ff:ff:ff:ff:ff
  pll_reg0 = 0x00000026
  pll_reg1 = 0x9239aa00
      xres = 800
      yres = 480
     depth = 16
   memsize = 64  #64位总线
highmemsize = 0
  cpuclock = 200,000,000
  busclock = 100,000,000

   systype = FCR
    brkcmd = "l -r @cpc 1"
  datasize = -b          [-b -h -w]
    dlecho = off         [off on lfeed]
   dlproto = none        [none XonXoff EtxAck]
     bootp = no          [no sec pri save]
  hostport = tty0
   inalpha = hex         [hex symbol]
    inbase = 16          [auto 8 10 16]
    moresz = 10
    prompt = "PMON> "
  regstyle = sw          [hw sw]
    rptcmd = trace       [off on trace]
   trabort = ^K
      ulcr = cr          [cr lf crlf]
     uleof = %
   showsym = yes         [no yes]
     fpfmt = both        [both double single none]
     fpdis = yes         [no yes]
        TZ = UTC8
  ifconfig = syn0:192.168.1.2
update_usb = no          [no yes]
 bootdelay = 8
syn0.ipaddr = 192.168.1.2
 

6.网络设置相关命令:

①设置IP:ifconfig,ifaddr,

前者功能强于后者,前者不仅可以设置网卡IP还可以查询网卡IP,但后者只能设置网卡IP

具体设置方式为 ifconfig(ifaddr)加需要设置的网卡 加要设置的IP地址,三者用空格隔开  

②检查网络是否连通:ping

PMON> ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1): 56 data bytes
64 bytes from 192.168.1.1: icmp_seq=12 ttl=128 time=0.867 ms
64 bytes from 192.168.1.1: icmp_seq=13 ttl=128 time=0.651 ms
64 bytes from 192.168.1.1: icmp_seq=14 ttl=128 time=0.574 ms
64 bytes from 192.168.1.1: icmp_seq=15 ttl=128 time=0.568 ms
64 bytes from 192.168.1.1: icmp_seq=16 ttl=128 time=0.611 ms
 

7.set命令:

①单独用set 可查看全部环境变量,set (变量)可查看对应变量

②设置环境变量 eg.永久设置IP地址 set  ifconfig(网卡名):IP地址 ,然后回车,输入saveenv

PMON> set
   ethaddr = ff:ff:ff:ff:ff:ff
  pll_reg0 = 0x00000026
  pll_reg1 = 0x9239aa00
      xres = 800
      yres = 480
     depth = 16
   memsize = 64
highmemsize = 0
  cpuclock = 200000000
  busclock = 100000000
   systype = FCR
    brkcmd = "l -r @cpc 1"
  datasize = -b          [-b -h -w]
    dlecho = off         [off on lfeed]
   dlproto = none        [none XonXoff EtxAck]
     bootp = no          [no sec pri save]
  hostport = tty0
   inalpha = hex         [hex symbol]
    inbase = 16          [auto 8 10 16]
    moresz = 10
    prompt = "PMON> "
  regstyle = sw          [hw sw]
    rptcmd = trace       [off on trace]
   trabort = ^K
      ulcr = cr          [cr lf crlf]
     uleof = %
   showsym = yes         [no yes]
     fpfmt = both        [both double single none]
     fpdis = yes         [no yes]
        TZ = UTC8
  ifconfig = syn0:192.168.1.2
update_usb = no          [no yes]
 bootdelay = 8
syn0.ipaddr = 192.168.1.2
PMON>
 

8.unset命令:

初始化环境变量  unset (环境变量名),回车后 输入saveenv

9.date:不支持

①直接输入date可查看系统时间  

②设置系统时间set date yyyymmddhhff.ss(必须按按照该格式,y表示年份,m表示月份,d表示日,h表示小时,f表示分钟,s表示秒)  ,设置完后保存

10.加载命令load

(我们可以在不同位置来加载内核,如:内存,ssd,u盘,tftp,nand),比如用u盘来加载内核,先用devls查看u盘节点(DISK类型),然后输入  load   /dev/fs/fat@usb0/u盘中内核镜像的位置 (其中fs代表文件系统或内核,不论加载文件系统或加载内核,都需要输入fs,fat为u盘格式,usb0为u盘节点)

在ssd中加载内核的命令为: load /dev/fs/ext2@wd0/ssd中内核镜像的位置   

在tftp中加载内核的命令为 :load tftp://服务器IP/tftp中内核镜像的位置   

在mtd中加载内核的命令为: load /dev/mtd0/mtd中内核镜像的位置(其中mtd0为相应分区)   

在内存中加载内核的命令为:load ram@0xffffffff(其中0xffffffff为相应地址)

使用命令烧写pmon:

在tftp中使用load烧写:load -r -f 0xbfc0000  tftp://服务器IP/gzrom-dtb.bin (其中 tftp://服务器IP 为服务器地址 gzrom-dtb.bin 为pmon镜像位置)

在u盘中使用load烧写 :load -r -f /dev/fs/fat@usb0/gzrom-dtb.bin

11.加载文件系统:initrd

在u盘中加载文件系统:initrd  /dev/fs/fat@usb0/rootfs.cpio.gz

12.执行命令 g

(当pmon引导程序,内核,文件系统都加载完毕后就可以启动系统了)

13.查询系统分区命令 fidsk 设备节点  (不支持)

14.查询pmon版本号 vers

PMON: MakeTime: 2021-11-08 22:07:30

15.拷贝命令  devcp A B  将文件A拷贝到位置B

16.pci设备扫描命令  pciscan

17.循环执行命令  loop (不支持)

loop 循环查询次数 命令  比如查看三次系统时间 loop 3 date

18. 寄存器读命令      

d1:读一个字节(unsigned char) d2:读两个字节(unsigned short)                                         d4:读4个字节(unsigned long)  d8:读8个字节(unsigned long long)        dx 寄存器地址

19.寄存器写命令    

m1:读一个字节(unsigned char) m2:读两个字节(unsigned short)                                         m4:读4个字节(unsigned long)  m8:读8个字节(unsigned long long)

mx 寄存器地址 要写入的值

20.设备树相关命令 (不支持)

print_dtb :查看设备树信息      

print_dtb 相应节点位置                                                                        

rm_dtb_node : 临时删除设备树信息,重启后失效                                          

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/508624.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【大厂AI课学习笔记NO.62】模型的部署

我们历尽千辛万苦,总算要部署模型了。这个系列也写到62篇,不要着急,后面还有很多。 这周偷懒了,一天放出太多的文章,大家可能有些吃不消,从下周开始,本系列将正常更新。 这套大厂AI课&#xf…

Vue开发实例(十一)用户列表的实现与操作

用户列表的实现与操作 一、创建用户页面和路由二、表格优化1、表头自定义2、表格滚动3、加入数据索引4、利用插槽自定义显示 三、功能1、查询功能3、增加4、删除5、修改 一、创建用户页面和路由 创建用户页面 在 src/components/Main 下创建文件夹user,创建文件Us…

驾辰龙跨Llama持Wasm,玩转Yi模型迎新春

今年新年很特别,AI工具添光彩。今天就来感受下最新的AI神器天选组合“WasmEdgeYi-34B”,只要短短三步,为这个甲辰龙年带来一份九紫离火运的科技感。 环境准备 这次用的算力是OpenBayes提供的英伟达RTX_4090*1、24GB显存、20核CPU、80GB内存…

django的模板渲染中的【高级定制】:按数据下标id来提取数据

需求: 1:在一个页面中显示一张数据表的数据 2:不能使用遍历的方式 3:页面中的数据允许通过admin后台来进行修改 4:把一张数据表的某些内容渲染到[xxx.html]页面 5:如公司的新商品页面,已有固定的…

获取 Windows 通知中心弹窗通知内容(含工具汉化)

目录 前言 技术原理概述 测试代码和程序下载连接 本文出处链接:https://blog.csdn.net/qq_59075481/article/details/136440280。 前言 从 Windows 8.1 开始,Windows 通知现在以 Toast 而非 Balloon 形式显示( Bollon 通知其实现在是应用…

第二证券:富时罗素扩容 A股引入国际增量资金

日前,英国富时罗素指数公司(FTSE Russell,简称“富时罗素”)公布的全球股票指数(FTSE Global Equity Index Series)半年度指数检查陈述显现,将新调入A股76只、调出1只。此前,富时罗素…

【Git】深入理解 Git 分支合并操作:git merge dev 命令详解

深入理解 Git 合并操作:git merge dev 命令详解 摘要:本文将深入探讨 Git 中的合并操作,以及如何使用 git merge dev 命令将dev 分支的修改合并到当前分支(假设当前分支为main 分支)中。通过详细的解释和示意图&#x…

【Java项目介绍和界面搭建】拼图小游戏——键盘、鼠标事件

🍬 博主介绍👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~ ✨主攻领域:【渗透领域】【应急响应】 【Java】 【VulnHub靶场复现】【面试分析】 🎉点赞➕评论➕收藏 …

后端开发技术面试指南

工作10多年,每年都会帮组里面试一些新同学校招社招的都有,下面我就从一个面试官的视角来给大家拆解一下如何淡然应对后端开发技术面试。 1.一面多为电话面试 (1)问七问八 ①简历要注重内容,形式上不丑没有错别字即可。之前收到过一个工作5…

【计算机考研】408学到什么程度才能考130?

408考130要比考研数学考130难的多 我想大部分考过408的考生都是这么认为的。408的难点在于他涉及的范围太广了,首先如果你要备考408,你要准备四门课程,分别是数据结构,计算机组成原理,操作系统和计算机网络。 这四门…

kafka进阶(二)

文章目录 前言一、Ack机制二、ISR集合总结 前言 本篇主要介绍kafka 的 Ack机制 和 ISR集合 一、Ack机制 Kafka提供了三种不同的应答机制(ACK): acks0:这是最不可靠的模式。在这种模式下,生产者不会等待来自服务器的…

PHP【swoole】

前言 Swoole官方文档:Swoole 文档 Swoole 使 PHP 开发人员可以编写高性能高并发的 TCP、UDP、Unix Socket、HTTP、 WebSocket 等服务,让 PHP 不再局限于 Web 领域。Swoole4 协程的成熟将 PHP 带入了前所未有的时期, 为性能的提升提供了独一无…