自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 资源 (10)
  • 收藏
  • 关注

转载 Makefile中的export

嵌入式Linux中文站帮助大家学习Makefile,在shell中,可以使用export修改当前进程的环境变量。例如,export PATH=.:$PATH就可以将当前路径加入可执行文件查找路径中,这样你就不要敲“./excutable” 来执行当前路径中的excutable。而只需要键入 “excutable” 就行了。make可以执行shell命令,当然也包括export。同时

2014-12-31 14:11:43 3248

转载 嵌套执行make

嵌套执行make在一些大的工程中,我们会把我们不同模块或是不同功能的源文件放在不同的目录中,我们可以在每个目录中都书写一个该目录的Makefile,这有利于让我们的Makefile变得更加地简洁,而不至于把所有的东西全部写在一个Makefile中,这样会很难维护我们的Makefile,这个技术对于我们模块编译和分段编译有着非常大的好处。例如,我们有一个子目录叫subdir,这个目录

2014-12-31 14:02:07 609

转载 makefile 中 $@ $^ %< 使用

这篇文章介绍在LINUX下进行C语言编程所需要的基础知识。在这篇文章当中,我们将会学到以下内容:源程序编译Makefile的编写程序库的链接程序的调试头文件和系统求助1.源程序的编译在Linux下面,如果要编译一个C语言源程序,我们要使用GNU的gcc编译器。 下面我们以一个实例来说明如何使用gcc编译器。假设我们有下面一个非

2014-12-30 18:02:10 443

转载 C|C++中的静态全局变量,静态局部变量,全局变量,局部变量的区别

static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。 一、面向过程设计中的static 全局变量、局部变量、静态全局变量、静态局部变量的区别 C++变量根据定义的位置的不同的生命周期,具有不同的作用域,作用域可分为6种:全局作用域,局部作用域,语句作用域,类作用域,

2014-12-26 14:17:56 659

转载 再谈typedef(重点为函数指针)

有种很方便的写法。typedef int *p;p pointer;这时直接把pointer带入原式中,取代p然后去掉typedef,得到的结果就是int * pointer;哈哈,这样直接替换就很直观多了。C语言语法简单,但内涵却博大精深;如果在学习时只是止步于表面,那么往往后期会遇到很多困难。typedef是C语言中一个很好用的工具,大量存在于已有代码中,特别值得一提的是:

2014-12-25 16:44:59 417

转载 typedef 函数指针的用法(附例子)

进入正文: 代码简化, 促进跨平台开发的目的. typedef 行为有点像 #define 宏,用其实际类型替代同义字。 不同点:typedef 在编译时被解释,因此让编译器来应付超越预处理器能力的文本替换。用法一:typedef int (*MYFUN)(int, int); 这种用法一般用在给函数定义别名的时候上面的例子定义MYFUN 是一个函数

2014-12-25 14:56:59 571

转载 消息队列函数(msgget、msgctl、msgsnd、msgrcv)及其范例

消息队列函数由msgget、msgctl、msgsnd、msgrcv四个函数组成。下面的表格列出了这四个函数的函数原型及其具体说明。1.   msgget函数原型msgget(得到消息队列标识符或创建一个消息队列对象)所需头文件#include #include #include 函数说明得到消

2014-12-25 10:11:50 609

转载 主线程和子线程总结

运行结果      从上面可以看到:【1】如果主线程和子线程是并行的,虽然都是用while(1)但是倚靠CPU的调度,主线程和子线程都有机会得到执行。【2】如果要在子线程里面改变主线程里面的数据,就在pthread_create里面的最后 一个参数使用传地址调用(void *)&c,否则使用传值调用(void *)c

2014-12-24 16:40:26 1775

转载 线程间的通信

1.线程之间的通信简介一般而言,在一个应用程序中(即进程),一个线程往往不是孤立存在的,常常需要和其它线程通信,以执行特定的任务。如主线程和次线程,次线程与次线程,工作线程和用户界面线程等。这样,线程与线程间必定有一个信息传递的渠道。这种线程间的通信不但是难以避免的,而且在多线程编程中也是复杂和频繁的。线程间的通信涉及到4个问题:(1) 线程间如何传递信息(2)  线程之间

2014-12-24 15:18:07 575

转载 Linux查找文件内容grep简介

grep是Linux命令行下常用于查找过滤文本文件内容的命令。最简单的用法是:grep apple fruitlist.txt如果想忽略大小写,可以用-i参数:grep -i apple fruitlist.txt如果想搜索目录里所有文件,包括子目录的话,并且在结果中显示行号,可以用一下命令:grep -nr apple *grep的语法支持正则表达式,正则表达

2014-12-24 10:21:47 1139

转载 每天一个linux命令:find命令之xargs

