arm-linux

http://armboard.taobao.com/

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  512 随笔 :: 0 文章 :: 48 评论 :: 115万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

07 2010 档案

摘要:前段时间做了一个关于ARM92440资料的汇总帖,很高兴看到***和CSDN等论坛朋友们的支持和鼓励。当年学单片机的时候datasheet和学习资料基本都是在论坛上找到的,也遇到很多好心的高手朋友,耐心的回答我提出的问题。感激、图报,很简单的想法。希望这次整理的资料帖能对更多的嵌入式爱好者朋友带来帮助! PS: 在此特别感谢古道热肠版主把我的帖子加精,给小弟极大鼓舞! 嵌入式入门篇: 什么是嵌入式系统http://www.helloarm.com/Embedded-Learn/58.htm 嵌入式资深工程师白话说“嵌入式”http://www.helloarm.com/Embedded-Lea 阅读全文
posted @ 2010-07-31 17:11 arm-linux 阅读(3093) 评论(0) 推荐(1) 编辑

摘要:操作系统:Ubuntu10.04可能需要安装的包:sudo apt-get install xorg-devsudo apt-get install libpng-devsudo apt-get install libxext-devsudo apt-get install libxtst-dev以下是安装tslib可能需要的包:sudo apt-get install autoconfsudo apt-get install automakesudo apt-get install libtool 阅读全文
posted @ 2010-07-29 20:04 arm-linux 阅读(876) 评论(0) 推荐(0) 编辑

摘要:Linux 的 Input Device 是重要的一個 subsystem,在進行實例介紹前,先大略了解一下相關的 API。Linux Input Deviceinput.c是Linux的”input”驅動程式,主要支援鍵盤與滑鼠的輸入;input.c介面有趣的地方是採用了事件(event)的方式來處理輸入,以下是input.c介面重要的資料結構與函數:* struct input_dev* void input_event(struct input_dev *dev, unsigned int type, unsigned int code, int value)* void input_ 阅读全文
posted @ 2010-07-28 20:31 arm-linux 阅读(562) 评论(0) 推荐(0) 编辑

摘要:好久没来了!写点东西.关于linux 2.6下面的键盘驱动的实现. 2.6内核采用"input sub system" 的概念.将输入驱动分成三块: driver,input core和Event handler. "一个输入事件,如鼠标移动,键盘按键按下,joystick的移动等等通过 Driver -> InputCore -> Eventhandler -> userspace 的顺序到达用户空间传给应用程序。" 关于输入子系统详细的文章有一个老兄写了一篇: http://blog.csdn.net/colorant/archiv 阅读全文
posted @ 2010-07-28 20:09 arm-linux 阅读(1475) 评论(0) 推荐(0) 编辑

