自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

azhangyi188的专栏

技术交流 互相学习

  • 博客(33)
  • 资源 (18)
  • 问答 (1)
  • 收藏
  • 关注

原创 内核裁剪

Linux内核裁减 (1)安装新内核: i)将新内核copy到/usr/src下, #tar xzvf linux-2.6.38.4.tar.gz -----解压缩. ii) 将名为linux的符号链接删掉,这是旧版本内核的符号链接. #ln -s linux-2.6.38.4 linux ------建立linux-2.6.38.4的符号链接linux. (2)设置内核. # cd /usr

2013-06-28 17:19:34 1242

原创 Unknown symbol platform_driver_unregister (err 0)

关于那个什么 Unknown symbol platform_driver_unregister (err 0) 等之类的错误,如果内核里有这个函数,比如(注意不一定是在 这个里面,具体看你编译的模块了)platform_driver_unregister这个函数在内核代码中有定义(/drivers/base/Platform.c中)但是还是报错,因为有这一行:EXPORT_SYMBOL_GPL(

2013-06-28 14:02:38 1947

转载 内核makefile

ifneq ($(KERNELRELEASE),)obj-m := mytest.omytest-objs := file1.o file2.o file3.oelseKDIR := /lib/modules/$(shell uname -r)/buildPWD := $(shell pwd)default:       $(MAKE) -C $(KDIR) M=$

2013-06-28 11:34:49 930

原创 linux中如何使用ls命令查看s开头的文件?

ls | grep “^s” 使用管道过滤

2013-06-27 11:34:13 9180 1

原创 何关闭Linux系统的beep声音

遇到错误或者其他情况都会发出“滴滴”声。在X Window系统下,可以使用xset 命令将beep声音关闭,命令如下:xset b off (输入xset 回车后得到xset命令的选项)。

2013-06-26 14:04:46 923

原创 tar解压命令

tar-c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。-z:有gzip属性的-j:有bz2属性的-Z:有compress属性的-v:显示所有过程-O:将文件解开到标准输出

2013-06-25 14:44:27 775

原创 交叉编译器的路径加入到PATH

修改环境变量,把交叉编译器的路径加入到PATH。(有三种方法,强烈推荐使用方法一)    方法一:修改/etc/bash.bashrc文件                #vim /etc/bash.bashrc                在最后加上:              export PATH=$PATH:/usr/local/arm/3.4

2013-06-25 11:31:55 3953

原创 makefile 递归编译

目录P下存在 A,B,C,D,E 目录,它们目录都存放有对应makefile 为了一个make命令编译它们在目录Px下加一个makefile文件。内容如下:SUBDIRS=A B C D Eall:subdirssubdirs:    for dir in $(SUBDIRS);do $(MAKE) -C $$dir ; doneclean:    fo

2013-06-24 16:07:23 1154

原创 非静态局部变量和静态局部变量

如果 static int m=0;是某函数中的局部变量,那么这个变量只被初始化赋值为0一次,当这个函数被多次调用时,除第一次被调用时 m 的内容被初始化为0外,以后每次调用时,m 都会在上一次函数被调用时产生结果的基础上继续运行的。例如 第一次调用 m被初始化为0, 函数运行结束时 m 的内容为 5, 第二次调用 m的内容就是5,并在次基础上继续运行程序。 如果m是在

2013-06-24 14:04:27 2656

原创 指针函数与函数指针

一、在学习arm过程中发现这“指针函数”与“函数指针”容易搞错,所以今天,我自己想一次把它搞清楚,找了一些资料,首先它们之间的定义:1、指针函数是指带指针的函数,即本质是一个函数。函数返回类型是某一类型的指针  类型标识符    *函数名(参数表)      int *f(x,y);首先它是一个函数,只不过这个函数的返回值是一个地址值。函数返回值必须用同类型的指针变量来接受

2013-06-24 13:42:32 443

原创 MOD_INC_USE_COUNT, MOD_DEC_USE_COUNT

2.4内核中,模块自身通过 MOD_INC_USE_COUNT, MOD_DEC_USE_COUNT宏来管理自己被使用的计数。   2.6内核提供了更健壮、灵活的模块计数管理接口 try_module_get(&module), module_put(&module)取代2.4中的模块使用计数管理宏;模块的使用计数不必由自身管理,而且在管理模块使用计数时考虑到 SMP与PREEMPT机制的影响

2013-06-24 13:41:06 674

原创 从 2.4 到 2.6:Linux 内核可装载模块的区别和变化

简介: 从 2.4 到 2.6,Linux 内核在可装载模块机制、设备模型、一些核心 API 等方面发生较大改变,设备驱动开发人员面临着将驱动从 2.4 移植到 2.6 内核,或是使驱动同时支持2.4 与 2.6 内核的任务。站在设备驱动开发人员的角度,驱动由一个或几个外部可加载内核模块组成,本文针对 2.6 内核里模块机制的改变对编写设备驱动程序的影响,从内核模块的编译、装载时的版本检查、初始化

2013-06-24 13:39:07 811

原创 ARM2410 IIC总线驱动基础知识

首先来看一下原理图:我们看到它有两根线:数据线和时钟线,他们用于数据传输。A0、A1、A2是设备地址,它是已经固化在硬件层的。再来看看AT24c02与2440连接图:我们要知道2440与at24c02之间属于主从连接,也就是说所有的会话必须由主设备发起,这里的主设备自然是2440。那么当2440的iic总线上挂载了多个存储设备时,24

2013-06-21 16:31:05 727

原创 C语言中 ^的用法

a1 = 0x01;    //0000 0001a2 = 0x00;    //0000 0000a3 = 0x03;    //0000 0011a4 = 0x02;    //0000 0010b1 = a1 ^ a2; //0000 0001b2 = a1 ^ a3; //0000 0010b3 = a1 ^ a4; //0000 0011^异或运算符,

2013-06-21 16:04:21 18060 2

原创 gpioer

一、GPIO寄存器定义1.#define GPCON(x)   __REG2(0x56000000, (x) * 0x10)这句是定义2410的GPIO的控制寄存器,注意:__REG2的参数是寄存器的物理地址,这个物理地址经_REG2宏转换为虚拟地址,对照2410的手册可以得到一下对应关系:GPCON(1) ------ PORT A  0x56000000GPCON(2) -

2013-06-21 14:57:42 479

原创 GPIO宏定义一

一、GPIO寄存器定义1.#define GPCON(x)   __REG2(0x56000000, (x) * 0x10) 这句是定义2410的GPIO的控制寄存器,注意:__REG2的参数是寄存器的物理地址,这个物理地址经_REG2宏转换为虚拟地址,对照2410的手册可以得到一下对应关系:GPCON(1) ------ PORT A  0x56000000GPCON(2) --

2013-06-21 14:55:54 3416

转载 GPIO宏定义的位置

s3c2410_gpio_cfgpin(S3C2410_GPG(0), S3C2410_GPIO_OUTPUT);s3c2410_gpio_cfgpin()的定义在arch/arm/march-2410/include/mach/gpio-fns.hS3C2410_GPG()的定义在arch/arm/march-2410/include/mach/gpio-nrs.hS3C2410_G

2013-06-21 14:08:24 1541

原创 GPIO是什么

GPIO的英文全称General-Purpose Input /Output Ports,中文意思是通用I/O端口。在嵌入式系统中,经常需要控制许多结构简单的外部设备或者电路,这些设备有的需要通过CPU控制,有的需要CPU提供输入信号。并且,许多设备或电路只要求有开/关两种状体就够了,比如LED的亮与灭。对这些设备的控制,使用传统的串口或者并口就显得比较复杂,所以,在嵌入式微处理器上通常提供了

2013-06-21 14:04:27 2972

原创 mdelay函数

delay函数是忙则等待,占用CPU时间;而sleep函数使调用的进程进行休眠。    udelay引用头文件/include/asm-***/delay.h,mdelay和ndelay则引用/include/linux/delay.h。    其中,要说的是mdelay、ndelay都是通过udelay衍生出来的,2ms一下的用udelay,超过2ms的用mdelay或者ndelay。

2013-06-20 15:58:49 3997

原创 makefile注释

Makefile 的多行注释Makefile Comments注释在 makefile 中起着重要的作用,它帮助我们更快更好的理解 makefile 的内容。# 注释符# 字符是注释符,makefile 把 # 字符后面的内容作为注释内容处理(shell、perl 脚本也是使用 # 字符作为注释符)。如果某行的第一个非空字符为 #,则此行会被 make 解释为注

2013-06-20 15:53:21 10448

原创 ./PHONY

./PHONY 来显示的指名一个目标是伪目标,有两个作用一个是改善性能,另外一个是来避免冲突。例如我写了这样一个Makefile[cpp] view plaincopyprint?test1:main.o file1.o file2.o file3.o  cc -o test1 main.o file1.o file2.o file3.o main.o:main

2013-06-20 15:02:32 810

原创 &= ~和|=各是什么意思的含义

&在C语言中可能表示两种运算符。如果运算对象只有一个,且为右操作数,那么&为取地址运算符,结果为操作对象的地址。例如&a(假设a是一个左值,即具有具体的可访问的地址)结果为a的地址。如果运算对象有两个,那么&表示位与运算。结果中的每一个二进制位等于两个运算数的对应位置的二进制位按位与。每一个位的位与运算法则是,当且仅当运算数都为1时结果为1,即:1 & 1 == 1,1 & 0 == 0

2013-06-20 14:19:10 73247 4

原创 堆和栈的区别

1、栈区(stack)―   由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) ―   一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局区(静态区)(static)―,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态

