自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 P2020(e500v2) clock 总结篇

1.前言在学习一款芯片的架构时,时钟应该是我们最先要理弄清的地方,因为不管是CPU 总线 以及外设的基本工作都离不开时钟,且它们所需的时钟频率各不相同。本博客主要介绍P2020的时钟,涉及时钟的整体框架,时钟如何设置以及注意事项。2. P2020 时钟框架介绍1.SYSCLK是芯片主要的时钟源,使用系统锁相环(System PLL ratio)可以得到CCB(core comp...

2019-11-01 14:06:02 3987 2

原创 WindRiver3.3如何调试vxWorks Image中的模块函数

1.新建镜像工程其它的默认,然后Next到Finish全选–>finish,然后按ctrl + s保持修改编译镜像(若编译出wrload相关的错误,取消wrload组件,再编译)bootrom FTP 引导镜像启动启动windriver 自动的wftpd32服务,新建账号 密码以及确认镜像路径bootrom 配置从网络启动,确认host ip 与 target ip...

2019-10-29 11:46:02 1579

原创 P2020 Serdes 与 OCeaN 简介

1.SerDes简介SerDes(Serializer-Deserializer) 是一种采用差分信号的串行传输机制,在发送端将多位并行数据(包括时钟数据)转换成1bit的串行数据,并在接收端将串行比特流恢复成原始的数据。这一过程称为串化/解串,即SerDes.2.P2020 OCeaN的作用OCeaN:On-chip network (片上网络),是无调度式交换结构,可以提高每个端口交叉组...

2019-10-24 11:20:46 800 1

原创 P2020如何解决大于1M的vxWorks_rom镜像

固化大于1M的ROM类型vxWorksvxWork Image TypeP2020RDB 实例固化教程功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowch...

2019-10-22 10:23:45 1556 5

转载 国产自主“软件定义”框架——openSCA核心框架永久开源

一、什么是openSCA(openSCA不局限于无线电)SCA(软件通信体系结构),起源于海湾战争之后的五角大楼,为了解决美国军方和北约各国多达上百种军用无线电设备之间的信息互通问题。它就像是给来自不同厂家的、不同型号的设备安装了一套类似“安卓”的操作系统,而那个时候,还没有“安卓”。“软件定义”的概念从此兴起,来自不同领域的系统集成商们,越来越倾向于使用一套框架(或者有些领域被称之为操作...

2019-06-22 16:16:39 1506

原创 Glances+InfluxDB+Grafana搭起系统监控之眼

1.本文简介 本文章简单介绍如何利用Glances、InfluxDB以及Grafana搭建一个图形化的监测系统。 安装过程中出现问题请参考第6章问题总结 搭建环境:ubuntu 16.042.Glances Glances是一种跨平台监控工具,它使用python语言开发,旨在通过curses或基于Web的界面呈现大量监控信息。信息根据用 ...

2019-06-05 15:18:07 2512 2

原创 insmod: ERROR: could not insert module xx.ko: Invalid module format

出现该问题时是因为内核检查驱动模块版本信息与内核信息不匹配造成的dmesg 出现 [ 86.667222] xx.ko: disagrees about version of symbol module_layout具体信息参考IBM解析 Linux 内核可装载模块的版本检查机制...

2019-06-03 14:48:29 10043

原创 如何搭建最合理的虚拟系统、PC、开发板之间的网络?

场景:PC与开发板之间都是连接在路由器或交换端口中(可上网)解决方案:此时虚拟系统只需要一个网卡桥接在有线网卡上即可①编辑 ->点击虚拟网络编辑器->更改设置->将VMnet0桥接到有线网卡中②右键我的虚拟机-->设置-->点击网络适配器,配置为桥接模式③配置虚拟系统、开发板、PC都为自动获取IP场景:开发板与PC有线网卡直连,PC无线网...

2019-05-11 12:57:37 455

原创 深入理解linux执行文件提示No such file or directory的背后原因

1 背景 最近一直在研究在ZC706-ARM开发板的linux系统中弄一套编译系统(不支持apt),刚好发现公司有一套英伟达的ARM开发板且带有ubunut系统(支持apt),此时产生一个想法,英伟达板子上编译的程序能否在ZC706的板子上运行?2 过程 在英伟达的开发板中 gcc a.c生成a.out,然后拷贝到ZC706中执行出现“No such file or ...

2019-04-16 21:26:39 165721

原创 python移植三方库psutil

1.背景知识先移植python3.7https://blog.csdn.net/u012230668/article/details/89206857 python为解释性语言,因此.py文件具有跨平台性,前提是该平台了能移植成功python解释器 python setup.py install 原理 https://www.jianshu.com/p/f8ffbf18c312...

2019-04-11 20:43:07 2847 2

原创 python3.7移植到ARM开发板

1.前言 由于本人不是学习python语言的,对python理解只是片面的! 故该文章只是借鉴许多文章整理而成,取其精华,去其糟粕,总结出适合自己的方法!PS:移植pyhon到开发板的目的是为了使用psutil,一款跨平台可以获取系统信息的python三方库。2.平台环境host:Ubuntu 16.04 LTS(x64) target: ZC706(ARMV7) 虚拟机...

2019-04-11 17:15:24 14576 5

原创 cjson

1.JSON格式简述 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它使得人们很容易的进行阅读和编写。 同时也方便了机器进行解析和生成。它是基于 JavaScript Programming Language , Standard ECMA-262 3rd Edition - December 1999 的一个子集。 JSON采用完...

2019-04-04 15:36:36 2040

原创 u-boot 命令行如何设置并发操作

在u-boot如何设置多条命令的并发执行? 刚开始以为是使用setenv命令,结果发现这种方式只能保留一条命令,后面的都被换行处理了,直接执行...setenv jtagboot echo TFTPing Linux to RAM... && tftpboot ${kernel_load_address} ${kernel_image} && tftpboo...

2019-02-27 11:12:33 360

原创 Linux SD 卡根文件系统制作

1.背景      起因是下面截图的信息,根据打印信息大致可知道在挂载SD卡分区2的时候出现错误了,当时大致判断为内核去找根文件系统里面的脚本以及执行文件时出现错误,但由于在u-boot里面print时未找到bootargs的参数来确认以及修改根文件系统位置以及文件系统类型,故借此机会了解下SD卡根文件系统制作以及原理,做到知其然知其所以然!!!     2.确认过程     确认...

2019-01-03 11:54:35 886

原创 ubuntu16.04下安装petalinux_2017.4详细流程

1.安装环境说明            本文安装环境为VM14.1.1 + ubuntu16.04_64 + petalinux_2017.4 ,流程按照ug1144(v2017.3)文档进行讲解。    1.1 petalinux_2017.4下载          petalinx2017.4下载链接          选择下面所示的下载,最后下载完成为petalinux-v2...

2018-12-11 12:04:02 2552

原创 PowerPC基于vxWorks的中断初始化分析

1. 本文简介      本文主要介绍P2020芯片中vxWorks中断初始化过程(部分讲解是以linux为例)。P2020属于PPC85XX系列,内核为e500v2,它是PowerPC体系结构中主要应用于通信领域的片子,PowerPC体系结构规范发布于1993年,它是一个64位规范(也包含32位子集)。但几乎所有常规的PowerPC的芯片都是32位的,除了部分新型高端芯片(eg:IBM RS...

2018-12-07 19:32:08 4895 2

原创 ZC706学习笔记(三)- -编译U-boot

VM + ubuntu16.04_321.下载源码https://github.com/Xilinx/u-boot-xlnx2.解压unzip root# unzip u-boot-xlnx-master.zip3.uboot编译 (1) 编译过程中遇到的问题有:Your GCC is older than 6.0 and is not supported  ...

2018-11-29 09:56:44 1509

原创 ZC706学习笔记(二)- - 搭建交叉编译环境 for u-boot编译

1. 安装交叉编译环境(ubuntu16.04 32bit)    下载交叉编译工具xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin进行安装 可在CSDN中下载,官网     http://xilinx.wikidot.com/zynq-tools 未找到相关的,可能现在都升级成开发套件了,如petalinux 与 vivado_SDK,这两软件...

2018-11-28 21:05:40 3313

原创 ZC706学习笔记(一)- - 使用U-boot启动开发板

1. 在使用开发板之前,先用官方释放的二进制文件测试   https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842367/Zynq+2014.3+Release   1.1 下载完成后解压出来后进入ZC706,将BOOT.BIN  devicetree.dtb  uImage  uramdisk.image.gz拷贝到SD卡中...

2018-11-28 19:48:39 5885 6

原创 嵌入式-Linux-Environment搭建(2)-tftp

1.tftp用途 tftp在嵌入式开发中主要应用于网络镜像启动,交叉编译坏境的应用调试等.优点在于小巧,操作方便(get / put),满足小文件的传输.类似的软件还有vxworks的wtfp等。2.Ubuntu下tftp客户端以及服务器的安装3.新建服务器目录以及修改配置文件新安装tftp完成后,只需要修改TFTP_DIRECTORY="自定义服务目录” 以...

2018-11-28 14:51:15 367

原创 嵌入式-Linux-Environment搭建(1)-Git

1.Git安装    1.1 在ubuntu16.04(32bit)下安装Git   1.2 进行Git配置        若是直接clone外网的文件,可直接使用git clone....   后面会自动让输入用户名,密码(已经注册过的).eg:    1.3  git命令介绍----------------------------------------------...

2018-11-28 11:51:28 223

原创 P2020_RDB开发板用codeWarrior TAP下载bootrom.bin

一、安装CodeWarrior Development Stdio 软件以及购买CodeWarrior TAP下载器 下载链接 https://pan.baidu.com/s/1wJmXFGarEXbn-32RRcVDHg 密码:bzgd 为保证链接有效性,只设置了7天,需要的朋友可以留言,也可以去官网下载 需要CodeWarrior下...

2018-08-23 17:00:16 4330 18

原创 VMware14安装windows7的详细过程

一、安装VMware虚拟机,以及下载一份ghost win7系统下载地址:https://pan.baidu.com/s/144ZBsK3M5eAiS-jWDxJkDA 密码:yoe0 VMware安装属于傻瓜式安装,这里就不做介绍了。下载链接中的keygen.exe是用来激活VMware的。二、建立一个新的虚拟机1.开始菜单-->open VMw...

2018-08-15 15:37:14 90982 30

原创 workbench vxworks image project 添加编译宏的问题

1.VIP(vxWorks image project)工程 没有 DKM(download kernel module) 工程中的defines   一栏用来添加编译宏。             2.但是可在variables一栏中可以通过参数指定  workbench的编译也是通过工程配置的信息等生成makefile,然后根据makefile语法调用编译器生成二进制文件。 ...

2018-08-10 14:40:37 1760

原创 配置visual svn 遇到 unable to connect to a repository at URL...以及 执行上下文错误: 由于目标计算机积极拒绝,无法连接

前言: 今天,在服务器上部署完成visiual svn 后,服务器本身通过file系统,网络checkout ,网页访问都OK。然后在另外一台机器通过网页访问也OK,但是通过网络checkout时出现unable to connect to a repository atURL..的问题。(注明:服务器和PC机在同一网段上,可以相互通信)...

2018-07-07 16:10:51 7747 2

原创 Windows脚本之拷贝文件---简化工作

前言:长期工作workbench的调试坏境,重复的拷贝执行文件到NFS文件系统中,花费大量的时间,因此写此文章的目的就是为了让工程师们尽量使用脚本等方法减轻工作,让我们有更多的时间学习,成长。。。下面就简单介绍workbench下如何通过脚本拷贝执行文件:1.拷贝脚本应与工程目录同级2.如何执行脚本或修改脚本 鼠标移至copy.bat,右键open with-->Test Editor,则以...

2018-06-17 15:09:02 7335

原创 深入理解C函数调用过程及函数栈帧(20220302)

好久没写文章记录自己在成长路上的脚步,以至于已经忘记了自己走了多久,回首才发现留下的记忆着实少,写此文章以此勉励自己。本文涉及的知识点有:1.什么是栈?2.栈帧为何物?3.什么叫帧地址4.函数返回地址与入口地址以及如何获取5.函数的链接地址与加载地址(后续讲解)6.x86汇编指令的大致认识7.函数调用过程中栈帧的变化9.gdb如何单步调试汇编、打印栈帧、查看寄存器等10.形参数多余6个寄存器是,函数做哪些过程(x86_64规定只有6个寄存器来存储参...

2022-03-02 15:16:49 1890

原创 busybox-1.30.1制作根文件系统(1)

本文主要讲述怎么定制一个基本的根文件系统,包括启动脚本inittab/自动挂载/环境变量/提示符以及库等,至于怎么定制telnet,加入密码登陆,定制自动化脚本是后面的文章了。1.源码下载 busybox源码下载2.解压root@mk-virtual-machine:~/makerootfs# tar -jxvf busybox-1.30.1.tar.bz2 busybox...

2022-03-02 14:57:59 1019

原创 Linux 驱动如何单独编译

obj-m += rpmsg_user_dev_driver.oSRC = $(CURDIR)all: make -C $(KERNEL_SRC) M=$(SRC)modules_install: make -C $(KERNEL_SRC) M=$(SRC) modules_installclean: make -C $(KERNEL_SRC) M=$(SRC) clean如上Makefile,指定KERNEL_SRC内核源码位置,执行make即可...

2020-07-16 10:54:56 1593

原创 如何在PDF包中为每个PDF文件添加描述

2020-06-19 15:24:01 346

原创 如何解决 Unable to locate package gcc-4.6-base:i386

root@mk-ThinkPad-T460:~/Downloads/disk1# apt install gcc-4.6-base:i386Reading package lists... DoneBuilding dependency tree Reading state information... DoneE: Unable to locate package g...

2020-04-21 09:17:43 6775 2

原创 vivado怎么解决Unconstrained Logical Port [DRC NSTD-1] [DRC UCIO-1]错误

1.问题描述 很多工程有些logic port,我们不想对它进行管脚约束,但是不约束在生成bit文件时会产生类似下面的错误[DRC UCIO-1] Unconstrained Logical Port: 10 out of 28 logical ports have no user assigned specific location constraint (LOC). This m...

2020-04-09 14:39:37 15395

原创 ZC706调试for语句跑飞

总结:单步调试C的for语句时,若for没有子语句,则调试会跑飞。可以改成汇编调试

2020-04-02 09:34:03 167

原创 Busybox快速构建根文件系统

1. busybox 下载busybox源码包官网下载 busybox官网开发者手册下载完成后,解压得到如下图所示目录:busybox 与 内核源码、u-boot源码配置类似,也存在默认配置,在configs目录下面,但因为其配置比较简单,一般没采用默认配置.(思考:如何添加自定义的配置到configs目录使其能make xx_defconfig)$ mak...

2019-11-15 15:24:32 1078

转载 关于根文件系统中命令行提示符的显示

我们经常用busybox生成根文件系统,可是根文件系统起来以后命令行提示符只有一个“#”号,没有像linux发行版那样是[user@hostname currentpath] #,那么我们这里就说说如何让我们的根文件系统按这个方式显示。要修改命令行提示符,首先我们需要知道一个环境变量PS1,我们可以查看bash的帮助文档查看关于PS1的说明:bash有两级命令提示符,我们这里说的是第一级,...

2019-11-14 19:54:27 383

转载 Linux 下/etc/passwd文件详解

在Linux /etc/passwd文件中每个用户都有一个对应的记录行,它记录了这个用户的一些基本属性。系统管理员经常会接触到这个文件的修改以完成对用户的管理工作。这个文件对所有用户都是可读的。但是Linux /etc/passwd文件中都有些什么内容呢?  root:x:0:0:root:/root:/bin/bash  bin:x:1:1:bin:/bin:/sbin/nologin ...

2019-11-14 19:45:43 6827

vxWorks 使用过程中的100个疑问和解答

1.如何在bootrom添加devs命令? 2.在workbench中怎么生成vxWorks的bootrom.bin? 3. vivado 用来生成BOOT.bin的bootrom.elf 文件怎么通过Workbench获得? 5.如何对vxwork的输入输出重定向,即printf输出的对象? 7.vxBusShow 没有命令时,如何解决? 8.如何通过命令行显示驱动 以及设备 (devs)、文件描述的情况? 11. 查看can收发状况 12.查看串口收发情况 13.vxWorks怎么查看二进制文件是否有某个符号表? 14.VxWorks怎么在命令行中测试函数的执行时间? 15.vxWorks怎么获取主机的IP地址? 16.windRiver workbench 如何编译静态库? 17.如何在vxwork使用脚本(镜像和脚本同一级目录,且需要定制shell startup script组件)? 18.vxWorks 怎么判断一个任务是否存在,以及怎么根据任务名称过去ID,以及A任务如何等待任务B的结束? 19.workbench怎么在工程文本中加入路径 ......

2022-03-02

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除