在使用 find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行。但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几分钟之后,就会出现溢出错误。错误信息通常是“参数列太长”或“参数列溢出”。这就是xargs命令的用处所在,特别是与find命令一起使用。  find命令把匹配到的文件传递给xargs命令,而xargs命令每次

2014-12-24 09:57:04 463

转载 【日常小记】linux中强大且常用命令:find、grep

在linux下面工作,有些命令能够大大提高效率。本文就向大家介绍find、grep命令,他哥俩可以算是必会的linux命令,我几乎每天都要用到他们。本文结构如下:find命令find命令的一般形式find命令的常用选项及实例find与xargsgrep命令grep命令的一般形式grep正则表达式元字符集(基本集)grep命令的常用选项及实例1、find命令

2014-12-24 09:55:46 457

转载 makefile export变量

【问题背景】一个大的系统,通过一个总的make控制整个项目编译过程。具体make的流程是,在/make下面直接make,会先去make uboot,再去make kernel,然后去make其他的,比如drivers等等。遇到的问题是,由于是使用交叉编译器,对应的交叉编译器的路径,是在uboot中定义的,所以uboot是可以正常交叉编译的。但是编译完ub

2014-12-23 23:05:42 5102

转载 pthread_join介绍

pthread_join编辑函数pthread_join用来等待一个线程的结束。头文件 : #include 函数定义: int pthread_join(pthread_t thread, void **retval);描述 :pthread_join()函数,以阻塞的方式等待thread指定的线程结束。当函数返回时,被等待线程的资源被收回。如果进程已经结束,

2014-12-23 18:55:07 954

转载 认识romfs文件系统

1.1 什么是romfs       romfs是一个只读文件系统,主要用在 mainly for initial RAM disks of installation disks.使用romfs文件系统可以构造出一个最小的内核,并且很节省内存。相比而言,早期的minix和xiafs(现在已经过时)文件系统如果编译为模块的形式则大小超过20000字节(在x86机器上大小为38502字节)

2014-12-23 18:12:38 2395

转载 对伪目标的理解

Copyright(c) 2011 fym                                   All Rights Reserved Permission is granted to copy, distribute and/or modify this documentunder the terms of the GNU Free Documentation

2014-12-23 17:21:47 676

转载 makefile高级用法--make 的运行

make 的运行——————一般来说,最简单的就是直接在命令行下输入make命令,make命令会找当前目录的makefile来执行,一切都是自动的。但也有时你也许只想让make重编译某些文件,而不是整个工程,而又有的时候你有几套编译规则,你想在不同的时候使用不同的编译规则,等等。本章节就是讲述如何使用make命令的。一、make的退出码make命令执行后有三个退出码:

2014-12-23 17:17:34 4350

转载 在Linux里设置环境变量的方法(export PATH)

一般来说,配置交叉编译工具链的时候需要指定编译工具的路径,此时就需要设置环境变量。例如我的mips-linux-gcc编译器在“/opt/au1200_rm/build_tools/bin”目录下,build_tools就是我的编译工具,则有如下三种方法来设置环境变量:1、直接用export命令:#export PATH=$PATH:/opt/au1200_rm/build_tools

2014-12-22 13:56:20 825

转载 Linux GCC常用命令

1简介2简单编译2.1预处理2.2编译为汇编代码(Compilation)2.3汇编(Assembly)2.4连接(Linking)3多个程序文件的编译4检错5库文件连接5.1编译成可执行文件5.2链接5.3强制链接时使用静态链接库1简介GCC 的意思也只是 GNU C Compiler 而已。

2014-12-22 12:50:05 425

转载 errno.h快速入门

简介:头文件errno.h定义了一个全局的宏errno,它被展开为一个int类型的“左值”,这意味着宏errno不一定是个对象的标识符,也可以展 开为一个由函数返回的可以修改的“左值”,比如int *errno(),这个后面会讲,你可以暂且把它理解为一个全局的int型变量(虽然这样理解是错的,不过方便理解)。简单来说,errno.h只是为了提供了一种错误报告机制。比如,一个函数调用fope

2014-12-21 23:41:33 694

转载 C++与C中的函数互相调用的处理

一、C++中调用C函数C++和C是两种完全不同的编译链接处理方式,如果直接在C++里面调用C函数,会找不到函数体,报链接错误。要解决这个问题,就要在 C++文件里面显示声明一下哪些函数是C写的,要用C的方式来处理。首先引用头文件前需要加上 extern “C”,如果引用多个,那么就如下所示:[cpp] view plaincopyex

2014-12-19 14:49:41 935

转载 c++中的 extern "C"

