嵌入式集
文章平均质量分 57
会飞到空中的鱼
这个作者很懒,什么都没留下…
展开
-
Volatile
简述volatile译为:易变的。这不是和题目的让我保持原样矛盾了吗?其实不然,在变量前加上该关键字修饰,确实是告诉编译器,这个变量是一个容易改变的变量,不要对它进行优化,每次都要到变量的地址中去读取变量的数据,但正因为这样,才是保持了变量的原样,因为变量已经发生改变了,你却操作的是没有变化时的数据,这样才让变量失去了本应该保持的属性。eg:int a=1;a=2;a=3;....编译器看到这样的代转载 2017-11-21 11:35:54 · 128 阅读 · 0 评论 -
What is Gstreamer?
What is GStreamer?GStreamer is a framework for creating streaming media applications. The fundamental design comes from the video pipeline at Oregon Graduate Institute, as well as some ideas from Dire...原创 2018-05-16 13:23:45 · 188 阅读 · 0 评论 -
Gsteamer Foundations
FoundationsThis chapter of the guide introduces the basic concepts of GStreamer. Understanding these concepts will be important in reading any of the rest of this guide, all of them assume understandi...原创 2018-05-16 14:07:24 · 238 阅读 · 0 评论 -
Cmake-build-env
1.在linux环境下打开网页浏览器,输入网址:https://cmake.org/download/,找到最新版本的位置。一般开放源代码软件都会有两个版本发布:Source Distribution 和 Binary Distribution,前者是源代码版,你需要自己编译成可执行软件。后者是已经编译好的可执行版,直接可以拿来用的。 2.在linux环境下打开终端,输入:[cpp] vie...转载 2018-05-31 15:10:01 · 306 阅读 · 0 评论 -
Linux USBTOUCH 简单开启
前言:对于触摸屏最简单粗暴的方式是使用USB触摸屏来做,免驱那种,那么如何在做好了USB驱动的情况下enable usb触摸驱动代码?设备:usb 免驱触摸屏Target:RcarM3(aarch64 架构)Linux 内核版本:4.1.41. 在drivers\hid\hid-ids.h增加以下两条宏定义(如果存在则忽略此步骤)#define USB_VENDOR_ID_GOODTOUCH 0...原创 2018-06-07 21:04:07 · 1512 阅读 · 0 评论 -
PCIe Protocol
1 PCIE基本概念1.1 PCIE拓扑架构图 1.2 PCIE Switch内部结构图 1.3 PCIE协议结构图 2 PCIE枚举原理2.1 Type0&Type1配置头空间2.2 拓扑示例连接Device0的端口设为Port0,连接Device1的端口设为Port1 (Port可以看作PC...转载 2018-07-17 11:08:20 · 595 阅读 · 0 评论 -
MIPI interface define
文章转自:http://blog.csdn.net/shen924/article/details/9140509,留此作为备份,感谢原创贡献~一、MIPIMIPI(移动行业处理器接口)是Mobile Industry Processor Interface的缩写。MIPI(移动行业处理器接口)是MIPI联盟发起的为移动应用处理器制定的开放标准。已经完成和正在计划中的规范如下:...转载 2018-07-28 15:46:56 · 287 阅读 · 0 评论 -
emmc读写速度性能分析
环境:linux (aarch64 cpu)分析:1)linux系统的启动,从bootloader到linux kernel startup,最后挂载rootfs。整个过程的启动速度,除去软件驱动因素,若是emmc boot,硬件因素为emmc的读写速度+cache性能2)分清楚是为①测启动速度的emmc读写速度性能,还是是②光是只是侧emmc的读写速度?dd指令测试emmc bo...原创 2018-07-21 14:03:54 · 20233 阅读 · 0 评论 -
UBoot指令
U-Boot提供了更加详细的命令帮助,可以通过”?”显示支持的命令列表,通过help [CommandName]命令还可以查看每个命令的参数说明。 1、bootmbootm [addr [arg ...]] - boot application image stored in memory passing arguments 'arg ...'; whe...转载 2018-07-27 15:34:28 · 369 阅读 · 0 评论 -
To know Linux-thermal drivers
Linux Thermal 是 Linux 系统下温度控制相关的模块,主要用来控制系统运行过程中芯片产生的热量,使芯片温度和设备外壳温度维持在一个安全、舒适的范围。那下面我们就来一起看看对于温度控制这样一个需求,Linux 内核是怎么实现的。Thermal 的主要框架要实现一个温度控制的需求,试想一下我们是不是最少要有获取温度的设备和控制温度的设备这两个最基本的东西?当然附带的也会产生...转载 2018-08-27 14:39:30 · 189 阅读 · 0 评论 -
GIT commands
一般来说,日常使用只要记住下图6个命令,就可以了。但是熟练使用,恐怕要记住60~100个命令。下面是我整理的常用 Git 命令清单。几个专用名词的译名如下。Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库一、新建代码库# 在当前目录新建一个Git代码库$ git init# ...转载 2018-12-04 09:50:01 · 124 阅读 · 0 评论 -
yocto_evn compile project whithconfigure
一种方法是在./configure后指定编译相关的参数./configure --host=aarch64-poky-linux另一种方法是使用环境变量中的编译相关的参数,这时需要修改configure文件# cross_compiling=nocross_compiling=yes12然后执行source /opt/poky/2.0.1/environment-setup-a...转载 2018-12-18 15:04:01 · 147 阅读 · 0 评论 -
Ubuntu install mysql
1. sudo apt-get install mysql-server 2. apt-get isntall mysql-client 3. sudo apt-get install libmysqlclient-dev 安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检查是否安装成功: sudo netsta...转载 2019-01-08 13:06:27 · 115 阅读 · 0 评论 -
emmc knowledge point
https://blog.csdn.net/u010444107/article/details/78354541原创 2019-02-28 15:35:58 · 360 阅读 · 0 评论 -
Gstreamer introduction
PrefaceWhat is GStreamer?GStreamer is a framework for creating streaming media applications. The fundamental design comes from the video pipeline at Oregon Graduate Institute, as well as some ideas fr...原创 2018-05-16 11:06:34 · 147 阅读 · 0 评论 -
dd指令
一、dd命令dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512;c=1;k=1024;w=2参数注释:if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file > of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file > ibs...转载 2018-04-28 10:14:36 · 352 阅读 · 0 评论 -
Cerbero build Gstreamer for platforms
Building from source using CerberoThis section is intended for advanced users.Build requirementsThe GStreamer build system provides bootstrapping facilities for all platforms, but it still needs a min...转载 2018-05-18 17:46:18 · 562 阅读 · 0 评论 -
OSI-network layout
OSI 七层网络架构OSI 七层对应Linux TCP/IP 协议层原创 2017-11-21 14:12:05 · 189 阅读 · 0 评论 -
HTTP 2 TCP/IP
TCP/IP四层HTTP 最终封装成的数据格式原创 2017-11-21 14:26:59 · 226 阅读 · 0 评论 -
I2C 总结
1.what is I2C?简单讲就是用来传输数据的两根线:一根数据线(SDA)一根时钟线(SCL)2.I2C怎么传输的?(1)基本过程: 1.主机发出开始信号 2.主机接着发出一字节的从机地址信息,其中最低位为读写控制码(1为读、0为写) 高七位为从机器件地址 3.从机发出认可信号 4.主机开始发送信转载 2018-01-31 14:03:50 · 396 阅读 · 0 评论 -
ESP8266编译环境的搭建
一、交叉编译器下载1.官方版下载:xtensa-lx106-elf.bz2在windows下载完成后再复制至Ubuntu下,使用sudo tar jxvf xtensa-lx106-elf.bz2 -C /opt 解压至/opt目录2.自编译版本:位于https://git.coding.net/flyingcys/xtensa-lx106-elf.git下直接在/opt执行sud转载 2018-01-08 10:10:15 · 541 阅读 · 0 评论 -
ARM--汇编总结
一. 带点的(一般都是ARM GNU伪汇编指令)1. ".text"、".data"、".bss"依次表示的是“以下是代码段”,“以下是初始化数据段”,“以下是未初始化数据段”。2.".global"定义一个全局符号,通常是为ld使用。比如经常看到的.global _start3.".ascii"、".byte"、".shor转载 2018-01-10 11:19:01 · 193 阅读 · 0 评论 -
C语言常用库
一、数学函数调用数学函数时,要求在源文件中包下以下命令行:#include <math.h>函数原型说明功能返回值说明int abs( int x)求整数x的绝对值计算结果 double fabs(double x)求双精度实数x的绝对值计算结果 double acos(double x)计算cos-1(x)的值计算结果x在-1~1范围内double asin(double x)计算s...转载 2018-03-07 22:41:22 · 214 阅读 · 0 评论 -
How to Upgrade ubuntu14.04 kernel?
查看内核[cpp] view plain copy$ uname -rs 下载内核http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4.40/ 下载内核升级文件[cpp] view plain copy [html] view plain copylinux-headers-4.4.40-040440_4.4.40-040440.2017010...转载 2018-04-09 15:47:22 · 184 阅读 · 0 评论 -
hypervisor初识
hypervisor:一种运行在物理服务器和操作系统之间的中间层软件,可以允许多个操作系统和应用共享一套基础物理硬件。可以将hypervisor看做是虚拟环境中的“元”操作系统,可以协调访问服务器上的所有物理设备和虚拟机,所以又称为虚拟机监视器(virtual machine monitor)。hypervisor是所有虚拟化技术的核心,非中断的支持多工作负载迁移是hypervisor的基本功能。...转载 2018-03-27 11:08:55 · 501 阅读 · 0 评论 -
Linux 虚拟化Hypervisor技术初识
虚拟化和 hypervisor在本文中,虚拟化 就是通过某种方式隐藏底层物理硬件的过程,从而让多个操作系统可以透明地使用和共享它。这种架构的另一个更常见的名称是平台虚拟化。在典型的分层架构中,提供平台虚拟化的层称为 hypervisor (有时称为虚拟机管理程序 或 VMM)。来宾操作系统称为虚拟机(VM),因为对这些 VM 而言,硬件是专门针对它们虚拟化的。图 1 简单的展示了这个分层架构。我们...转载 2018-03-28 10:23:51 · 1336 阅读 · 0 评论 -
优先级反转&优先级继承
优先级反转:准确来说,指的是一种现象,并非一项任务调度技术,即高优先级任务被低优先级任务阻塞推迟的行为被称为“优先级反转”。这是一种不合理的行为方式,如果把这种行为再进一步放大,当高优先级任务正等待信号量(此信号量被一个低优先级任务拥有着)的时候,一个介于两个任务优先之间的中等优先级任务开始执行——这就会导致一个高优先级任务在等待一个低优先级任务,而低优先级任务却无法执行类似死锁的情形发生。正常调...转载 2018-03-28 15:32:48 · 424 阅读 · 0 评论 -
Linux_C实现try catch异常捕获
前言:像如java这样的面相对象语言,异常处理机制让其代码更具健壮性,可以代码捕获到如算术异常,空指针异常等,俘获并能够在预知情况下进行相应处理。那么对于C而言,是否能实现其功能?简要分析:Linux有对线程或者进程退出时有一种信号量机制,而默认情况下,这种signal是系统自己处理的,而最统一的处理方式是exit,而至于什么原因退出这个完全取决于什么样的信号。至于linux下的这些signal多...原创 2018-03-29 09:13:55 · 5842 阅读 · 0 评论 -
STM32 to eclipse
首先,新建STM32Cube工程,在SYS菜单下选择 Serial Wire。进入工程菜单下的设置界面更改Toolchain/IDE为TrueSTUDIO点击工程-生成代码,可以看到生成的文件接下来新建一个eclipse空的C工程新建工程成功后,把STM32Cube生成的代码文件copy到eclipse工程中拷贝完成后eclipse工程的文件如下:进入eclipse界面,Project-Prope...转载 2018-04-13 21:00:24 · 525 阅读 · 0 评论 -
Linux-DMA
DMA是一种无需CPU的参与就可以让外设和系统内存之间进行双向数据传输的硬件机制。使用DMA可以使系统CPU从实际的I/O数据传输过程中摆脱出来,从而大大提高系统的吞吐率。DMA经常与硬件体系结构特别是外设的总线技术密切相关。一、DMA控制器硬件结构 DMA允许外围设备和主内存之间直接传输 I/O 数据, DMA 依赖于系统。每一种体系结构DMA传输不同,编程接口也不同。数据传输可以以...转载 2018-05-09 09:32:05 · 209 阅读 · 0 评论 -
SPI 工作模式
在芯片资料上极性和相位一般表示为CPOL(Clock POLarity)和CPHA(Clock PHAse), 极性和相位组合成4种工作模式。CPOL CPHAMODE0 0 0MODE1 0 1MODE2 1 0MODE3 1 1CPOL: SPI空闲时的时钟信号电平(1:高电平, 0:低电平)CPHA: SPI在时钟第几个边沿采样(1:第二个边沿开始, 0:第一个边沿开始)MO...转载 2019-05-31 11:39:19 · 915 阅读 · 0 评论