自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一个人的力量很渺小,一群人的力量很可怕......

嵌入式开发,希望嵌入式控们一起交流,一起学习....../

  • 博客(47)
  • 资源 (4)
  • 收藏
  • 关注

转载 堆,栈,代码段,数据段,BSS 段概念解析

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

2012-12-15 21:00:23 884 1

转载 LINUX系统中动态链接库的创建与使用

LINUX系统中动态链接库的创建与使用      大家都知道,在WINDOWS系统中有很多的动态链接库(以.DLL为后缀的文件,DLL即Dynamic Link Library)。这种动态链接库,和静态函数库不同,它里面的函数并不是执行程序本身的一部分,而是根据执行程序需要按需装入,同时其执行代码可在多个执行程序间共享,节省了空间,提高了效率,具备很高的灵活性,得到越来越多

2012-07-12 20:48:44 647

转载 MakeFile用法,详细到让人吐

0 Makefile概述 -------------------------------------------------------------------------------- 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要

2012-07-12 20:42:29 911

转载 关于ARM开发板通过有线接入互联网自动获取IP地址问题

参考网页,以备后用:http://blog.163.com/ljf_gzhu/blog/static/131553440201051710237619/1. 配置内核:[*] Networking support  ---> Networking options  --->   Packet socket   Unix domain sockets   [*]

2012-07-12 20:39:05 1211

转载 Linux 下摄像头视频采集与显示

说明:1、本文所提及的摄像头不是zc0301p,使用的API不是V4L,显示所使用的上位机不是QT,特此说明。2、UVC只是一个驱动,如果它能成功驱动摄像头,会在/dev目录下出现video(或video0、video1等等)。这样,就可以使用Linux提供(准确说不是Linux提供,具体的百度吧)的一套API,即V4L2来访问摄像头了。“使用”是指我们写的采集数据的程序,而不是指“摄像头

2012-07-12 20:29:31 3518 1

转载 基于Video4Linux 的USB 摄像头图像采集实现

基于Video4Linux 的USB 摄像头图像采集实现分类: Linux 2012-03-10 20:35 698人阅读 评论(0) 收藏 举报最近一直在做一个摄像头视频采集的程序,遇到了很多艰辛的问题,下边这是一个好文章,粘过来供大家也供自己能对添加驱动以及摄像头视频采集 程序的书写有一定的帮助,同时谢谢博主能提供这样一份很好的文章。做了一段时间的摄像头图像采集

2012-07-12 20:23:01 1188

转载 Qt Creator 之mplayer播放器图形界面设计

利用mplayer为播放核心,编写自己的播放器界面(1)前几天学习了mplayer的编译、初步使用和方法学习有需要的可以看我发过的子~xphyym这个礼拜写了个播放器的界面,很粗糙!理想界面为暴风影音那样~~一个人的力量很有局限~~欢迎大家共同讨论研究,编一个我们自己的播放器~~附件为我打包的程

2012-07-12 18:59:20 2271 4

转载 Linux 系统中安装网卡驱动时出现"设备eth0似乎不存在"解决办法

下配置文件(/etc/sysconfig/network-scripts),配置也没错。可以证明根本就不在我想想的范围之内。我就先用“service network restart”重启网络服务,发现网卡起不来。如下图:看到这个之后,我本以为是我在配置IP是把那个步骤搞错了,我就又反复的把IP地址配了好几编,还是不行。我就纳闷啦,难道我连IP都不知道

2012-06-16 20:21:08 5330

原创 /usr/local/arm/4.4.3/bin/../lib/gcc/arm-none-linux-gnueabi/4.4.3/../../../../arm-none-linux-gnueabi/

最近做囯嵌的MP3项目时,进行Madplay移植是遇到蛋痛的问题:前面所有的编译都通过,到静态链接编译Madplay时arm-linux-gcc -o mplayer mplayer.o m_property.o mp_fifo.o mp_msg.o mixer.o parser-mpcmd.o subopt-helper.o command.o asxparser.o codec-cfg

2012-06-02 10:51:26 5504 1

原创 error:undefined reference to `coloured_LED_init'

错误信息如下:cpu/arm920t/start.o: In function `start_code':/root/workspace/u-boot-2009.08/cpu/arm920t/start.S:117: undefined reference to `coloured_LED_init'/root/workspace/u-boot-2009.08/cpu/arm920t/

2012-05-30 21:31:12 1030 1