2013-06-20 13:45:08 427

原创 unsight char 和char 的区别

在C中,默认的基础数据类型均为signed,现在我们以char为例,说明(signed) char与unsigned char之间的区别首先在内存中,char与unsigned char没有什么不同,都是一个字节,唯一的区别是,char的最高位为符号位,因此char能表示-128~127, unsigned char没有符号位,因此能表示0~255,这个好理解,8个bit,最多256种情况

2013-06-20 11:17:43 2257

原创 为什么signed取值为-128到127?

八位的话,第一位为符号位,到底计算的时候这位要忽略还是要计算进去呢?按八位来算:在计算机里面是用补码表示的,128的二进制码是:10000000,这个东西在计算里面并不是128,因为最高位是符号,它是个负数,那么负数的原码是多少呢,我们知道如果补码的符号位为“1”,表示是一个负数,求原码的操作可以是:符号位为1,其余各位取反,然后再整个数加1。所以,10000000取反后就是111

2013-06-20 11:14:16 600

原创 ASCII表

ASCII码表信息在计算机上是用二进制表示的,这种表示法让人理解就很困难。因此计算机上都配有输入和输出设备,这些设备的主要目的就是,以一种人类可阅读的形式将信息在这些设备上显示出来供人阅读理解。为保证人类和设备,设备和计算机之间能进行正确的信息交换,人们编制的统一的信息交换代码,这就是ASCII码表,它的全称是“美国信息交换标准代码”。八进制

