自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 写一个strchr查找字符串函数

<br />#include <assert.h><br />/*string found function NATIVE-STRING-MATCHER*/<br />char *str_chr(char *src, char *chr)<br />{<br />     char *psrc = src, *pchr = chr, *p;<br />     assert((src!=NULL)&&(chr!=NULL));<br />     while (*psrc !='/0')<br />   

2010-11-29 14:06:00 618

原创 SD卡FAT32文件系统,如何访问具体文件

<br />1.根据DBR的BPB找到FAT表的位置,一般是偏移36个扇区,一个扇区一般是512个字节,一个簇有4,8,16...个扇区,这里用的是8,一个簇4096个字节。<br />2.根据DBR找到根目录,根据目录结构体描述,扫描根目录,根据文件名匹配找到对应文件的首簇。<br />3.一般情况下根目录的簇号是2,比如找到的文件的首簇是6,则文件的位置可以根据根目录首簇的偏移来找到,offset=(6-2)×512×8就是文件的位置,然后根据FAT表的簇链结构来访问文件。<br /> <br />比起

2010-11-24 09:59:00 766

原创 linux总线,设备,驱动注册

<br />遵守UDEV设备模型,<br />首先注册总线,然后是总线设备,之后是具体设备注册,注册完之后就可以在sys/bus相应的目录下面找到挂载这个总线上的设备,最后是注册驱动,驱动会查询总线上的设备进行绑定。<br />比如:自定义一个设备是my_vir_device,使用总线是vir_bus。<br />1.注册总线类型<br />struct bus_type vir_bus_type = {<br />.name = "my_vir",<br />.match = my_vir_match,<

2010-11-22 17:30:00 728

原创 内核查看uboot传递的参数简单方法

<br />u-boot  设置bootargs=console=ttyS0,115200n8 initrd=2g,1 root=/dev/ram rawview=myrawview<br /> <br /> <br /> <br />static int __init rawview_setup(char *str)<br />{<br /> printk("***********/n");<br /> printk(str);//此处字符串str就是rawview=之后的内容<br /> printk(

2010-06-08 19:52:00 1440

转载 转载几个经典的对子

南通州北通州南北通州通南北  东当铺,西当铺,东西当铺当东西男学生,女学生,男女学生生男女读书——春读书,秋读书,春秋读书读春秋学法——孙学法, 子学法, 孙子学法学孙子 问道——左问道,右问道,左右问道问左右 三香——荷散香,兰散香,荷兰散香散荷兰 战场--前死人后死人前后死人死前后 醉酒--左摇摆右摇摆左右摇摆摇左右 校园--男学生女学生男女学生生男女 情人节-真情人假情人真假情人

2010-05-12 09:18:00 537

转载 大地震前有三个明显征兆

1.井水异常2.牲畜反应异常3.专家出来辟谣。第三和第二重复了。

2010-04-14 17:10:00 1051

转载 不要迷恋哥,哥只是个传说!

不要迷恋哥,哥只是个传说!         哥不在江湖,江湖都有哥的传说!        世上本没有哥,但迷哥的人多了,就开始出现了哥!        哥不寂寞,因为有寂寞陪着哥。        不要打哥的电话,哥玩的不是寂寞……是哥的手机丢了!        哥用微笑保持低调,却不知道微笑也让世界烦恼。        哥抽的是寂寞,吐出来的是烟。        哥泡的不是姐,是姐的寂寞。    

2010-01-05 18:39:00 573

转载 史记.(闸北)刀客列传

      杨某者,顺天府人也。少习武,善刀技,虽数十人不得近身。及长,武举不中,遂愤而离乡,负刀游走天下。一日经松江府上海县,乏甚,乃借人车马。其间言语不和,乃告其盗,衙役捕之。初,自以清白,随到公堂,而差人戏辱之,怀恨不已。出则于县衙门外施火,乘乱翻墙入,拔刀砍杀。重重围之,亦无惧色,刀法身形皆不乱。东荡西决,南冲北突,先后斫翻十余人,毙其六。终赶路竟日,饥渴疲惫,力尽而伏。众不敢前,恐其有诈

2009-12-24 17:02:00 1830

转载 少侠行

赤县白虹忽贯日,  世人纷说杨家子。  布衣一怒鬼神惊,  六扇门内六吏死。    少侠本居燕京城,  性喜读书厌纷争。  孰知偶作松江游,  赁车误被诬贼名。  皂隶如虎何听辩,  白日蒙冤入牢笼。        棍号水火狱号炉,  百般锻炼不容情。    羞辱莫大心泣血,  伤痛遍体不欲生。  捱到罪名查无实,  脱得囹圄身已病。    屡向有司求冤恤,  频招冷眼与恶声。  心向明月遇暗夜,

2009-12-24 16:59:00 808

转载 一段古文,讲述了一个道理

 天行健,君子以自强不息!勤奋者,天助;专注者,属目;举一反三者,触类旁通;集大成者,得大智慧;成大事者,因天之序!

2009-11-09 09:42:00 520

转载 哥只是个传说恶搞

 网易辽宁沈阳网友 [ygj-66] 的原贴: 1   不要迷恋哥,哥只是个传说。。。。。。。    网易山东莱芜网友 [fengfeiluqi] 的原贴: 2   不要牵挂妹,妹只是两行泪。。。。。。。    网易四川成都网友 [thief1234] 的原贴: 3   不要恶搞姐,姐会让你吐血。。。。。。。    网易广东珠海网友 [xhpcomcom] 的原贴: 4   不要小看弟,弟可是兴奋

2009-10-30 09:03:00 794

转载 patsubst notdir wildcard 详解

1、wildcard : 扩展通配符2、notdir : 去除路径3、patsubst :替换通配符例子:建立一个测试目录,在测试目录下建立一个名为sub的子目录$ mkdir test$ cd test$ mkdir sub在test下,建立a.c和b.c2个文件,在sub目录下,建立sa.c和sb.c2 个文件建立一个简单的makefilesrc=$(wildcard *.c ./

2009-10-27 16:30:00 525

原创 转载编译简单驱动,备忘

/****************hellomod.c*******************************/#include //所有模块都需要的头文件#include // init&exit相关宏MODULE_LICENSE("GPL");static int __init hello_init (void){    printk("Hello china init/n");  

2009-10-20 18:00:00 816

原创 IPC简单介绍(二)共享内存

“寸有所长,尺有所短”,pipe、message queue和share memory各有长处,虽说message queue简单易用,但是如果要传递的数据量很大的时候就捉肘见襟了,当在进程间需要传递大的数据量的时候,share memory就有用武之地了。未完待续...

2009-10-13 14:30:00 460 1

原创 IPC简单介绍(一)消息队列

消息传递是linux中的简单有效的IPC方法之一,另外比较熟悉的是pipe和share memory,其中share memory的速度是最快的。消息传递方式编程相对比较简单,接收message的进程通过如下步骤:1.调用msgget函数创建一个消息队列,需要注意的是IPC_CREAT这个宏,如果消息队列已经建立好了,它会忽略的。2.msgrcv函数来从队列上得到消息3.msgct

2009-10-13 10:53:00 474

原创 一点点arm bootloader的理解

最简单的bootloader需完成两个主要任务1.memory的重新映射2.下载kernel到sdram系统上电之后首先执行的是物理地址0x0的代码,所以一般情况bootloader的代码要烧录在0x0的地址处,一般为flash存储器,例如:有2段存储器flash和sdram,分别在0x0-0x4000000 64M, 0x4000000-0x80000000 64Msdram

2009-10-12 17:48:00 955

翻译 linux物理地址和总线地址

在x86下,外设的i/o地址是独立的,即有专门的指令访问外设i/o,i/o地址就是所谓的“总线地址”。而“物理地址”就是ram地址。   在arm中,i/o和ram统一编址,但linux为了统一各个平台,仍然保留这个概念,其实就是物理地址。    linux   无论kernel还是user   space,都是直接访问虚拟地址(uclinux除外),要访问i/o,必须把i/o地址转换成虚拟地址才

2009-10-12 10:08:00 3447 2

原创 看门狗防止程序跑飞

void main(){ init_system(); ... enable_whatchdog();...while(1){ ...feed_dog();}}程序跑飞掉的话,就不会喂狗,引起复位。

2009-10-10 11:37:00 2776 1

原创 .bss段和.data段的一点小区别

全局的未初始化变量存在于.bss段中,具体体现为一个占位符;全局的已初始化变量存于.data段中;而函数内的自动变量都在栈上分配空间。.bss是不占用.exe文件空间的,其内容由操作系统初始化(清零);而.data却需要占用,其内容由程序初始化。

2008-05-16 15:45:00 540

ScanManager.zip

识别通用的一维码和二维码以及点阵码(DPM)

2021-02-22

QR二维码 ISO标准

QR二维码ISO标准文档,二维码生成软件开发和二维码解码软件开发必备宝典。

2014-09-29

在linux上安装gcc

一步一步教你如何在linux主机上安装或者更新gcc

2014-08-30

arm linux 内存映射.pdf

一个简单的嵌入式linux内存映射例子,包括静态映射和动态映射。

2010-04-19

linux V4L4 API使用文档

linux环境下开发video必备资料。

2010-04-19

Linux Socket Programming by Example

linux网络编程宝典,嵌入式设备开发人员的必备手册。

2010-01-04

GCC参数详解

用gcc的工程师尽快来下吧

2008-02-28

i2C总线协议

详细介绍了飞利浦公司开发的总线协议,对嵌入式硬件,软件设计很有价值。

2007-09-30

C指针宝典

详细分析了c的精髓,指针的各种用法和可能出现的错误。

2007-09-29

空空如也

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

TA关注的人

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