转载 inline函数和weak属性冲突

inline函数和weak属性冲突void inline __show_boot_progress (int val) {}void inline show_boot_progress (int val) __attribute__((weak, alias("__show_boot_progress")));编译提示错误:main.c:51: error: inl

2012-05-30 21:21:17 1679 4

原创 warning: target CPU does not support interworking

打印错误信息如下:warning: target CPU does not support interworking解决方法:错误与CPU有关gedit cpu/arm920t/config.mk把 PLATFORM_CPPFLAGS += -march=armv4 改成 PLATFORM_CPPFLAGS += -march=armv4t

2012-05-30 21:11:21 1117

原创 board.c:1: warning: target CPU does not support interworking

打印的错误信息如下:board.c:1: warning: target CPU does not support interworkingboard.c:125: error: inline function 'coloured_LED_init' cannot be declared weakboard.c:127: error: inline function 'red_LED_

2012-05-30 21:07:36 747

原创 关于错误IOError:<urlopen error (-3, 'Temporary failure in name resolution')>的解决

fedora安装Tftp时出错:网上对此问题解决方法很多,但都没有解决此问题,最终还是从鸟哥的书上找到答案。错误信息如下:[root@tom ~]# yum install xinetd tftp tftp-serverLoaded plugins: refresh-packagekithttp://ftp-stud.hs-esslingen.de/pub/Mirrors/arch

2012-05-27 10:48:30 5061 1

转载 ioremap

ioremap  Linux在头文件include/linux/ioport.h中定义了三个对I/O内存资源进行操作的宏:(1)request_mem_region()宏,请求分配指定的I/O内存资源。(2)check_mem_region()宏,检查指定的I/O内存资源是否已被占用。(3)release_mem_region()宏,释放指定的I/O内存资源。       这三

2012-05-17 20:42:33 2576

转载 usb鼠标驱动注解及测试