2013-06-18 10:27:16 434

原创 DHCP

Pos机实现DHCP自动获取IP地址方法一.在内核中添加以下选项:Networking --->[*] Networking support Networking options---> Packet socket //添加.配置CONFIG_PACKET[ * ] IP: DHCP support //添加[ * ] Network packet

2013-06-18 10:22:12 879

原创 data

date命令查看当前系统时间    date -s 5/18/2011 命令可以修改系统日期    date -s 16:10:59命令可以修改系统时间

2013-06-17 18:07:45 476

原创 uuid

新手学堂:Linux操作系统下取得UUID的方法    发布时间:2007.09.20 06:23     来源:赛迪网    作者:kid   Linux下面,有专门生成UUID的命令:uuidgen [-r] [-t]。即可以生成一个32位的字符串。这个是在命令行得到。在/usr/include/lib里面有个/uuid/uuid.h,其中定义了个数据uui

2013-06-17 18:06:31 617

原创 break

break语句break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;如果没有break语句,则将成为一个死循环而无法退出。break在switch 中的用法已在前面介绍开关语句时的例子中碰到,这里不再举例。当break语句用于do-while、for、while循环语句中时,可使程序终止循环而执行

2013-06-17 18:02:34 629

原创 键盘常用ASCII码 & Ctrl组合键

