Firmware
cherisegege
这个作者很懒,什么都没留下…
展开
-
串行 spi Flash 跨页编程的注意点
spi Flash 进行 page program的时候,编程的数据为1-256个字节不等。在Datasheet中,如果编程的数据为256个字节,那么,输入的起始地址需要256个字节对齐,即需要页对齐。但如果编程的数据小于256个字节,datasheet则语焉不详。前几天在优化spi flash驱动的时候,为了提升flash编程速度,将page从4个字节增加到12个字节。由于没有注意到跨页转载 2018-01-23 09:08:02 · 3958 阅读 · 1 评论 -
有符号数据的符号位扩展
简介:在写传感器驱动程序的时候经常会遇到输出数据位数在8到16位之间。这样,在调试的时候如果使用printf直接输出数据,有可能出现错误。因为printf在打印的时候会做数据类型判断。所以我们需要对数据做符号位扩展。使用例子:比如说现在有一个输出为12位的加速度计数据,最高位表示数据符号位。现在读取X轴的数据(两个8位寄存器)如下:所以我们需要一个16位有符号变量来存储X轴的数据,现定义一个 in...原创 2017-08-03 20:36:04 · 5192 阅读 · 0 评论 -
Intel Hex格式说明
1.什么是Intel Hex文件Intel HEX文件时遵循Intel HEX文件格式的ASCII文本文件。在Intel HEX文件的每一行都包含了 一个HEX记录。这些记录是由一些代表机器语言代码和常量的16进制数据组成的。Intel HEX文件常用来传输要存储在ROM 或者 EPROM中的程序和数据。大部分的EPROM编程器能使用Intel HEX文件。2.Intel HEX文件组成Intel...转载 2018-02-11 11:18:44 · 1811 阅读 · 1 评论 -
四字节内存对齐
首先我们先看看下面的C语言的结构体:[cpp] view plain copytypedef struct MemAlign { int a; char b[3]; int c; }MemAlign; 以上这个结构体占用内存多少空间呢?也许你会说,这个简单,计算每个类型的大小,将它们相加就行了,以32为平台为例,int类型占4字节,char占用1字节,所...转载 2018-03-07 15:42:01 · 869 阅读 · 0 评论