- 博客(32)
- 收藏
- 关注
原创 0.ros2 + rob_slam2 + astra_pro 启动例程编译记录
使用奥比中光的体感相机; ros2 + orb_slam2 实现简图与定位
2022-07-17 15:54:07
1308
原创 Ethernet phy调试记录
Ethernet phy调试记录1,phy介绍1.1 IEEE标准phy接口寄存器0~15寄存器是标准的寄存器,每一个都有特定的意义,有些特定的也不按照这个来。2,phy驱动流程1.0 读取id以适配对应的phy驱动1.1 初始化配置配置延时,是否自动协商等1.2 获取phy当前的速度、link状态可以是如下这种获取link,也可以强制告诉mac当前phy的速度link状态...
2020-11-05 11:33:23
1213
原创 IAR 查看程序各段所占空间
CODE就是程序所在的空间:可以从图中看出来NEAR_ID占有0x60,与DATA中的NEAR_I相同。即初始化了的全局变量占有程序空间,未初始化的全局变量默认为零不占用程序空间DATA数据所占空间,也就是最后RAM中所占空间的大小ABSOLUTE:绝对变量,中断向量等所占的RAM空间。CSTACK :数据栈 局部变量所占的空间的栈,即程序运行得时候局部变量分配的栈。RSTACK:...
2019-09-01 21:20:14
1972
原创 算法的两大性能指标:时间复杂度和空间复杂度
算法是对特点问题求解步骤的一种描述。同时具备有5个重要特性:① 有穷性:一个算法必须重视在执行有穷步之后结束,且每一步都可在有穷时间内完成。② 确定性:算法中每一条指令必须有确切的含义,读者理解时不会产生二义性。并且,在任何条件下,算法只要唯一的一条执行路径,即对于相同的输入只能得出相同的输出。③ 可行性:一个算法是能行的,即算法中描述的操作都是可以通...
2019-06-26 16:19:50
7283
原创 版本管理SVN、Git的区别与使用
1. 分布式、集中式版本管理 我们在整个项目的开发过程中,会把项目分为很多个阶段来完成,每个阶段都会有一个产出,并且在一个阶段中也会有很多阶段性的成果,同时一个项目都是由很多个人来配合完成的。为了多人协作的方便以及各个阶段成果的记录,我们在开发的过程中会使用版本管理软件来实现相关的管理 我们所熟悉的版本控制器有SVN、...
2019-05-21 15:18:34
748
原创 UTF、GBK等编码以及嵌入式linux支持中文显示
1 各种字符编码1.1 ASCII Ascii:ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,采用单字节编码,即一个字符只占用一字节。我们所长用的只有0-127共128个字符,128~255是扩展字...
2019-05-20 18:34:53
4174
原创 const关键字详细解析
前言我们都知道使用const关键字限定一个变量为只读,但它是真正意义上的只读吗?实际中又该如何使用const关键字?在解答这些问题之前,我们需要先理解const关键字的基本使用。本文说明C中的const关键字,不包括C++。基本介绍const是constant的简写,是不变的意思。但并不是说它修饰常量,而是说它限定一个变量为只读。一,修饰普通变量例如:const int NUM = 1...
2019-04-09 09:30:13
489
原创 编程语言中的反射机制
今天在开发的过程中需要把两个类似产品的代码进行合并,减少代码的维护量,同时可以减少物料的维护成本。 两个产品只是一个通信用结构体内的元素有些区别,结构体相同元素的便宜地址发生了变化,同时增加了一些元素。 在设计之初应该考虑到升级的问题,应该做到通信地址兼容,不改变原来的通信地址,...
2019-04-08 20:37:37
14996
1
原创 自动控制原理(4) - 时域分析
       经典控制理论中,分析线性系统性能的方法主要有以下三点:①,时域分析法      1,直接在时间域内对系统进行分析      2,提供系统时间响应的全部信息,更加直观、准确。  &n
