自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

海滩上的孩子

学而不思则罔,思而不学则殆

  • 博客(24)
  • 资源 (2)
  • 收藏
  • 关注

原创 Windows 下 Git 的中文支持

Windows 下 Git 的中文支持由于 Windows 下使用各地区本地的编码方案,而 Linux 下统一使用更加国际化的 Unicode 编码,中文字符在不同编码混杂时往往面临窘境。想要在 Git 中使用中文也要作一些配置。

2017-07-27 12:07:16 4552

原创 使用 Docker 构建 PetaLinux 开发环境

本文利用 Docker 构建了 PetaLinux 开发环境,涉及 Dokcerfile 的编写、利用 expect 脚本进行自动化安装、镜像体积的优化等内容。

2017-07-26 20:00:54 2996

原创 在自定义的 btrfs+subvolume 上安装 Deepin 15

本文主要参考自《在自定义的 btrfs+subvolume 上安装 Deepin 2014》这篇博客,并尝试应用到 Deepin 15 上,略有不同的是我使用了 UEFI 来引导。试验的操作系统版本:Deepin 15.3试验环境:Vmware Workstation 12 Pro (使用 UEF

2017-02-23 15:54:48 3035

原创 根据美光内存颗粒上的编码查询对应型号

根据美光内存颗粒上的编码查询对应型号今天遇到需要查看美光内存颗粒容量的问题。美光FBGA封装的DDR颗粒上只有两行,每行5位的编码。根据美光官网上的说明,由于FBGA封装上空间的限制,不能印完整的型号信息,只能用编码表示,其中第二行的5位编码可以用于查询对应的型号信息。官方提供了FBGA & Component Marking Decoder工具来查询FBGA code对应的型号,进而就可以查找到了

2016-12-14 12:01:15 57373 1

原创 [realview] warning: #550-D: variable "d" was set but never used

realview arm 编译器warning 550-D: variable “d” was set but never used描述: 变量’d’定义但从未使用,或者是,虽然这个变量你使用了,但编译器认为变量d所在的语句没有意义,编译器把它优化了.使用RealView的amrcc编译器时遇到了这个警告,本想设置个临时变量存储一个结果,然后在调试器中查看。开始没有注意这个警告,调试时才发现变

2016-01-16 10:19:46 12291

原创 C语言逗号运算符和逗号表达式

C语言逗号运算符和逗号表达式在C语言中,逗号“,”也是一种运算符,称为逗号运算符。 其功能是把两个表达式连接起来组成一个表达式, 称为逗号表达式。

2015-12-19 10:08:44 1377

原创 C语言访问MCU寄存器的三种方式

C语言访问MCU寄存器的三种方式 MCU中的特殊功能寄存器SFR,实际上就是SRAM地址已经确定的SRAM单元,在C语言环境下对其访问归纳起来有3种方法。

2015-09-03 14:09:15 7705 1

原创 expected '=', ',', ';', 'asm' or '__attribute__' before

expected '=', ',', ';', 'asm' or '__attribute__' beforeexpected ')' before今天使用avr-gcc 4.3.3编译程序出现一系列以上error,研究了半天都毫无所获。这似乎是gcc下比较容易遇到的问题,以前也遇到过这种情况,但都没有记录、整理,所以今天遇到的时候又手足无措了。经过在网上的疯狂搜索

2014-02-24 20:14:20 26903 1

转载 FreeRTOS 源代码的编程标准与命名约定

一、编程标准 (Coding Standard)FreeRTOS 源代码遵守 MISRA (Motor Industry Software Reliability Association) 规范。与 MISRA 标准有出入的地方如下:两个 API 函数具有两个出口点。之所以这样是为了效率。 使用标准 C 数据类型,而不是用 typedef 将其名称重定义。当建立一个任务时,

2014-01-29 18:02:59 960

转载 字符编码简介:ASCII,Unicode,UTF-8,GB2312

1. ASCII码    我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从0000000到11111111。    上个世纪60年代,美国制定了一套字符编码,对英

2013-11-27 10:23:05 864

转载 软件版本命名

Alpha:是内部测试版,一般不向外部发布,会有很多Bug.一般只有测试人员使用。Beta:也是测试版,这个阶段的版本会一直加入新的功能。在Alpha版之后推出。RC:(Release Candidate) 顾名思义么 ! 用在软件上就是候选版本。系统平台上就是发行候选版本。RC版不会再加入新的功能了,主要着重于除错。GA:General Availabilit

2013-11-08 10:56:03 824

转载 恢复Cygwin快捷方式

这里介绍手动创建Cygwin的快捷方式。(1)首先说明一点,Cygwin的快捷方式实际上是指向一个名为Cygwin.bat的批处理文件,而不是大家常见到的.exe文件。其实原理是一样的,批处理文件跟exe文件一样都是可执行文件,不同的是现在批处理很少见了,而安全防卫软件通常就把批处理文件当成有问题程序给删掉了。(2)找到Cygwin安装文件夹,本人安装在D:\cygwin,注意这个

2013-08-22 13:58:19 1131

转载 好命名胜于任何注释

设计软件除了从思想上要把握其结构,在实现上也得费番心思,比如变量与函数的命名就位列其中,毕竟程序是设计思想的物质外壳,再好的思想必须通过最后的程序代码去体现。命名的重要性如同写文章时的用词和语句的组织,一篇好的文章除了注意用词,还得将文章组织得“行云流水”,为程序命名也如此。    现在通过一个例子来说明命名的重要性,假设要为双向链表(Double-Linked List,简称dll)设计

2013-08-15 09:18:59 980

转载 精确包含头文件

请注意这里用的是“精确”而不是“正确”,之所以不说正确,那是因为如果头文件没有被正确地包含的话,编译器是不会生成最终的目标代码的。那用精确一词想表达除正确之外的什么意思呢?包含两层意思。第一层意思是,只包含必需的头文件。图1是一个简单的示例程序,先让我们假设这个文件只有foo()一个函数的实现,在foo()函数中也只有简单的一行打印语句。我们知道printf()函数的原型声明来源于标准库的

2013-08-11 12:24:34 878

转载 TortoiseSVN :提交后,如何修改log

使用subversion过程中,有时候提交后发现message写的有点问题。如何修改呢?默认情况下,subversion server是不允许客户端修改提交后的任何东西的。实在要修改的话,首先要修改一server的hook,让server允许修改才可以。1. 在windows下的subversion server,在项目hooks目录下新建一个pre-revpr

2013-08-06 11:54:38 2926

转载 大小端模式详解

端模式(Endian)的这个词出自Jonathan Swift书写的《格列佛游记》。这本书根据将鸡蛋敲开的方法不同将所有的人分为两类,从圆头开始将鸡蛋敲开的人被归为Big Endian,从尖头开始将鸡蛋敲开的人被归为Littile Endian(这句话最为形象)。小人国的内战就源于吃鸡蛋时是究竟从大头(Big-Endian)敲开还是从小头(Little-Endian)敲开。在计算机业Big End

2013-08-05 12:27:17 750

转载 __attribute__机制介绍

1. __attribute__GNU C的一大特色(却不被初学者所知)就是__attribute__机制。__attribute__可以设置函数属性(Function Attribute)、变量属性(Variable Attribute)和类型属性(Type Attribute)__attribute__前后都有两个下划线,并且后面会紧跟一对原括弧,括弧里面是相应的__attribu

2013-08-04 20:20:05 839

转载 编程常用缩写

编程中经常会为了减小标识符的长度而采用缩写,这通常是去掉一些元音字母完成的,但更多的时候我们使用一些常用、通用的缩写,本人整理的网上的一些相关资料如下。说明:1、本缩写表是《编码命名规范》的附录。2、本缩写表中列出的都是通用性缩写,不提供标准缩写,如:Win9x、COM 等。3、使用本缩写表里的缩写时,请对其进行必要的注释说明。4、除少数情况以外,大部分缩写与大小写无关

2013-08-04 18:42:58 36869 5

转载 suggest parentheses around comparison in operand of &

warning: suggest parentheses around comparison in operand of ‘&’ [-Wparentheses]该警告希望你在&(逻辑与)表达式左右加上括号。有的时候&&(逻辑且)少写了一个&,也会产生该警告。例如:   if((a[2]>>1)&0x1 == 1){              .........

2013-07-25 09:39:47 10361

转载 回车符号与换行符号

一、回车与换行的来历 关于“回车”(carriage return)和“换行”(line feed)这两个概念的来历和区别。       在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢

2013-07-24 14:40:09 2009

转载 C语言的inline

一、inline 关键字用来定义一个类的内联函数,引入它的主要原因是用它替代C中表达式形式的宏定义。  表达式形式的宏定义一例:  #define ExpressionName(Var1,Var2) ((Var1)+(Var2))*((Var1)-(Var2))为什么要取代这种形式呢,且听我道来:  1. 首先谈一下在C中使用这种形式宏定义的原因,C语言是一个效

2013-07-23 17:22:08 898

原创 do-while-zero 结构在宏定义中的应用

do while 语句在使用宏定义时是一个有用的技巧,说明如下:假设有这样一个宏定义#define macro(condition) /if(condition) dosomething()现在在程序中这样使用这个宏:if(temp) macro(i);else doanotherthing();一切看起来很正常,但是仔细想想。这个宏会展开成:if(temp)

2013-07-11 13:06:01 1158

转载 关于运放的几个概念

转自http://blog.163.com/liuyunqian@yeah/blog/static/70395843201153023837809/压摆率slew rate压摆率在英文里是slew rate,简写为SR。压摆率也称转换速率。压摆率的意思就是运算放大器输出电压的转换速率,单位有通常有V/s,V/ms和V/μs三种,它反映 的是一个运算放大器在速度方

2013-07-11 12:04:08 1979

转载 Vim命令

本章提供足够的信息使你用够使用 Vim 来做基本的编辑。这里提供的方法不一定是高效 快捷的。但起码是有效的。花些时间去练习这些命令,这是后面的知识的基础。|02.1|  第一次运行 Vim |02.2|  插入文本 |02.3|  移动光标 |02.4|  删除字符 |02.5|  撤销与重做 |02.6|  其它编辑命令 |02.7|  退出 |02.8|

2013-06-28 12:24:07 852

程序员的数学-结城浩

程序员的数学 图灵设计丛书 日文版以重印14次

2013-03-31

空空如也

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

TA关注的人

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