Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

嵌入式Linux下真彩Logo的实现

嵌入式Linux下真彩Logo的实现

目前嵌入式产品越来越多了,一般都能带Logo显示启动的。让我们来看看Logo显示是怎么做的(我仅仅做Linux方面的,没有做过WinCE的)。参考一些嵌入式平台的做法,基本是fb_prepare_logo(struct fb_info *info, int rotate)、fb_show_logo(struct fb_info *info, int rotate)两个函数实现的。但是该两个函数其实没有参考的价值。最简单的做法就是调用该两个函数。1. 在 x...
Android开机画面制作(Bootloader阶段)

Android开机画面制作(Bootloader阶段)

Android开机画面由三部分组成,第一部分在bootloader启动时显示(在Android1.5版本以前是显示一个小企鹅,1.5版本及之后取消了);第二部分是在Kernel启动初始化时,出现“A N D R I O D”文字字样画面;第三部分是在平台图形系统启动后,出现含闪烁的ANDROID字样的动画。在bootloader阶段,aboot_init函数中,调用了display_init完成显示的初始化动作后,接着调用display_image_on_...
C/C++中宏和内敛函数(inline)的区别

C/C++中宏和内敛函数(inline)的区别

最近,老是有人问我,有关内敛函数和宏的区别,说了一遍又一遍,不想说了,写出来,想知道,看博客吧:C/C++中如果函数前面加关键字 inline ,那么表示该函数是内敛函数,如下所示: inline int Fun(int x) { return ((x > 5) && (x < 10)) ? x : 0; } 从样子来说,内敛函数的功能和宏定义(#define )差不多,即在编译阶段进行替换,减少运行时间,提高运行效率。区别是宏...
Linux下 s3c2440 lcd驱动移植详解

Linux下 s3c2440 lcd驱动移植详解

1. LCD工作的硬件需求: 要使一块LCD正常的显示文字或图像,不仅需要LCD驱动器,而且还需要相应的LCD控制器。在通常情况下,生产厂商把LCD驱动器会以COF/COG的形式与LCD玻璃基板制作在一起,而LCD控制器则是由外部的电路来实现,现在很多的MCU内部都集成了LCD控制器,如S3C2410/2440等。通过LCD控制器就可以产生LCD驱动器所需要的控制信号来控制STN/TFT屏了。2. S3C2440内部LCD控制器结构图:我们根据数据手册来...
Linux移植随笔:git的使用

Linux移植随笔:git的使用

搞了一天的yaffs2文件系统挂载,结果还是挂载不上去。收获之一是知道如何使用git下载源代码。以前下载的yaffs2源代码在新的内核中编译不通过,而又不知道如何下载yaffs2的源代码包,只好使用git来下载了。开始是在windows下安装一个git客户端,可以下载。但是源代码及脚本文件的格式全部变成DOS格式的,在内核中不能使用,尤其是脚本文件,因为两个系统对回车换行的理解是不同的。没办法,只能在linux平台下下载源代码了。这里记录一下。git源代码...
u-boot移植随笔:继续使用svn进行版本控制(合并分支实例)

u-boot移植随笔:继续使用svn进行版本控制(合并分支实例)

搞u-boot很久了,一直在用svn进行版本控制,感觉非常好。不过我是最近才找到合并分支的方法,这里介绍一下。首先说一下我的环境。1、使用svn开发的模式:所有开发都在分支进行,完成某一阶段时,将其合并到主干上,同时作一标签,即tag。svn_repos仓库中u-boot目录下有三个目录:trunk、branches、tags,分别保存主干代码、分支代码和标签。分支名称如u-boot-branch-xxx,标签名称如release-1.x_xxx。比如u-...
Android 的 Linux内核

Android 的 Linux内核

从Linux内核的角度来分析Android的内核,希望给初学者提够有用的信息。本章将简单的介绍 Android内核的全貌,起到一个抛砖引玉的作用。从下一篇开始将详细介绍每一个Android内核驱动程序及其作用。Android内核是基于Linux 2.6内核的(目前最新开发版本是2.6.31),它是一个增强内核版本,除了修改部分Bug外,它提供了用于支持Android平台的设备驱动,其核心驱动主要包括:Android Binder,基于OpenBinder框...
Linux C :遍历输出指定目录下的所有文件

Linux C :遍历输出指定目录下的所有文件

在Linux下opendir()、readdir()和closedir()这三个函数主要用来遍历目录。在使用这三个函数前必须先包括以下两个头文件:#include <sys/types.h>#include <dirent.h>opendir函数的原型为:DIR *opendir(const char *name);它返回一个DIR*类型,这就是一个句柄啦,你不用管它的内部结构是什么样的,只要知道这个句柄就是等一下要传给readdi...
uboot环境变量与内核MTD分区关系

uboot环境变量与内核MTD分区关系

分区只是内核的概念,就是说A~B地址放内核,C~D地址放文件系统,(也就是规定哪个地址区间放内核或者文件系统)等等。1:在内核MTD中可以定义分区A~B,C~D。。。。。。并予以绝对的地址赋值给每个分区。我们可以来看看在内核中是怎样来对MTD进行分区的:archarmplat-s3c24xxcommon-smdk.cstatic struct mtd_partition smdk_default_nand_part[] = {[0] = {.name= "...
S3C2440上LCD驱动(FrameBuffer)实例开发讲解

S3C2440上LCD驱动(FrameBuffer)实例开发讲解

一、开发环境主 机:VMWare--Fedora 9 开发板:Mini2440--64MB Nand, Kernel:2.6.30.4 编译器:arm-linux-gcc-4.3.2二、背景知识1. LCD工作的硬件需求: 要使一块LCD正常的显示文字或图像,不仅需要LCD驱动器,而且还需要相应的LCD控制器。在通常情况下,生产厂商把LCD驱动器会以COF/COG的形式与LCD玻璃基板制作在一起,而LCD控制器则是由外部的电路来实现,现在很多的MCU内部都...
让Linux内核make uImage时Entry Point(入口地址)自动偏移64个字节

让Linux内核make uImage时Entry Point(入口地址)自动偏移64个字节

这两天在移植u-boot-1.3.4到s3c2440,期间还遇到不少事,首先是u-boot的mach_type和kernel的mach_type不一致导致内核正常解压完后,终端就不动了,停在了那里,改了mach_type之后内核可以正常拷贝和解压了。现在又遇到make uImage编译内核自动生成uImage时,Entry Point入口地址和Load Address加载地址总是相同,都是Load Address: 30008000,Entry Point...
如何编写Linux Daemon后台程序(守护进程)

如何编写Linux Daemon后台程序(守护进程)

守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是一种很有用的进 程。Linux的大多数服务器就是用守护进程实现的。比如,Internet服务器inetd,Web服务器httpd等。同时,守护进程完成许多系统任 务。比如,作业规划进程crond,打印进程lpd等。 守护进程的编程本身并不复杂,复杂的是各种版本的Unix的实现机制不尽相同,造成不同Unix环境下守护进程的编程规则并...
<< 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 >>