自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

技术点亮人生,成功通向卓越

废弃csdn博客,新博客地址为http://leeming.cublog.cn/

  • 博客(62)
  • 收藏
  • 关注

原创 废弃csdn博客,新博客地址为http://leeming.cublog.cn/

实在受不了csdn博客的性能,用了近大半年,在网络速度,博客易用性一直很不让我满意,甚至连博客的一些最基本的功能它都不能正常提供,今天狠下决心将博客迁移至chinaunix网站上,新博客地址为http://leeming.cublog.cn/,欢迎大家来访,csdn博客将不再更新,大家如有问题请在新博客上留言。

2009-06-22 13:36:00 1289

转载 嵌入式Linux的低功耗策略研究

嵌入式Linux的低功耗策略研究摘  要:功耗是嵌入式设备的一个十分重要的性能指标。在硬件设计和选型之后,功耗水平在极大程度上取决于软件的设计。鉴于Lioux在嵌入式设备中的应用日益广泛,提出在嵌入式Linux下软件编写的几种策略。通过这些软件编写方式,能有效降低最终产品的功耗水平。关键词:嵌入式Linux功耗策略引 言    由于Linux系统具有嵌入式操作系统需要的很多特色,如适应

2009-06-21 17:25:00 1938

原创 重装系统后的几点注意:

1.记得重定位浏览器收藏夹的位置,这个一般浏览器选项里面有。 2.记得重定位我的文档的位置,我用的深度就直接有这个功能(不好意思用了盗版,^_^),如果是普通的系统右击我的文档属性也是有这个功能的,重装完系统后一定要核查下。 3.最容易忘记的一点,要将桌面重定位,一般我们平时工作都顺手保存在桌面上,但是一旦系统崩溃需要重装,这些东西是在c盘的,所以也都一起香消玉殒,所以一定要对桌面

2009-06-20 12:35:00 1016

原创 基于arm架构的pppoe的终极移植笔记

也是参考了很多文章,其实当初考虑这个课题不是很复杂,因为pppoe是在操作系统上层的,可以说和处理器平台都没有关系的,因此无论是arm7(sep4020),还是arm9,都是一样的,而且已经看到网上有很多人顺利的在2440之类的arm9处理器上移植,所以后面出现的意外着实把我郁闷了一下。 先讲正确的整个移植过程:整个pppoe的移植主要分成3个部分,内核,pppd,pppoe 

2009-06-19 20:02:00 4141 3

原创 关于sep4020 arm sample代码中启动部分,中断返回部分,misc部分的修订

花了点时间整理sep4020 sample代码中的最底层部分的代码,把自己的整理笔记贴出来,供以后参考: 一.发现的问题:1.usr的sp和sys的sp是相同的,所以不需要定义两个sp;SP仍然是以8M的sdram为标准的,而现在都是32M的了;2.在msr  cpsr_cf, R4时只需要cpsr_c即可;3.PMU_PCSR的注释有问题;4.配置结束之后缘何没有回到user模式??

2009-06-09 17:31:00 1502

转载 一篇解释arm启动代码中最生涩隐晦地方的好文

 使用MMU进行地址重映射的启动代码结构探讨  ——使用AXD调试MMU地址映射程序手记(二)后记黄振华                        http://aquarius.cublog.cn/ 摘要:本文是对《使用AXD调试MMU地址映射程序手记(二)》一文的补充,首

2009-06-09 10:29:00 6012

原创 修改sep4020(arm720T)的中断处理函数

最近在整sep4020 sample代码中的核心代码,发现之前的关于中断返回的那段代码相当混乱,而且复杂,如下:IRQ_DO        stmfd sp!, {r0,r1} ldr  r0, =0x0 str  r1, [r0]  ldmfd sp!, {r0} ldr  r1, =0x0 str  r0, [r1]  add  r13, r13, #4      ; restore

2009-06-05 10:51:00 1238

原创 linux中断的unbalanced问题

首先摘一段网上的见解:The enable_irq unbalanced messages are harmless. It just means that when the driver called disable_irq there were no devices already using the irq, and as such it was already disabled, so

2009-06-02 11:02:00 4457