比如说你用C 开发了一个DLL 库,为了能够让C ++语言也能够调用你的DLL 输出(Export) 的函数,你需要用extern "C" 来强制编译器不要修改你的函数名。通常,在C 语言的头文件中经常可以看到类似下面这种形式的代码:C代码  #ifdef __cplusplus  extern "C" {  #endif    /**** so

2014-12-19 14:18:53 509

转载 Combining C++ and C - how does #ifdef __cplusplus work?

103down votefavorite62I'm working on a project that has a lot of legacy C code. We've started writing in C++, with the intent to eventually convert the legacy code, as well. I'm a

2014-12-19 14:06:48 615

转载 extern C的用法详解

先看下面的一个面试题:为什么标准头文件都有类似的结构?#ifndef __INCvxWorksh /*防止该头文件被重复引用*/#define __INCvxWorksh#ifdef __cplusplus             //告诉编译器,这部分代码按C语言的格式进行编译,而不是C++的extern "C"{#endif// some d

2014-12-19 11:46:25 703

转载 wince下的编译选项

在WinCE6.0中,在VS2005的"Build"菜单中,有一个“Advanced Build Commands”,其中有很多编译选项:"Sysgen":相当于执行命令"blddemo -q”,一般第一次编译或者是改变了"Catalog"中的item的时候,就用这个了。"Clean Sysgen":相当于执行命令"blddemo clean -q",按照文档上的说明,当修改了 %

2014-12-18 11:43:13 740

转载 在何时该用什么方式编译WinCE(By wwfiney@ARMCE)

在何时该用什么方式编译WinCE译者:wwfiney@ARMCE在新闻组里,大家总是会问这样一个问题,“我做了改动,为什么没合到我的镜像里面”或者“我在platform.reg里面改动了注册表,但是最后发现改动没有体现在设备中”。 其实这些问题的根源都是与编译相关的。我们必须理解整个编译系统,从而准确的了解什么时候该如何编译。发表这篇博文的目的就是为了让你搞清楚”什么时候该如何编译

2014-12-18 11:39:07 518

转载 pb5.0 下build os 和build project之详解

1、Platform Builder在IDE菜单中提供了几种BuildOS命令和菜单选项,分别用于不同情况和不同阶段的操作系统创建。       Sysgen:运行Sysgen工具。一般与Copy Files to Release Directory After Build选项和Make Run_Time Image After Build配合,用于操作系统的初次创建或再次创建。在初次创建

2014-12-18 11:28:44 908

转载 git log常用命令

git log 查看提交记录,参数:-n      (n是一个正整数),查看最近n次的提交信息$ git log -2 查看最近2次的提交历史记录-- fileName     fileName为任意文件名,查看指定文件的提交信息。(注:文件名应该放到参数的最后位置,通常在前面加上--并用空格隔开表示是文件。)$ git log file1 file2

2014-12-17 14:37:35 584

转载 git恢复删除文件

如果一个文件不小心被删除了,可以有两种方法恢复:1、需要记住所需恢复文件的名字和版本号(commit id)     git checkout commit_id -- file_name如果不加commit_id,那么git checkout -- file_name 表示恢复文件到本地版本库中最新的状态。2、不需要记住所需恢复的文件名字。采用

2014-12-16 11:23:45 898

转载 wince sources、def文件解释

一、sources文件TARGETNAME:生成驱动文件的名字TARGETTYPE:驱动文件的类型,可以是DYNLINK,LIBRARY,EXE,分别表示文件类型是dll,lib,exe。如果TARGETTYPE是DLL则入口定义成DLLENTRY,如果TARGETTYPE是EXE,则可以定义EXEENTRY,用于指定EXE的入口函数.如果TARGETTYP

2014-12-15 14:15:45 1468

转载 WinCE BSP中的Dirs文件和Sources文件

1.  Dirs文件关于Dirs文件,就是指定要编译的路径,这个地球人都知道。还是简单介绍一下。按照文档上面介绍有三种定义:DIRS,DIRS_CE和OPTIONAL_DIRS。 DIRS:就是指定要编译的目录。DIRS_CE:只有目录下的源代码用于WinCE的映像文件时,才编译该目录。OPTIONAL_DIRS:指定可以选择编译的目录。比如:OPTIONAL_DIRS=pro

2014-12-14 22:35:25 596

转载 Platform Builder: Sources Files 2

I was looking over my original post about sources files (Platform Builder: Sources Files) today and it occurred to me that there is room to improve. That post provided basic information to create a

2014-12-14 20:55:30 563

转载 Platform Builder: Using Environment Variables to Control Macro Definition

It is not uncommon to need to build the same BSP with different projects, or the same driver under different BSPs.   Often this means needing to build the code in different ways for different needs. 

2014-12-14 20:53:28 581

转载 Cesysgen Conditional Statements (Compact 2013)