键盘常用ASCII码  ESC键 VK_ESCAPE (27)回车键: VK_RETURN (13)TAB键: VK_TAB (9)Caps Lock键: VK_CAPITAL (20)Shift键: VK_SHIFT ($10)Ctrl键: VK_CONTROL (17)Alt键: VK_MENU (18)空格键: VK_SPACE ($20/32)退格键:

2013-06-06 17:24:48 3147

原创 mc55

一步一步介绍怎用MC55进行配置以及怎样用TCP/IP通信:1、用AT^SICS命令创建一个连接类型参数集,这个连接类型参数集是一个是一些基本参数的集合,这些参数的集合,用来决定一个internet的连接类型。最多6个连接类型参数集可以被定义,每个连接参数集用参数进行标示。2、以连接类型参数集为基础,用AT^SISS命令创建一个服务类型参数集,最多能定义10个服务参数集,每个服务参数集用参

2013-06-04 18:05:23 956

原创 atoi函数的用法

就自己写写代码(根据atoi()的功能)来表示atoi()函数的实现。我在这里先把atoi()函数的功能贴出来,也好有个参考啊~~~atoi()函数的功能:将字符串转换成整型数;atoi()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负号才开始做转换,而再遇到非数字或字符串时('\0')才结束转化,并将结果返回(返回转换后的整型数)。atoi()函数实现的代码:

2013-06-04 18:01:55 1721

Android APP开发入门

本书从初学者的角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了使用AndroidStudio开发环境开发Android应用程序应该掌握的各方面技术。全书共分16章,

2019-03-01

Win32OpenSSL-1_0_1

openssl VC++ 安装包 ,测试可用,openssl VC++ 安装包 ,测试可用,

2018-01-26

NotePad++ 显示16进制 插件

1、下载 HexEditor.dll 2、将HexEditor.dll放到NotePad++安装目录下的【plugins】目录下; 3、退出Notepad++,然后重新打开; 4、点击【插件-->Hex-Editor--->Vew in Hex】,即可实现16进制显示。 下载路径: http://download.csdn.net/my

2017-08-29

EMV55域分析工具

EMV55域分析工具

2016-06-06

DES加密验证工具

单DES 双DES加密工具

2016-06-06

VMWare-Tools安装包

VMware虚拟机中如何安装VMWare-Tools详解 好处:可以支持图形界面,可以支持共享文件功能等,安装文档 http://blog.csdn.net/azhangyi188/article/details/21734209

2014-03-21

SecureCRT5.1 汉化版

有流行CRT Telnet客户机的所有特点,自动注册、对不同主机保持不同的特性、打印功能、颜色设置、可变屏幕尺寸、用户定义的键位图和优良的 VT100,VT102,VT220和ANSI竞争.能从命令行中运行或从浏览器中运行.其它特点包括文本手稿、易于使用的工具条、用户的键位图编辑器、可定制的ANSI颜色等.SecureCRT的 SSH协议支持DES,3DES和RC4密码和密码与RSA鉴别。

2014-01-04

securecrt串口调试工具高版本