2019-03-19 20:40:33
10233
原创 自动控制原理(3) - 结构/信号流图
1. 结构图的绘制 结构图:对控制系统信号间的函数关系和传递关系的图形表达。引入结构图的优点:1.1 结构图的基本单元结构图的绘制1.2 结构图的绘制方法一,按照信号传递顺序来绘制二, 按照元器件来绘制三,直接由微分方程模型来绘制结构图1.3 结构图的特点 一,结构图一方面可以直观地反...
2019-03-13 22:22:48
7117
原创 机械原理(2) - 机构的结构分析
1,机构的组成和分类1.1 机构的组成要素 一,构件 :任何机器都是由许多零件组合而成。零件----独立制造单元体构件----机器中一个独立运动的单元体。 在实际机器中,构件可能是一个独立运动的零件,而往往是由若干零件刚性地连接在一起的独立运动的整体。 &n...
2019-03-12 21:09:15
5347
原创 电机学(2) - 变压器
1,变压器的基本原理       变压器是以磁场为媒介,通过电磁感应作用,把一种电压的交流电转化为同频率的一种电压的交流电。主要包括两个方面:铁芯;绕组       使用变压器的两个重要问题,额定电压要相等,包括电压和频率。变压器只有通交流才能够工作,两个绕组匝数不通就能够变压。2,变压
2019-03-11 22:29:37
7939
1
原创 机械原理(1) - 绪论
学习内容 机械原理主要研究对象包括:机械;机构;机器。机械 – 机器和机构的总称机构 – 一种用来传递和变换运动和力的可动装置机器 – 一种用来变换或传递能量、物料与信息的机构的组合 即机器是机构的组合;机器和机构统称为机械。 主要...
2019-03-04 22:20:11
890
原创 自动控制原理(2) - 线性化和传递函数
前面博客中介绍了数学模型中的微分方程,接下了继续讨论数学模型1. 非线性微分方程的线性化       严格来说,几乎所有的原件或系统的运动方程都是非线性方程。输入、输出和扰动等之间的关系都是非线性的。非线性微分方程的求解和控制系统性能研究十分复杂,线性化后可以简化系统分析
2019-02-28 21:00:47
9538
原创 linux系统 - 用户态与内核态的装换
1. 用户态向内核态切换1、发生系统调用时 这是处于用户态的进程主动请求切换到内核态的一种方式。用户态的进程通过系统调用申请使用操作系统提供的系统调用服务例程来处理任务。而系统调用的机制,其核心仍是使用了操作系统为用户特别开发的一个中断机制来实现的,即软中断。2、产生异常时 当CPU执行运行在用户态下的程序时,发生了某些事先不可知的异常,这时会触发由当前运行的进程切换到处理此异常的内...
2019-02-28 10:45:03
265
原创 ARM体系结构(2) - 性能评估
1. 处理器计算性能评估       MIPS : Million Instructions Per Second的缩写,每秒处理的百万级的机器语言指令数。这是衡量CPU速度的一个指标。像是一个Intel 80386 电脑可以每秒处理3百万到5百万机器语言指令,既我们可以说80386是3到5MIPS的CPU。MIPS只是衡量CPU性能的指标。 ...
2019-02-28 10:29:24
1957
原创 ARM体系结构(1)- 工作模式与工作状态
1. ARM的工作模式用户模式(usr):属于正常的用户模式,ARM处理器正常的程序执行状态。快速中断模式(fiq):用于处理快速中断,对高速数据传输或通道处理。外部中断模式(irq):对一般情况下的中断进行处理。管理模式(svc):属于操作系统使用的保护模式,处理软件中断swi reset。数据访问终止模式(abt):当数据或指令预取终止时进入该模式,可用于处理存储器故障、实现虚拟存储...
2019-02-26 16:54:02
1351
原创 软件工程(1)-介绍
**软件工程:**应用计算机科学,数学及管理科学等原理,以及工程化的方法制作软件的工程。软件的定义 :程序 + 文档,文档也是软件的一部分软件生存周期的模型:1,瀑布模型: 其过程是从上一项活动接收该项活动的工作对象作为输入,利用这一输入实施该项活动应完成的内容给出该项活动的工作成果,并作为输出传给下一项活动。同时评审该项活动的实施,若确...
2019-02-23 17:33:19
246
原创 自动控制原理(1)- 介绍与数学模型
在中国大学mooc学习华中科技大学自动控制原理,特写系列博客来记录学习的过程。1 介绍1.1 要求       自动控制系统的要求总结为以下四个字“稳,快,平,准”:① 稳:稳定性是保证控制系统能够正常工作的先决条件。② 快:要求被控制量由初始值变为另一希望值,系统性能能够快速响应。③ 平:当被控制量由初始值变为另一个希望值时,控制系统不会出现超...
2019-02-23 17:21:25
5116
原创 ros入门(1)-安装ros与开发包
在中国大学mooc学习机器人操作系统入门课程,特写系列教程来记录学习的过程。1 安装       教程采用Ubuntu16.04以及ROS Kinetic,为了很好的兼容学习课程也采用相同的版本1.1 配置系统源       采用国内中科大的源deb http://mirrors.u
2019-02-18 21:15:56
1775
1
原创 嵌入式软件架构设计
1.常见的误解1.1小型系统不需要架构设计 架构应当满足当前需求并适当的考虑重用和变更1.2 敏捷开发不需要框架 极限编程, 敏捷开发的出现使一些人误以为软件开发无需再做架构了。 这是一个很大的误解。 敏捷开发是在传统瀑布式开发流程出现明显弊端后提出的解决方案, 所以它必然有一个更高的起...
2019-01-23 22:30:43
1372
原创 linux内核设计与实现(2)-- 中断和中断处理
中断       中断就是一些外设硬件发送通知给处理器的通道。外设可以不在cpu的干预下执行一些动作,在完成这些任务后通过中断通知CPU。每个中断都有一个系统唯一的中断号。中断上半部和下半部       为了解决中断处理函数运行得快且完成尽量多的工作量的矛盾,我们一般把中断处理切为两部分。
2019-01-13 23:17:15
338
原创 vbs解决Windows命令行无法交互输入的问题
近期有一个开发任务需求:在pc上运行脚本直接更新zynq cpu1程序。背景 :cpu0跑了linux系统,cpu1跑了一个实时操作系统,linux的启动bios实现从flash读取程序加载cpu1已经实现: 在linux输入命令行能够更新flash中的cpu1程序,重启系统就可以实现cpu1的程序更新运行。需要解决的问题: 需要连接ssh然后拷贝程序到linux目录下,再运行flashc...
2018-12-07 16:24:04
1979
3
原创 内核调试方法
1 .打印       跟普通应用程序一样,打印信息是最直接的调试手段,通过打印信息来获得内核运行的情况和状态。1.1 printk       功能:通过控制台把内核信息按照日志级别打印出来。      &a
2018-11-21 22:29:03
957
转载 关于 error: LNK1123: failure during conversion to COFF: file invalid or corrupt 错误的解决方案【Qt】【 VS2010】
转载:https://www.cnblogs.com/lazy-ant/p/3660263.html?utm_source=tuicool近日因为换装硬盘重装了系统,于是不得不重新安装VS2010 Qt 这些个开发工具。安装过程都没什么问题,安装完了顺手点了个例子测试下好没好用,于是就出现了标题中的错误提示。之前处理过一次,时间久了就忘了,于是又一顿搜索解决了。这次长个心眼,记下,免得以后又忘了...
2018-10-19 16:16:07
303
原创 Linux内核设计与实现(1)--内核开发的特点
1. 内核编程时既不能访问C库也不能访问标准的C头文件       其中的原因有很多种。其一,C标准库的很多函数实现都是基于内核实现的,这内核编译的时候都还没有内核,所以就不存在这些函数,这个就是先有鸡还是先有蛋这个悖论。其二,其主主要的的原因是熟读和大小。对于内核来说,完整的C库–哪怕是它的一个子集,都太大且太低效了。    &
2018-10-18 20:49:32
351
原创 SPI总线驱动、设备驱动
SPI驱动分析zynq SPI控制器理解记录SPI总线SPI Master控制器驱动SPI Device驱动其他外设使用SPI通信源码记录问题记录一次传递一定数量的时候出现了超时的现象zynq SPI控制器理解记录如下:spi一般都由一下两个不通的模式组合成四个模式:自动/手到发送数据:自动:当TxFIFO有数据就进行发送;无数据则停止发送。手动:通过使能发送位进行数据的发送。自动/手...
2018-10-17 21:28:48
2150
原创 nor flash 、nand flash、serial 区别
FLASH存储器又称闪存,主要有两种:NorFlash和NandFlash,下面我们从多个角度来对比介绍一下。在实际开发中,设计者可以根据产品需求来进行闪存的合理选择。1、接口对比NorFlash带有通用的SRAM接口,可以轻松地挂接在CPU的地址、数据总线上,对CPU的接口要求低。NorFlash的特点是芯片内执行(XIP,eXecute In Place),这样应用程序可以直接在flash...
2018-10-13 11:27:45
4925
1
原创 qspi flash驱动开发记录
目录序驱动概括驱动框架演变1,设备和驱动在一起2,设备和驱动分离3,设备树的引入设备树qspi flash预备知识zynq qspi memory 控制器介绍qspi协议介绍qspi flash介绍块设备驱动框架介绍qspi flash驱动介绍出现的问题记录1. 系统无法软重启////////////////////////////////欢迎使用Markdown编辑器新的改变功能快捷键合理的创建...
2018-10-10 22:17:11
8129
1
转载 MODULE_DEVICE_TABLE宏的作用(转)
1. MODULE_DEVICE_TABLE (usb, skel_table);该宏生成一个名为__mod_pci_device_table的局部变量,该变量指向第二个参数。内核构建时,depmod程序会在所有模块中搜索符号__mod_pci_device_table,把数据(设备列表)从模块中抽出,添加到映射文件/lib/modules...
2018-10-10 11:27:00
514
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人