You can use Cesysgen conditional statements to selectively compile source code during the Sysgen phase of the build process.Syntax// @CESYSGEN IF [!] [[OR | || | AND | &&] [!]Compon

2014-12-12 18:06:42 469

转载 KITL 解析 - KITL是怎样工作的?

KITL 解析 - KITL是怎样工作的? 作者:Nasiry 来源:blog 时间:2007年10月16日 5:57 阅读1474次 by nasiry 注:由于我们主要是分析kitl的工作原理我们就电源管理的代码不做分析,以加电启动的程序流进行分析。 Part 1. kitl初始化 Kitl的加载于其他调试服务之前,以提供为这些调试服务发

2014-12-12 13:57:10 704

转载 windows mobile bootloader 软件框架

微软精心设计一套和具体硬件凭他无关的bootloader 软件框架,此框架包含以下几个部分:(1)BLCOMMON;(2)oem代码;(3)EBOOT特定代码(4)存储管理代码(5)EDBG驱动程序;从层次结构来看,最顶层的是blcommon->OEM代码->EDBG驱动程序(RTL8139等),eboot,存储管理代码(BOOTPART,f

2014-12-12 13:11:03 446

转载 WinCE6.0的EBOOT概要

WinCE6.0的EBOOT概要     为一个新的硬件设备定制WinCE6.0操作系统,一般需要完成以下几个主要步骤:1.       针对特定的硬件设备创建板级支持包(Board Support Package缩写为BSP),BSP必须包括BOOTLOADER、OEM适配层(OEM Adaptation Layer缩写为OAL)和一些必要的驱动。2.       利用创建的

2014-12-12 13:07:46 647

转载 关于wince bootloader的一点分析

Bootloader要做的事情,这个大家应该很清楚,无外乎是下载内核,烧写Flash,启动OS。当然可以在里面实现其他功能,但不是必须的。Wince6的bootloader当然是烧写到Flash中,通过JTAG工具。如果板子上有nor flash,可以把bootloader烧写到nor flash上,这样可以上电XIP。但目前流行的趋势是采用大容量nand flash,很多设计上都只有na

2014-12-12 12:49:38 926

转载 使用JTAG Flash Programmer烧写Flash

除了JTAG Probe以外,TopJTAG公司还有一款JTAG Flash Programmer 软件,该软件同样利用JTAG接口和现有的各种仿真器来控制芯片,通过改变一组I/O状态,模拟总线时序来烧写Nor Flash。这种方法在产品设计和调试过程中十分常见,由于采用通用的JTAG接口,软件不用理会与Nor Flash连接的是何种设备(ARM、MIPS、CPLD、FPGA都无所谓),并且不会改

2014-12-12 11:25:15 11369

转载 WinCE: OSDesign Configuration

BSP Package InstallationClose the Platform Builder Application.Copy the EM_X270_BSP directory into \WINCE600\Platform.Copy the EM_X270_CE6 directory into \WINCE600\OSDesigns.Launch VS2005 and open

2014-12-12 10:55:18 1330

LTE—UMTS长期演进理论与实践

LTE方面最权威的著作,系统、深入、全面地介绍了LTE的背景、动因和技术内容,涵盖了基本理论基础、物理层技术设计、网络协议架构以及系统部署和性能分析等方方面面。

2011-11-17

M进制的MQAM调制的matlab仿真程序

M进制的MQAM调制的matlab仿真程序,很全,很详细

2011-05-24

ASK BPSK QPSK调制等的matlab仿真程序

ASK BPSK QPSK调制等的matlab仿真程序,很全,运行速度快

2011-05-24

LDPC的matlab 仿真 BP算法 BPSK调制

LDPC仿真,matlab BP算法 LDPC的matlab 仿真 BP算法 BPSK调制

2011-05-24

LDPC编译码 matlab快速仿真,BP算法

LDPC编译码 matlab快速仿真,BP算法

2011-05-08

LDPC编译码 matlab仿真,BP算法

LDPC编译码 matlab仿真,BP算法

2011-05-08

LDPC编译码 matlab仿真,BPSK调制

LDPC编译码,matlab仿真,BPSK调制

2011-05-08

EDA技术实用教程(第三版)答案

用74283 加法器和逻辑门设计实现一位8421BCD 码加法器电路,输入输出均是BCD 码,CI 为 低位的进位信号,CO 为高位的进位信号,输入为两个1 位十进制数A,输出用S 表示。 解:如果二进制的和大于9,需要再加上6 来补成BCD 码

2010-05-24

通信原理笔记卡萨科技

通信原理笔记北邮的发声空间发生会计拉斯加开了卢卡斯的

2010-04-01

空空如也

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

TA关注的人

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