转载 C语言测试:想成为嵌入式程序员应知道的0x10个基本问题

C语言测试:想成为嵌入式程序员应知道的0x10个基本问题2005-01-13 11:18:53 来自:http://www.chinaunix.net C语言测试是招聘嵌入式系统程序员过程中必须而且有效的方法。这些年,我既参加也组织了许多这种测试,在这过程中我意识到这些测试能为带面试者和被面试者提供许多有用信息,此外,

2009-05-27 17:19:00 1503 2

原创 yaffs理解第四篇之yaffs_open

对于任何一个文件系统来说,它的最最基本的操作肯定是open, read, write, close.今天我们先从open入手来解剖yaffs是如果来完成这些最基本的操作的。在开始读代码之前先介绍一下yaffs文件系统在操作文件经常会调用到两个函数,yaffsfs_GetHandle和yaffsfs_GetHandlePointer。yaffs文件系统定义了一个全局的结构体数组,yaff

2009-05-18 17:00:00 3742 2

转载 Linux shell脚本编写基础

 在进行linux测试时编写脚本是必不可少的,Shell脚本的名称可以随便定义,也不要什么后缀名,例如可以写abc,smartzip这类名称,运行时只要键入./smartzip就能运行脚本了。。每行命令开头处不用就空格也行。。   第1部分. Linux 脚本编写基础1.1 语法基本介绍1.1.1 开头程序必须以下面的行开始(必须方在文件的第一行):#!/bin

2009-05-18 15:33:00 1363

原创 Linux下内存释放问题相关知识续——手动释放内存的伪命题

使用Linux会发现一个很奇怪的问题:使用一段时间后(特别是经过了文件的拷贝等操作),用top指令发现内存基本上被占用了,而且Linux不会释放,这个问题的确困扰了我们,我们就开始寻找手动释放内存的方法,的确也找到了,也就产生了我的上一篇博客。上网搜索也发现很多人存在着这个问题,但是经过对网上结果和我自己理解的综合分析得出了一个结论:Linux手动释放内存是一个彻彻底底的伪命题。 首先讲解

2009-05-14 11:04:00 2192 2

转载 Linux下内存释放问题相关知识

细心的朋友会注意到,当你在Linux下频繁存取文件后,物理内存会很快被用光,当程序结束后,内存不会被正常释放,而是一直作为caching.这个问题,貌似有不少人在问,不过都没有看到有什么很好解决的办法.那么我来谈谈这个问题.先来说说free命令[root@server ~]# free -mtotal used free shared buffers cachedMem: 249 16

2009-05-12 17:44:00 1177 1

原创 关于sizeof

最近在看林锐博士的高质量c/c++编程指南,在书的后面附了一张测试的卷子,做了一下,发现自己很多都是处于半懂半不懂得阶段,比如下面这道关于sizeof的题目:  1、void Func ( char str[100]) { 请计算   sizeof( str ) =   4      (2 分) }  2、char    str[100 ] = {0} ;

2009-04-29 10:42:00 1130

转载 arm cpsr的c x s f 位