摘要:--作者:老树--发布时间:2010-6-2 15:01:19--Android 架构解析及驱动 键盘篇一、用户空间 ADROID 2.1 架构解析 7 键盘 以上链接,详细介绍了Android用户空间按键的操作,最终通过不断轮询所有设备,直到读取有POLLIN事件产生的设备状态:if(mFDs[i].revents & POLLIN) {res = read(mFDs[i].fd, &iev, sizeof(iev));......二、底层驱动1.设备注册static struct resource s3c_keypad_resource[] = {[0] = { .star 阅读全文
posted @ 2010-07-28 19:23 arm-linux 阅读(2588) 评论(0) 推荐(0) 编辑

摘要:将addr的第nr位置为1 假设*addr = 0, nr = 3;则执行结果为1000(二进制数)extern __inline__ int set_bit(int nr,long * addr)...{ int mask, retval; addr += nr >> 5; //(1) mask = 1 << (nr & 0x1f); //(2) cli(); retval = (mask & *addr) != 0; *addr |= mask; //(3) sti(); return retval;}(1)如果nr>31则将nr的高27为截取 阅读全文
posted @ 2010-07-28 18:57 arm-linux 阅读(6047) 评论(0) 推荐(0) 编辑

摘要:Linux 的 Input Device 是重要的一个 subsystem,在进行实例介绍前,先大略了解一下相关的 API。 Linux Input Device input.c是Linux的"input"驱动程式,主要支援键盘与滑鼠的输入;input.c介面有趣的地方是采用了事件(event)的方式来处理输入,以下是input.c介面重要的资料结构与函数: * struct input_dev * void input_event(struct input_dev *dev, unsigned int type, unsigned int code, int value) 阅读全文
posted @ 2010-07-28 18:12 arm-linux 阅读(934) 评论(0) 推荐(0) 编辑

摘要:一、让LCD显示可爱的小企鹅还是先说说环境吧,处理器为S3C2410,linux的版本当然是2.6.20的。下面先说说怎样让LCD上显示出可爱的小企鹅。最直接的步骤如下(记住不要问为什么哈~_~,一步一步跟着走就行了):1. 添加s3c2410处理器的LCD控制寄存器的初始值,具体做法为在文件arch/arm/mach-s3c2410/mach-smdk2410.c中添加struct s3c2410fb_mach_info类型的寄存器描述讯息,如下所示:static struct s3c2410fb_mach_info smdk2410_lcd_platdata = {.fixed_syncs 阅读全文
posted @ 2010-07-28 18:00 arm-linux 阅读(3574) 评论(1) 推荐(0) 编辑

摘要:memcpy() -- 拷贝内存内容2007年07月06日 星期五 09:07相关函数: bcopy(), memccpy(), memmove(), strcpy(), strncpy()表头文件: #include <string.h>定义函数: void *memcpy(void *dest, const void *src, size_t n)函数说明: memcpy()用来拷贝src所指的内存内容前n个字节到dest所指的内存地址上。与strcpy()不同的是,memcpy()会完整的复制n个字节,不会因为遇到字符串结束'/0'而结束返回值: 返回指向de 阅读全文
posted @ 2010-07-28 17:34 arm-linux 阅读(1591) 评论(0) 推荐(0) 编辑

摘要:浅析linux下键盘设备工作和注册流程【浅析linux下鼠标驱动的实现】input_init()=>=>class_register(&input_class);注册input类input_proc_init();创建proc下的目录和文件register_chrdev(INPUT_MAJOR, "input", &input_fops);注册驱动程序到cdev_map上,以待驱动设备.drivers/input/keyboard/pxa3xx_keypad.c为我们的keyboard设备,pxa3xx_keypad_probe=>requ 阅读全文
posted @ 2010-07-28 17:31 arm-linux 阅读(1202) 评论(0) 推荐(0) 编辑

摘要:Android、X windows、qt等众多应用对于linux系统中键盘、鼠标、触摸屏等输入设备的支持都通过、或越来越倾向于标准的input输入子系统。因为input子系统已经完成了字符驱动的文件操作接口,所以编写驱动的核心工作是完成input系统留出的接口,工作量不大。但如果你想更灵活的应用它,就需要好好的分析下input子系统了。一、input输入子系统框架下图是input输入子系统框架,输入子系统由输入子系统核心层( Input Core ),驱动层和事件处理层(Event Handler)三部份组成。一个输入事件,如鼠标移动,键盘按键按下,joystick的移动等等通过 input 阅读全文
posted @ 2010-07-28 17:22 arm-linux 阅读(390) 评论(0) 推荐(0) 编辑

摘要:Linux 系统提供了input子系统,按键、触摸屏、键盘、鼠标等输入都可以利用input接口函数来实现设备驱动,因此,12.1~12.2节的按键和触摸屏设备驱动都可以作为input设备驱动而实现。在Linux 内核中,input设备用input_dev 结构 体描述,使用input子系统实现输入设备驱动的时候,驱动的核心工作是向系统报告按键、触摸屏、键盘、鼠标等输入事件(event,通过input_event结构 体描述),不再需要关心文件操作接口,因为input子系统已经完成了文件操作接口。驱动报告的事件经过InputCore和 Eventhandler最终到达用户空间。通过input子系 阅读全文
posted @ 2010-07-28 17:17 arm-linux 阅读(1843) 评论(0) 推荐(0) 编辑

摘要:通过Platform机制开发发底层驱动的大致流程为:定义platform_device---注册platform_device---定义platform_driver-----注册platform_driver。 1.Platform_device定义于kernel/include/linux/platform_device.h中,structplatform_device{constchar*name;u32id;structdevicedev;u32num_resources;structresource*resource;};定义一个platform_device一般需要初始化两个方面的 阅读全文
posted @ 2010-07-28 16:05 arm-linux 阅读(4093) 评论(1) 推荐(0) 编辑

摘要:Author: taoyuetaoEmail: tao_yuetao@yahoo.com.cnBlog: http://www.eetop.cn/blog/?11145 2006-11-21================================从2.6版本开始引入了platform这个概念,在开发底层驱动程序时,首先要确认的就是设备的资源信息,例如设备的地址,在2.6内核中将每个设备的资源用结构platform_device来描述,该结构体定义在kernel/include/linux/platform_device.h中,struct platform_device {const 阅读全文
posted @ 2010-07-28 14:46 arm-linux 阅读(516) 评论(0) 推荐(0) 编辑

摘要:系统# uname -a # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue # 查看操作系统版本# cat /proc/cpuinfo # 查看CPU信息# hostname # 查看计算机名# lspci -tv # 列出所有PCI设备# lsusb -tv # 列出所有USB设备# lsmod # 列出加载的内核模块# env # 查看环境变量资源# free -m ... 阅读全文
posted @ 2010-07-28 14:06 arm-linux 阅读(1433) 评论(0) 推荐(0) 编辑

摘要:这是一篇程序员写给程序员的趣味读物。所谓趣味是指可以比较轻松地了解一些原来不清楚的概念,增进知识,类似于打RPG游戏的升级。整理这篇文章的动机是两个问题:问题一: 使用Windows记事本的“另存为”,可以在GBK、Unicode、Unicode big endian和UTF-8这几种编码方式间相互转换。同样是txt文件,Windows是怎样识别编码方式的呢?我很早前就发现Unicode、Unicode big endian和UTF-8编码的txt文件的开头会多出几个字节,分别是FF、FE(Unicode),FE、FF(Unicode big endian),EF、BB、BF(UTF-8)。但 阅读全文
posted @ 2010-07-27 10:31 arm-linux 阅读(403) 评论(0) 推荐(0) 编辑

摘要:ubuntu10.04 start to use grub2 instead of grub. grub is very simple. We used it very good. We can directly edit menu.lst file. Then we can exec grub command. and we can get a inter-command env. root (*) setup (*) and exit now reboot our system. We can get new grub meun! grub2 has many changes. ... 阅读全文
posted @ 2010-07-26 15:16 arm-linux 阅读(529) 评论(0) 推荐(0) 编辑

摘要:./autogen.sh: 4: autoreconf: not found 是在不同版本的 tslib 下执行 autogen.sh 产生。它们产生的原因一样,是因为没有安装 automake 工具, (ubuntu 8.04)用下面的命令安装好就可以了。 sudo apt-get install autoconf automake libtool 阅读全文
posted @ 2010-07-25 21:23 arm-linux 阅读(389) 评论(0) 推荐(0) 编辑

摘要:在linux做开发或者系统管理遇到乱码是经常的事情,主要windows下中文的默认编码是bg2312,而linux下是utf-8。很多时候涉及到和windows平台系统的通信免不了编码的转化,可能大部分人都用iconv库函数(包含在glib中)和iconv命令来执行编码转换,今天我要推荐的是另一个shell下编码转换工具enca。用它不仅可以转换编码,还可以查看文件的原始编码,使用上也比iconv方便一些。在ubuntu下安装enca很简单,apt一下就行了,enca用法如下:enca -L zh_CN file 检查文件的编码enca -L zh_CN -x UTF-8 file 将文件编码 阅读全文
posted @ 2010-07-25 20:11 arm-linux 阅读(642) 评论(0) 推荐(0) 编辑

摘要:SSH看做是telnet的加强版,telnet的密码和信息都是不加密的,而ssh则加密。想用SecureCRT连接Linux--Ubuntu,需要SSH服务的支持,很多Linux系统在安装的时候是不安装SSH服务的,所以需要自己手动安装,才能用SecureCRT连接Linux。场景描述:主机 Windows2003,虚拟机VMware,虚拟机系统Ubuntu 9.10首先安装SSH服务输入:sudo apt-get install openssh-server启动SSH服务输入:sudo /etc/init.d/ssh start启动之后可以检查是否安装成功并启动输入:ssh -vOpenSS 阅读全文
posted @ 2010-07-24 21:53 arm-linux 阅读(995) 评论(0) 推荐(0) 编辑

摘要:在Linux内核源码中,经常要对链表进行操作,其中一个很重要的宏是list_for_each_entry:意思大体如下:假设只有两个结点,则第一个member代表head,list_for_each_entry的作用就是循环遍历每一个pos中的member子项。图1:pos: pos:___________ ____________| | | || | | || ........... | | .......... 阅读全文
posted @ 2010-07-24 12:24 arm-linux 阅读(530) 评论(0) 推荐(0) 编辑

摘要:刚看到一篇文章,http://news.csdn.net/a/20100719/219154.html 说面试的一道题目是:把N个元素插入到一个Vector里(或者ArrayList,或其它的你所选择的语言里被称作动态数组的东西)。 我的想法是,创建一个新的单向链表,这个链表插入新数据是在头部,而不是尾部。这样就可以了。 如Struct List{ struct List * next; void * data; }; Struct List *head=(struct List *)malloc(sizeof(struct List)); head... 阅读全文
posted @ 2010-07-21 00:18 arm-linux 阅读(250) 评论(0) 推荐(0) 编辑

摘要:在CSDN论坛上,曾有一篇主题为“这里90%的程序员根本就不算程序员”的热帖,谈到并不是每个操作代码的人就是程序员,那些不热爱开发行业的人根本不算程序员。并列举了许多“伪程序员”的行为特征。无独有偶,国外一家技术公司RethinkDB在其官方博客上也谈到这个问题,抱怨了找到一个真正符合要求的程序员是多么艰难。外刊IT评论编译了这篇博文,全文如下:我们积极的对外招聘已经有四个多月了,如果要问从这次经历中有哪些收获,我只能说,我终于明白,Jeff Atwood在FizzBuzz这篇文章里说的并不是玩笑话。(译者:这篇文章里说程序员不会编程)。在新成立的公司中,我们RethinkDB公司因面试过程最 阅读全文
posted @ 2010-07-20 12:16 arm-linux 阅读(409) 评论(0) 推荐(0) 编辑

摘要:./tests: error while loading shared libraries: xxx.so.0:cannot open shared object file: No such file or directory出现这类错误表示,系统不知道xxx.so放在哪个目录下,这时候就要在/etc/ld.so.conf中加入xxx.so所在的目录。一般而言,有很多的so会存放在/usr/local/lib这个目录底下,去这个目录底下找,果然发现自己所需要的.so文件。所以,在/etc/ld.so.conf中加入/usr/local/lib这一行,保存之后,再运行:/sbin/ldconfi 阅读全文
posted @ 2010-07-19 12:56 arm-linux 阅读(285) 评论(0) 推荐(0) 编辑

摘要:“苹果(Apple)公司的应用程序商店(app store)和谷歌(google) Android都为大家提供了更加容易赚钱的机会,但是我认为,为苹果应用程序商店开发软件的公司和个人赚的都只是小钱,利用Android的特性进行软硬件整合设计、再加上适当的艺术和工业设计才能赚到大钱。比较起来,苹果为大家提供的机会就像是芝麻,Android却能为大家带来一个汉堡。”在日前由创意时代主办的Android工作坊上,亚太地区Android促进会主席、台湾著名架构设计师高焕堂与参与工作坊的上百名嘉宾分享了他利用 Android、整合软硬件设计以及工业设计赚大钱的思路。高焕堂介绍,由于Android兼具开放 阅读全文
posted @ 2010-07-17 20:12 arm-linux 阅读(620) 评论(0) 推荐(0) 编辑

摘要:接着昨天的继续分析,我们接着从上一节最后部分继续开始今天的内容 :我是无名小卒,转载的朋友请注明出处,请不要抄袭做为它用,谢谢! 在内核中CONFIG_NET_NS配置选项是为了让用户自定义自己的网络空间结构,即上面的net结构,可以看出2.6.26内核的灵活性,但是我们一般在内核中不会配置该项,所以这里应该是取得init_net,这个结构是在前一节分析的那样在do_one_initcall()机制中调用了从pure_initcall(net_ns_init)注册的net_ns_init()初始化的,#define pure_initcall(fn)__define_initcall(&quo 阅读全文
posted @ 2010-07-16 17:34 arm-linux 阅读(707) 评论(0) 推荐(0) 编辑

摘要:系统环境变量:/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置./etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.当前用户变量:~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的 阅读全文
posted @ 2010-07-14 23:21 arm-linux 阅读(606) 评论(0) 推荐(0) 编辑

摘要:X11vnc (简体中文)From ArchWikiJump to: navigation, search i18n English 简体中文WARNING: 这将建立一个没有密码的VNC. 意思是任何人都可以通过网络访问你的VNC并且能看到你的X界面.可以非常简单的通过SSH连接来避免这样的事情.Contents[hide]1 设置 x11vnc1.1 安装1.2 运行1.2.1 startx1.2.2 GDM1.3 访问2 SSH端口转发 设置 x11vnc 安装 pacman -S x11vnc 运行 首先你需要运行一个x server服务器. 使用startx 或类似的. ... 阅读全文
posted @ 2010-07-06 14:18 arm-linux 阅读(2264) 评论(0) 推荐(0) 编辑

摘要:先用普通用户登陆,打开系统工具-终端切换到root用户输入命令:gedit/etc/pam.d/gdm&在文本编辑器中注释掉"auth requiredpam_succeed_if.so user != root quiet"保存后继续输入命令: gedit/etc/pam.d/gdm-password&同样地注释掉"auth required pam_succeed_if.souser != root quiet"这一行。保存后退出现在就能使用root登录了 阅读全文
posted @ 2010-07-06 11:52 arm-linux 阅读(375) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示