Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
png格式解码库移植过程详解
1 zlib库和png库的源码获取 1 zlib库源码下载网址 http www zlib net 2 libpng库源码下载网址 ftp ftp simplesystems org pub libpng png src libpng16
嵌入式开发中的总结
小项目
PNG
c语言
嵌入式开发——文件系统部署rz、sz命令
1 rz sz命令源码下载 下载网址 https ohse de uwe software lrzsz html 2 源码编译 tar zxvf lrzsz 0 12 20 tar gz cd lrzsz 0 12 20 configure
嵌入式开发中的总结
Linux
嵌入式
uboot下实现U盘自动升级程序的思路分析(基于USB系统、eMMC系统、FAT32文件系统)
1 常见的升级方式 1 1 应用程序升级 优点 在图形化界面操作 只需要选中升级文件并点击升级即可 操作简单 缺点 应用程序必须能正常启动 当程序出现bug就不能升级 可靠性差 总结 操作简单 适合用户 1 2 uboot下tftp升级 优
嵌入式开发中的总结
Linux
网络
运维
嵌入式开发中常用且杂散的命令
1 mount命令 挂载linux系统 mkdir tmp share mount t nfs 10 77 66 88 share tmp share o nolock tcp cd tmp share 挂载Windows系统 mkdir
嵌入式开发中的总结
嵌入式软件开发
Thumb和ARM指令不能切换问题(error:unsupported interworking call (Thumb -> ARM))
1 报错现象 xxx ko ection 3 reloc 4 sym xxxxxx unsupported interworking call Thumb gt ARM 2 报错原因和分析 报错信息的翻译 程序不支持代码交织 thumb态切
嵌入式开发中的总结
编译器
跨平台传输结构体的注意事项
1 什么是跨平台 1 这里的平台是按照CPU的位数来划分 分为32位CPU和64位CPU 不同位数CPU的差异会影响到结构体的解析 2 在实际嵌入式开发中 存在 主芯片 从芯片 的多CPU的产品 或者数据需要在不同位数CPU的机器上传输 3
嵌入式开发中的总结
c
c语言
网络协议
修改 bootargs 方式增加分区(mtd分区和blkdevparts分区)
1 Linux内核设置分区的两种方式 1 1 内核代码中写死 在内核的平台代码中写死 然后在初始化NandFlash的时候设置 1 2 uboot通过bootargs传递分区表 1 u boot将分区信息 形如 mtdparts xxx b
嵌入式开发中的总结
Linux内核
flash分区
嵌入式
查看pcie总线上的设备ID以及带宽计算
1 获取设备在pcie总线上的ID lspci 00 00 0 Class 0600 Device 8086 190f rev 07 00 01 0 Class 0604 Device 8086 1901 rev 07 00 01 1 Cl
嵌入式开发中的总结
PCIe
C语言实现RGB888转BMP格式图片功能
1 bmp格式介绍 bmp格式图片里实际存储的也是RGB原始数据 可以分为8bit 16bit 24bit 32bit的bmp格式 也就是指bmp图片中保存的RGB是用8bit 16bit 24bit 32bit来表示 简单理解就是在原始R
嵌入式开发中的总结
bmp
RGB
jpg解码库移植过程详解
1 jpg解码库的源码获取 1 可以从网站下载 http www photopost com jpegsrc v6b tar gz 2 我下面的移植过程是根据jpegsrc v6b tar gz版本的jpg解码库移植的 如果是其他版本的jp
嵌入式开发中的总结
小项目
arm开发
Ubuntu中报错:failed to create hard link
1 完整报错打印 上面是我在编译jpg图片的解码库时遇到的报错 报错原因显示创建硬链接失败 不允许创建硬链接 2 报错原因分析 1 我是在Ubuntu和Windows的共享文件夹目录中编译程序 共享目录是Ubuntu和Windows共享的
嵌入式开发中的总结
Ubuntu
Linux
查看C语言文件依赖关系(用-Wp,MD参数生成.d文件)
1 wp MD参数介绍 1 在编译c源文件时使用该参数 会生成对应C源文件的 d格式的文件 d格式的文件内容是C源文件的依赖关系 2 C源文件的依赖关系就是源文件调用了哪些头文件 可以方便我们确认工程中的同名头文件到底是引用的哪一份 3 在
嵌入式开发中的总结
c语言
Linux
arm开发
makefile
如何快速确认代码是否被编译链接
1 应用场景 1 在大型项目中 通过编译选项可以编译成不同平台 不同分支的程序 2 编译出来不同的程序 原因就是编译链接了不同的头文件和源代码 比如 工程中不同路径下存在多份同名文件 文件里通过宏定义有多个代码分支 2 确认方法 2 1 分
嵌入式开发中的总结
c语言
嵌入式
嵌入式开发——常见的存储器分类和特性介绍
1 存储器的组成 存储器大体上由 存储颗粒 控制电路 组成 存储颗粒负责存储数据 控制电路负责管理存储颗粒和对外交换数据 如果从存储颗粒上进行分类 就是以是否掉电丢失 是否随机寻址 是可读还是可写 是否需要初始化等标准进行分类 如果从控制电
嵌入式开发中的总结
嵌入式
C语言库编译时添加编译时间和svn版本号
1 功能应用背景和开发思路 1 应用背景 当程序出错时 我们想要知道库的版本信息 这样有助于定位错误是哪个版本引入的 缩小排查的范围 就算程序没有出错 能知道库的版本 也方便知道程序的版本 2 思路 在编译源码时 获取svn版本和编译时间并
嵌入式开发中的总结
SVN
c语言
开发语言
C语言静态库、动态库的封装和注意事项
1 动态库 静态库介绍 参考博客 静态库和动态库介绍以及Makefile 2 代码目录结构和编译脚本 参考博客 实际工作开发中C语言工程的目录结构分析 3 编写库的流程 1 明确需求 需求是否合理 需求的使用场景 需求可能遇到的出错情况 2
嵌入式开发中的总结
c语言
开发语言
嵌入式
软浮点硬浮点不配套问题(error:uses VFP register arguments)
1 前言 报错信息 error home xxx a uses VFP register arguments home xxx a does not VFP Virtual Float Point 是虚拟浮点运算 又分为硬件浮点数计算和软件
嵌入式开发中的总结
编译器