msr cpsr_cxsf,r1        ;这里的cxsf表示从低到高分别占用的4个8bit的数据域指令中有时还有出现cpsr_cf, cpsr_all, cpsr_c等,这里:        c 指 CPSR中的control field ( PSR[7:0])        f 指 flag field (PSR[31:24])        x 指 extend field (

2009-04-28 15:27:00 2872

原创 Linux项目组编程规范

前言:本手册以林锐博士编写的《高质量 C++/C 编程指南》内容为参考,根据项目组成员的经验总结和共同协定,稍作简洁和修改。本规范手册分成两部分:第一部分:以条款的形式列出了项目组编程的规则和建议,规则是指项目组成员必须要遵守的编程规范,建议是指推荐使用的编程风格。第二部分:是对第一部分规则和建议的详细说明。建议先仔细阅读第二部分,在已经了解了每条规则和建议的真正意义以及为什么要遵

2009-04-23 17:04:00 2209 1

原创 关于多线程和多核

上一次上嵌入式c语言的课,因为“太过活跃”导致获得了一个调研线程和多核的任务,呵呵。黄少珉老师都发话了,别人考试时安装平时成绩和最后期末考试两部分为基准;我是三部分,多一个这个的调研。今天下午花了点时间,在网上搜了点资料然后自己做了点实验,简单报告如下:(破csdn,没发直接黏贴图片,算了,大家凑合看看结论吧)运行平台: 首先我们来看下面这段代码: 运行这段代码看一

2009-04-21 18:58:00 2788 3

原创 yaffs理解第二篇——yaffs_startup函数解析

Yaffs_startup函数是启动yaffs文件系统的第一个函数,主要起到了初始化设备的作用,就代码而言就是将我们在yaffs基础第一篇——yaffs中的核心数据结构中提到的yaffs_devicestruct结构体进行最简单的也是最重要部分的初始化。代码位置在/yaffs/direct/yaffscfg.c。核心部分如下: static yaffsfs_DeviceConfigurat

2009-04-20 21:39:00 3439 2

转载 转一份关于理解yaffs文件系统很好的资料

很遗憾,不能看到图片,大家也可以通过下面这个链接看到这篇文章http://esslab.tw/wiki/index.php/YAFFSYAFFS YAFFS From ESSLabWiki From ESSLabWiki Jump to: navigation , search Jump to: navigation , search Independent S

2009-04-16 17:15:00 6226

原创 yaffs理解第一篇——yaffs direct综述

 最近做了一件事情,就是把yaffs从linux中拨出来移植到了实地址模式下(yaffs direct),既然是实地址,所以可以直接用在不跑操作系统的程序中,或者运行ucos, nucleus等实地址的操作系统。网上盛行的将yaffs移植到c51下就是这种方式。yaffs 为这种方式起了个名字叫yaffs dircet,其实这部分的移植只要理解了yaffs的基本框架,读一下yaffs中docu

2009-04-16 17:09:00 5830 3

原创 yaffs基础第一篇——yaffs中的核心数据结构

一个比较大的工程,最最核心的往往是数据结构体的定义,这是我最近一段时间啃yaffs啃出来的体会,一个复杂的函数往往是因为里面包含了各类结构体,结构体成员函数之间的不断转换,因此想要理解好一个大型的软件,一定要深刻的理解它的核心结构体。话说有一天和trio一起吃饭,trio老师谈到他看代码的习惯,说往往是先不看.c文件,先把头文件仔细读一遍,这点真是深刻啊! 我的理解核心数据就像整个代码

2009-04-11 11:10:00 4464

原创 yaffs基础第二篇——yaffs中缓冲机制

最近一直在研究yaffs,准备写个专题系列,当然现在的整理有点零散,而且一些我理解的想法不一定正确,现在先以笔记的形式把我的理解过程记录下来,之后会整理成一个更系统的关于yaffs的专题。 2009 04 10yaffs的缓存机制由于nandflash是有一定的读写次数的,所以在对一个文件进行操作的时候往往是先通过缓冲进行,对最后一次性写入nandflash,这有效的减少了用户对nandf

2009-04-10 15:23:00 2781

转载 深入分析 Linux 内核链表(转自ibm developerWorks 中国,IBM为开源界做了很多贡献,赞)

本文详细分析了 2.6.x 内核中链表结构的实现,并通过实例对每个链表操作接口进行了详尽的讲解。一、 链表数据结构简介链表是一种常用的组织有序数据的数据结构,它通过指针将一系列数据节点连接成一条数据链,是线性表的一种重要实现方式。相对于数组,链表具有更好的动态性,建立链表时无需预先知道数据总量,可以随机分配空间,可以高效地在链表中的任意位置实时插入或删除数据。链表的开销主要是访问的顺序

2009-04-03 18:41:00 1418

原创 王道QT,让linux的开发和在windows下一样方便

GUI是在嵌入式设备中是非常重要的一环,GUI的好坏直接影响到了用户的体验。因此一个优秀的gui是非常重要的,为此我前阶段对gui稍微做了调研。 目前通用的gui有:gtk系列:在linux下鼎鼎大名的gnome桌面就是基于gtk库设计的,当然gnome是gtk+Xwindow的方式,在嵌入式设备中的选择有gtk+DirectFB。 Qt系列:桌面应用有KDE,关于kde和gn

2009-03-18 14:19:00 1907

原创 为你的虚拟机添加第二个硬盘!

用虚拟机经常碰到这种烦恼,刚开始设定硬盘空间的时候设小了,用了一段时间硬盘空间就不够用了,就像我今天装完了qt sdk后发现我的虚拟机可用空间是0,下面就给出如何增大你的硬盘空间的方法(以下方法的环境均为fedora7,虚拟机版本为6.0.2):1.       edit你的虚拟机配置,add一个新的硬盘,具体操作为在虚拟机主界面上点击edit virtual machine settings

2009-03-16 13:34:00 1551

原创 庆祝贴:epson72v17 usb芯片在linux下驱动移植完毕

虽然被Epson的破代码小折腾了一下,但是结果还是美好的,呵呵,至此epson 72v17芯片host ,device驱动均完毕。host能顺利挂接U盘,鼠标,键盘等设备。device能顺利将板子上的存储资源和电脑相联系。72v17移植注意点:1.     这款芯片和cpu的连接有三种方式,分别为8位,16位的XWRH/L,16位的XBEH/L模式,这要看具体cpu的接口,在我们4020的

2009-03-14 15:32:00 1195

原创 linux的reboot实现

今天有客户问要在linux下实现重启,以前一直没有仔细思考过这个问题,阿虚今天下午查了一下是/linux/include/asm-arm/arch-sep4020中的system.h中的arch_reset函数实现的,我看了一下三星2410的代码的确如此,(我当初为我们这款芯片移植linux内核的时候属于朦胧阶段,啥都很模糊),其实代码很简单就是在这个函数里启动watchdog,并给一个数字,让w

2009-03-10 20:08:00 7407 1

原创 minigui的价格揭秘

最近一直在使用minigui,一时兴起向飞漫软件的市场套了份minigui的价格表,放在下面,也让有意使用minigui做商用开发的朋友心中有个数:1.MiniGUI开发时授权和服务的价格购买 MiniGUI-VAR 产品,您将获得相对应版本的 MiniGUI 开发时授权。其价格如表1所示: 表 1 MiniGUI开发时授权费用价格(人民币元)

2009-03-07 16:17:00 4587 3

原创 在fedora7上建立minigui的模拟开发环境

本文介绍如何在fedora7环境下建立minigui的pc模拟环境: 第一步:下载源码包并解压,主要有libminigui-1.3.3;  minigui-res-1.3.3.; mde-1.3.; mg-amples-1.3.0 第二步:编译安装minigui库libminigui-1.3.3,步骤依次为:./configureMakeMake install

2009-03-02 17:16:00 1256

原创 关于4020和深圳

最近去了一趟深圳,主要是为客户提供sep4020开发的支持,上午一家下午一家,行程还是蛮紧凑的,几天跑下来有一点小体会,关于4020,关于深圳。 既然是出差,当然是公务为主,所以先说4020: 1.4020很好的满足了工业控制这个市场的需求,定位很好。这么几天跑下来,可以说4020完全的满足了客户的需求,以前做单片机的,发现单片机的性能跟不上了,选择4020;以前用2410或者

2009-03-01 18:30:00 878 4

原创 minigui+tslib编译全过程(2)

 第二部分:tslib-1.3.3移植到SEP4020  上次移植minigui,这次继续上次的移植,往4020上移植tslib 。大概方法是通过 tslib 来构建 MiniGUI 的输入引擎。tslib 是一个用于触摸屏设备的函数库。通过这样一个函数库,可以将编程者从繁琐的数据处理中解脱出来。为什么会出现这样的情况呢?因为触摸屏的坐标和液晶显示屏之间的坐标并不是一一对应的,所以,要让从

2009-02-20 10:54:00 2720

原创 minigui+tslib编译全过程(3)

第三部分:tslib和minigui的链接完成了对 tslib 的交叉编译之后,下一步的事情就是改写 MiniGUI 的 IAL 引擎。MiniGUI自带的 IAL 输入引擎中,有一个叫做 dummy.c。为了尽可能简单,在这里为简单起见就在其基础上稍作修改,使之符合我们的要求即可。#include #include #include #include #include #include "c

2009-02-20 10:54:00 2043

原创 minigui+tslib编译全过程(1)

 主要文档都是fp完成的,我只是在他的基础上修改了一些文章中的小错误。第一部分:minigui-1.3.3移植到SEP4020EVB详解在这里只讲怎样将minigui-1.3.3移植到开发板EVB-SEP4020上去,在pc上安装minigui-1.3.3不用讲,这里我用到的交叉编译器是arm-linux-gcc3.4.1MiniGUI 的编译需要一些库文件,缺省我们的 gcc 基本上

2009-02-20 10:49:00 2116

原创 fedora下的bridge和nat设置

可以利用fedora下的bridge和nat同时实现虚拟机作为网络文件系统和虚拟机上网的功能。  Nat:和主机共享ip,具体操作如下:1.       在Ethernet选项中选择nat,2.       打开终端,输入命令hostname,得到的是你的主机名字,记录下来,这个后面要用到3.       进入系统-》管理-》网络,双击eth,在常规中选择,自动获取ip地址

2009-02-20 10:47:00 935

原创 只要做的是善事,即使作秀也温馨

 最近网上沸沸扬扬的关于福耀玻璃董事长捐70%股份捐出做慈善的事情,看到网上一些网友的一些鄙视甚至是批判的眼光看待这个问题,觉得一下这段话或许能给我们习惯的思维来一些更深刻和理性的建议: (节选新浪财经评论)       用价值43.8亿元的股份成立慈善基金,福耀玻璃董事长曹德旺的决定令旁观者惊讶。欣赏者称赞这是媲美比尔·盖茨的义举,质疑者则认为这是富豪的慈善作秀,不排除包括避税在内的

2009-02-19 09:29:00 1045

原创 情人节快乐!

谨以这个红色的玫瑰皮肤庆祝情人节,一个礼拜,呵呵,红的有点过了,大家将就一下,呵呵

2009-02-13 12:29:00 536

原创 打造一个perfect的linux开发环境(加入对鼠标滚轮的支持)

前记:前段时间一直用Ubuntu作为linux的开发环境,但是最近和方帅一起编译minigui的时候发现Ubuntu的不便利(经常冒出来没有一些软件,需要你安装了才能进行),而我们服务器的fedora从来没有出现过这个问题,因此一直想打造一个perfect的linux开发环境,这两天从fedora7 到fedora8,从虚拟机的6.0.2到6.5.1折腾了好久,终于基本打造一个完美版本: 

2009-02-13 09:32:00 1189 1

原创 linux定时器的使用以及键盘定时器解析

1.      首先定义一个定时器的结构体:static struct timer_list key_timer; 2.      在驱动的初始化中对定时器进行初始化   setup_timer(&key_timer,key_timer_handler,0);其中key_timer是我们刚刚定义的定时器结构体,key_timer_handler是我们的定时器处理函数; 3.    

2009-02-06 10:32:00 1534

原创 roger,永远支持你,rafael,好样的

看了澳网的获奖感言,有一种想哭的冲动,再看一遍,这种冲动依然强烈,罗杰,永远支持你,你在我的心中早已是最伟大的了。http://sports.sina.com.cn/t/2009-02-01/21594193655.shtml

2009-02-04 13:42:00 1188 4

原创 什么是创意啊?这才是创意

转自新浪科技:新浪科技讯 北京时间12月19日消息,据国外媒体报道,日本一名果农在培育富士苹果的一个新品种,这种苹果的独特之处是显示有苹果公司商标和iPod图案。   这名果农在未成熟的苹果上贴上带有苹果公司商标和iPod图案的粘纸,粘纸会挡住太阳光。苹果成熟后,贴有粘纸的地方会显现与周围不同的颜色,从而显示出苹果商标和iPod图案。(清泉) 强烈建议欢欢同学家生产这类苹果,好

2008-12-19 12:47:00 896 3

空空如也

空空如也

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

TA关注的人

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