参考2.6.14版本中的driver/usb/input/usbmouse.c。鼠标驱动可分为几个部分:驱动加载部分、probe部分、open部分、urb回调函数处理部分。 下文阴影部分为注解。一、驱动加载部分static int __init usb_mouse_init(void)         {                   int retval = usb_r

2012-05-16 21:20:37 724

转载 struct input_event

查看/dev/input/eventX是什么类型的事件, cat /proc/bus/input/devices设备有着自己特殊的按键键码,我需要将一些标准的按键,比如0-9,X-Z等模拟成标准按键,比如KEY_0,KEY-Z等,所以需要用到按键模拟,具体 方法就是操作/dev/input/event1文件,向它写入个input_event结构体就可以模拟按键的输入了。linux/

2012-05-16 20:45:21 435

转载 Linux输入子系统

Linux输入子系统(Input Subsystem)1.1.input子系统概述输入设备(如按键,键盘,触摸屏,鼠标等)是典型的字符设备,其一般的工作机制是低层在按键,触摸等动作发生时产生一个中断(或驱动通过timer定时查询),然后cpu通过SPI,I2C或者外部存储器总线读取键值,坐标等数据,放一个缓冲区,字符设备驱动管理该缓冲区,

2012-05-16 19:05:21 486

转载 MAC地址 的意义及作用

什么是 MAC Address  MAC地址就是在媒体接入层上使用的地址,也叫物理地址、硬件地址或链路地址,由网络设备制造商生产时写在硬件内部。MAC地址与网络无关,也即无论将带有这个地址的硬件(如网卡、集线器、路由器等)接入到网络的何处,都有相同的MAC地址,它由厂商写在网卡的BIOS里。MAC地址可采用6字节(48比特)或2字节(16比特)这两种中的任意一种。但随着局域网规模越来越

2012-05-16 17:07:53 7077

转载 TCP循环服务器 UDP循环服务器 TCP并发服务器

1.编写使用TCP协议的服务器程序2.编写使用TCP协议的客户端程序3.客户端向服务器发送字符串,服务器打印收到的字符串服务器hw1server.c#include #include #include #include #include #include #include #include #define portnum 3456

2012-05-12 20:03:36 1094

转载 linux下:inet_ntoa()

函数简介  linux下:  函数声明:char *inet_ntoa (struct in_addr);  返回点分十进制的字符串在静态内存中的指针。  所在头文件:  //end linux 下  函数功能:将网络地址转换成“.”点隔的字符串格式。  所需库: winsock.h  也可以使用:

2012-05-12 19:27:25 10893 1

转载 Linux下bzero函数

原型:extern void bzero(void *s, int n); 用法:#include  功能:置字节字符串s的前n个字节为零。 说明:bzero无返回值。 举例: // bzero.c #include  #include  main() { struct { int a; char s[5];

2012-05-12 18:42:54 5929

转载 守护进程(daemon)

守护进程简介  守护进程,也就是通常说的Daemon进程,是Linux中的后台服务进程。它是一个生存期较长的进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程常常在系统引导装入时启动,在系统关闭时终止。Linux系统有很多守护进程,大多数服务都是通过守护进程实现的,同时,守护进程还能完成许多系统任务,例如,作业规划进程crond、打印进程lqd等(这里的结尾字母

2012-05-12 15:49:40 581

原创 多线程编程学习笔记

一.什么是线程在一个程序里的多个执行路线就叫做线程。更准确的定义是:线程是“一个进程内部的一个控制序列”。典型的unix进程可以看成只有一个控制线程:一个进程在同一时刻只做一件事情。有了多个控制线程以后,在程序设计时可以把进程设计成在同一时刻能够做不止一件事,每个线程处理各只独立的任务。 二.线程的优点(1)       通过为每种事件类型的处理分配单独的线程,能够简化处理异步

2012-05-10 21:27:24 346

转载 线程各类编程

1线程创建函数原型: #include int pthread_create(pthread_t *restrict tidp,const pthread_attr_t *restrict attr, void *(*start_rtn)(void),void *restrict arg);返回值:若是成功建立线程返回0,否则返回错误的编号形式参数:pthrea

2012-05-10 21:24:08 415

原创 thread_join.c:(.text+0x6f): undefined reference to `pthread_create' 问题的解决

今天在测试一个线程例子时,结果出现如下错误[root@tom fzf]# gcc thread_join.c -o thread_join/tmp/cc1HozRv.o: In function `main':thread_join.c:(.text+0x6f): undefined reference to `pthread_create'thread_join.c:(.te

2012-05-10 20:04:30 3556 1

转载 文件句柄

最近在学字符设备驱动程序的时候遇到了一个概念:文件句柄于是找了一些相关的资料加以理解:简介  在文件I/O中,要从一个文件读取数据,应用程序首先要调用操作系统函数并传送文件名,并选一个到该文件的路径来打开文件。该函数取回一个顺序号,即文件句柄(file handle),该文件句柄对于打开的文件是唯一的识别依据。要从文件中读取一块数据,应用程序需要调用函数Read

2012-04-18 18:59:41 1832

转载 Qt移植(Qtopia4.2.2)

九、Qt移植(Qtopia4.2.2)(转载文章)1   Qt 和 Qtopia 简介 (自己的理解,不对之处还请见谅)     Qt特点是“一次编写,处处编译”。Qt是在PC机上安装安装使用的;Qtopia Core 是基于嵌入式Linux的面向单一应用的嵌入式产品开发平台,即要移植到开发板上使用的;Qt/E是面向嵌入式系统的Qt版本,而Qtopia最初是构建于Qt/E之上的类似桌面

2012-04-11 19:43:00 996

原创 ADC 驱动移植

(1)Linux-2.6.32.2 内核并没有提供支持S3C2440 的ADC 驱动程序,所以需要在drivers/char 目录下,创建一个驱动程序的文件名为:mini2440_adc.c(囯嵌提供)在 S3C2440 芯片中,AD 输入和触摸屏接口使用共同的A/D 转换器ADC 驱动和触摸屏驱动若想共存,就必须解决共享“A/D 转换器”资源这个问题,因此在ADC 驱动程序中声明

2012-04-10 11:15:26 765

转载 嵌入式笔试杂七杂八

(1)c语言问题,union和struct 的区别?共享一个存储单元和按定义分配存储单元。(2)sizeof(一大堆变量),如果用这个函数分配内存的大小一定与定义相同吗?答曰:想不相同不清楚,但是肯定的是指回答不会小,因为使用sizeof分配内存不会错。(3)解释什么是优先级反转。答曰:多任务运行过程中,因为临界资源相互等待占用,导致高优先任务得不到满足,造成低优先级任务先执行

2012-04-09 20:47:01 1127 2

转载 嵌入式笔试试题1

1.用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)    #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL  我在这想看到几件事情:  1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)  2). 懂得预处理器将为你计算常数表达式的值,因此,直接写出你是如何计算一年中有

2012-04-09 20:43:33 888

转载 嵌入式linux 面试题

1. linux内核里面,内存申请有哪几个函数,各自的区别?Kmalloc()   __get_free_page()  mempool_create()   2. IRQ和FIQ有什么区别,在CPU里面是是怎么做的?  3. int *a;char *b;a 和 b本身是什么类型?a、b里面本身存放的只是一个地址,难道是这两个地址有不同么?

2012-04-09 20:38:40 3179

转载 linux启动成功修改logo

1:获得.png图片,可以截图获得,千万注意图片不能大于lcd屏幕,最好小点,大了有时显示不了。我几次没有显示就是图片原因。2 使用Linux命令将图片转换为ppm图片:也可以使用logomaker或者linux系统下自带的JIMP编辑工具使用# pngtopnm logo_linux_clut224.png > logo_linux_clut224.pnm# pnmqua

2012-04-09 20:18:48 501

转载 Linux启动过程(从执行init到用户登录部分)

转载地址:http://www.cndw.com/tech/server/2006042152314.asp 本文以RedHat9.0和i386平台为例,剖析了从用户打开电源直到屏幕出现命令行提示符的整个Linux启动过程。并且介绍了启动中涉及到的各种文件。  阅读Linux源代码,无疑是深入学习Linux的最好方法。在本文对Linux启动过程的介绍中,我们也尝试从源代码的视角来更深入

2012-04-09 19:59:56 894

原创 linux下解压命令大全和 rpm命令使用简介

Linux下解压命令大全.tar 解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)———————————————.gz解压1:gunzip FileName.gz解压2:gzip -d FileName.gz压缩:gzip FileName.tar.gz 和 .tgz

2012-04-09 19:46:40 1896

原创 移植apache服务器

移植apache服务器由于移植过程中没有做相应记录,找了一篇相似的文章参考,做临时记录。相应文章参考http://wenku.baidu.com/view/5c70424ecf84b9d528ea7a6b.html?from=related&hasrec=1(1)先建立两个文件#mkdir  /home/apache    #mkdir /home/apache-arm

2012-04-09 19:02:06 879

原创 LCD 背光驱动移植

在 mini2440/micro2440 开发板中,LCD 背光是通过CPU 的LCD_PWR 引脚来控制的,从原理图中可以看出,它对应于GPG4,当LCD_PWR 输出为高电平“1”时,将打开背光;当输出为低电平“0”时,将关闭背光(注意:这里只是打开和关闭背光,而并没有背光亮度的调节作用)。移植过程中也遇到不少问题,最后还需要编写一个测试程序来打开背光驱动。废话少说,下面开

2012-04-09 18:01:44 643

原创 利用yum安装卸载软件常用命令

1.使用yum安装和卸载软件,有个前提是yum安装的软件包都是rpm格式的。    安装的命令是,yum install ~,yum会查询数据库,有无这一软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲突,那么最好,下载安装;如果有,则会给出提示,询问是否要同时安装依赖,或删除冲突的包,你可以自己作出判断;        删除的命令是,yum remove ~,同安装一样,

2012-04-08 19:22:34 479

转载 Shell脚本编程基础

Shell简介Shell简单的说就是命令解析器,将用户输入的指令转换为相应的机器能够执行的程序。Shell脚本是一个包含一系列命令序列的文本文件(批处理)。当运行这个脚本文件时,文件中包含的命令序列将得到执行。HelloWorldShell脚本的第一行必须是如下格式:  #!/bin/bash    符号#!用来指定该脚本文件的解析程序。例中使用bash,也可以使用其他shel

2012-04-07 14:45:10 381

原创 网卡(dm9000)驱动移植

网卡(dm9000)驱动移植看到网上有很多的博客分享,比如:http://blog.chinaunix.net/space.php?uid=13321460&do=blog&id=2902457http://blog.csdn.net/baozhongchao/article/details/4538182在此,描述一下自己的制作过程:1.修改arch/arm/pl

2012-04-07 14:24:29 639

计算机网络

计算机网络,参加计算机网络考试的同学可以看看。

2012-09-22

Linux笔试面试

Linux笔试面试知识点总结,对应聘一些公司的嵌入式开发职位有帮助。

2012-09-22

计算机三级网络技术笔试

计算机三级网络技术笔试每年必考的知识点,不看要后悔哦!

2012-09-22

空空如也

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

TA关注的人

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