【基本介绍】 有流行CRT Telnet客户机的所有特点,自动注册、对不同主机保持不同的特性、打印功能、颜色设置、可变屏幕尺寸、用户定义的键位图和优良的 VT100,VT102,VT220和ANSI竞争.能从命令行中运行或从浏览器中运行.其它特点包括文本手稿、易于使用的工具条、用户的键位图编辑器、可定制的ANSI颜色等.SecureCRT的 SSH协议支持DES,3DES和RC4密码和密码与RSA鉴别。 【软件特点】 广泛的终端仿真: VT100,VT102,VT220,ANSI,SCO ANSI,Xterm,Wyse 50/60, 和 Linux console 仿真(带有 ANSI 颜色)。 . 优秀的会话管理特性: 新的带标签的用户界面和 Activator 托盘工具,最小化桌面的杂乱。 会话设置可以保存在命名的会话中。 . 协议支持: 支持 SSH1,SSH2,Telnet,RLogin,Serial,和 TAPI 协议。 . Secure Shell: Secure Shell 加密登录和会话数据,包括以下支持: - 端口转发使 TCP/IP 数据更安全 - 口令,公钥,键盘交互和 Kerberos 验证 - AES,Twofish,Blowfish,3DES,RC4,和 DES 加密 - X11 转发 . 文件传输工具: VCP 和 VSFTP 命令行公用程序让使用 SFTP 的文件传输更安全。 . 脚本支持: 支持 VBScript 和 JScript 脚本语言。

2014-01-04

Win7中安装使用超级终端Hyper Terminal

如何在Win7中安装使用超级终端Hyper Terminal http://blog.csdn.net/azhangyi188/article/details/12505239

2013-10-09

insight-6.8.tar.bz2

insight-6.8.tar.bz2 学嵌入式开发的必备调试工具

2013-07-17

xz-5.0.3.tar.bz2

xz 是一个使用 LZMA压缩算法的无损数据压缩文件格式。 和gzip与bzip2一样,同样支持多文件压缩,但是约定不能将多于一个的目标文件压缩进同一个档案文件。 相反,xz通常作为一种归档文件自身的压缩格式,例如使用tar或cpioUnix程序创建的归档。 xz 在GNU coreutils(版本 7.1 或更新) 中被使用。 xz 作为压缩软件包被收录在 Fedora (自Fedora 12起) , Arch Linux , FreeBSD、 Slackware Linux、CRUX 和 Funtoo中。 xz utils 是 lzma utils 的下一代lzma utils 改名 xz utils。 压缩时 xz utils 耗时比 bzip2 长一倍, 压缩时 xz utils 耗时是 lzma utils 一半, 压缩时 xz utils 生成文件体积是 bzip2 的一半, 压缩时 xz utils 生成文件体积比 lzma utils 略大, 解压时 xz utils 耗时是 bzip2 的三分之一, 解压时 xz utils 速度比 lzma utils 略快, 解压时 xz utils 耗时仅比 gzip 多一倍。 压缩时 xz utils 使用 *.xz 格式 生成文件 比 *.lzma 格式 略大, 测试样本较小,多次测试结果有出入,无法判断 xz utils 使用 *.xz 与 *.lzma 格式 压缩与解压时间 谁占优势。 到目前为止,lzma utils 的压缩率仍是最大的,xz utils 解压时间占优势。 一个 xz 文件格式的实现XZ 实用程序已可在网上自由获得。GNU tar自版本1.22起使用这一软件透明支持xz文件格式(就如同其处理gzip格式或者bzip2格式一样)。 随着大量软件进入了公有领域(例如 liblzma等) 程序的4.999.9beta版本实现在GNU LGPL 和 GNU GPL条款下发布。 7-Zip在9.04 beta版支持了xz文件格式

2013-07-16

ARM9 自动获取ip 源码

基于arm 平台自动获取ip 源码文件,直接用交叉编译器 编译,优化上一个版本的一直连接问题,3次后自动退出

2013-06-18

e2fsprogs-1.39

e2fsprogs-1.39的交叉编译以及libuuid.so库的移植

2013-05-15

Makefile的详解

Makefile 详解 如何编写makefile,通俗易懂,循环渐进,

2013-04-22

函数close于fclose的区别

close 于 fclose的区别

2012-10-04

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

TA关注的人

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