
ARM Linux 嵌入式入门
文章平均质量分 75
专注于ARM Linux嵌入式入门级文章更新,给嵌入式新手指点迷津,详尽的记录学习和实验中遇到的常见问题,给出合适的学习建议,共同提升,共同进步。
独立博客:junkor.info
junkor
我,充满激情!
我们还年轻,谁怕谁啊?!
展开
-
Ubuntu下配置USB转串口及串口工具配置
欢迎访问独立博客: http://junkor.info首先,站在巨人的肩膀上,前半部分是前人的文章,我有幸受此文指导,设置成功,测试通过。后半部分是串口工具的配置。 原文地址$$$$$$$$$$$$$$$$$$$$$$$$$$$$1、下载:sudo apt-get install minicom2、插入usb转串口线,终端输入:dmesg | grep usb原创 2011-11-17 22:53:33 · 7808 阅读 · 2 评论 -
U盘安装Ubuntu(剧场版)
欢迎访问独立博客: http://junkor.info故事背景:因为换了一台笔记本,硬盘上没有了ubuntu,要知道上台电脑上的乌班图可是跟了我快4年了,这说没就没了。而原来刻的liveCD不知为何在这个电脑上用不了了(ps:我保证盘是没有问题的,因为之前ubuntu出问题还用这个liveCD引导修复过的),再买个盘刻一张又闲它麻烦。原来上学的时候和朋友一块折腾过用grub直接引导硬原创 2011-11-17 21:45:51 · 3683 阅读 · 3 评论 -
ubuntu下DNW的配置及使用(及笔记本下的问题)
整理一下Ubuntu下的DNW安装,其实就是一个文件,可以直接拿来用。网上有文章,大多是还老版本的,还要自己编译驱动模块,手动加载什么的,非常繁琐,所以我顺便整理一下简洁版的。这里,直接安装libusb-dev就已经包含了驱动,然后用编译出来的dnw文件就可以传输了,这里是安装包,我已经打好包,里边写好了一个简单的脚本install.sh,直接在命令行里输入./install.sh原创 2011-11-21 14:25:43 · 5422 阅读 · 2 评论 -
根文件系统中的几个瑕疵的完善
上次文章中记录了一个简单的根文件系统的制作,不过最后留了一些瑕疵在里面,为了具有像乔布斯那样追求完美的精神,这次就来完善一下,现在主要存在的问题就是下图所示:这里提示到的问题主要有三个:1、ifconfig问题(ps:我们还没有对当前开发板修改并移植网卡驱动DM9000,所以这个是难免的。)2、tmpfs问题原创 2011-11-21 19:24:52 · 3734 阅读 · 2 评论 -
构建根文件系统(一)
接着前边内核移植的文章,记录根文件系统的构建。这里要用到强大的busybox,我选择的版本是busybox-1.18.5.tar.bz2 ,1.17的也可以;之所以选择这个版本是因为基于现在的交叉编译环境,可以正常静态编译busybox的版本貌似就是1.17之后的了(之前测试的是这样),当然用动态的也可以。这里我讲述两种构建(静态和动态)形式原创 2011-11-07 22:48:32 · 6312 阅读 · 2 评论 -
ARM9 安装GIVEIO驱动的方法
<br />我的是天嵌2440的板子,刚开始学……<br />网上搜集的解决方法<br /><br />首先学习安装bootloader ,安装其GIVEIO的驱动~~ <br />首先将GIVEIO目录下的GIVEIO.SYS文件复制到C:/WINDOWS/system32/drivers目录下面,<br />然后打开控制面板里的添加硬件,<br />选择“是,我已经连接了此硬件”,<br />下一步,选择“添加新的硬件设备”,<br />下一步,选择“安装我手动从列表选择的硬件”,<br />下一步,选原创 2010-11-07 19:43:00 · 6346 阅读 · 1 评论 -
初探Linux kernel系列一
2011.2.6晚 首先阐述一下我为什么想学习一下Linux kernel。最早是因为对嵌入式的一时脑热,我买了开发板,买了不少资料,前前后后投进去了1000多了。不过好歹还是有点回报的,虽然还没有怎么着调,但又似乎拓宽了不小的知识面。 慢慢的我发现,对于从学软件原创 2011-03-03 13:29:00 · 2385 阅读 · 0 评论 -
初探Linux kernel系列二
今天来介绍一下内核开发和应用程序开发的差别:l 内核编程时不能访问C库(因为Linux下很多C库函数是对Linux系统调用的封装,自身怎么可以调用自身呢?)l 内核编程时必须使用GNU C。l 内核编程时缺乏像用户空间那样原创 2011-03-03 22:19:00 · 1880 阅读 · 1 评论 -
初探Linux kernel之进程相关一
终于到了重点部分,这次来说说linux的进程管理,不一定能说完,这个比较多,说多少是多少 要知道啊,OS是干啥的?处理提供对硬件层的抽象以外,还担负着很多的硬件管理功能,而这些功能,用一句话来说,就是来处理各个部件的时空复用问题(时间和空间的重用问题,如cpu原创 2011-03-12 16:44:00 · 1533 阅读 · 0 评论 -
初探Linux kernel之进程相关二
初探Linux kernel之进程管理二上次说了进程的相关组成信息,这次接着说吧。之所以长期没有更新,是因为春天到了,是个容易让人心跑毛的季节,老想着跑着玩了……哈哈继续。。。。。。。。。知道了进程不仅仅是由一段执行代码组成的,咱们就说说linux下的进程原创 2011-04-08 23:06:00 · 1708 阅读 · 0 评论 -
字节对齐问题(struct中)
原文出处:【点击,进入原文页面】今天在看结构体和共用体部分的时候,遇到了一个新名词“内存对齐”。先引入问题吧。如下:struct student{ char name[20]; int age; char sex; char phone[15];};stru转载 2011-09-27 17:17:02 · 1895 阅读 · 2 评论 -
linux C 中重要的数据结构——结构体
如大家所知,Linux kernel是由C语言和少部分汇编实现的,如此庞大的系统,要用面向过程的C语言来实现,怎样才能保证系统组织的清晰与正确性?其实,虽然C语言没有封装对象这种数据结构,但是他却有个更灵活的东西——机构体。这家伙身经百战,能屈能伸,应对了所有需要对象出场的情况,原创 2011-09-27 17:17:55 · 2116 阅读 · 1 评论 -
笔记本+win7下开发板USB下载驱动以及USB下载的问题解决(及原因遐想)
首先是安装USB下载驱动,这个驱动事先我已经确定是没有问题的,因为之前的台式机同样是win7系统且运行良好。并且还成功烧写过一次内核镜像。Win7下USB下载驱动下载(理论上这个驱动可能不是开发板间通用的,这里是TQ2440) 虽然前边的USB转串口驱动弄好以后,还是使我搁置了两天,因为我用USB通过DNW往开发板上下载东西时会报如下错误: Now,原创 2011-11-07 21:27:05 · 6966 阅读 · 2 评论 -
笔记本+win7下USB转串口驱动的安装
为了出行方便,更换装备,换了台笔记本,纠结许久……用笔记本做底层开发的纠结不是一班人可以体会到的,毕竟咱们都是二班的。笔记本还好,可能你用的还是xp,不错,也好办。笔记本+win7就有点头疼了,USB转串口驱动,找了好久,真是扯,不过还是弄好了。网上搜罗了一通,换了10几个驱动,都不识别,郁闷许久,不是一般郁闷。虽然好多人很轻松的装上了,不过笔记本厂家不同,win7系统版本原创 2011-11-04 22:35:04 · 27929 阅读 · 58 评论 -
uboot 命令使用教程(uboot参数设置)
1. Printenv 打印环境变量。uboot> printenv baudrate=115200ipaddr=192.168.0.111 ethaddr=32:34:46:78:9A:DC serverip=192.168.0.100 Environment size: 80/8188 bytes 2. Setenv 设置新的变量 如:uboot> sete原创 2011-11-04 16:11:36 · 27150 阅读 · 1 评论 -
愚人的linux内核2440移植札记(超曲折版)
原来文章叫——编译内核之初体验。后来想了想,这篇文章让我体验了好多遍。不该叫这么大气的名字,还是改了吧。中间记录了很多在内核移植中可能遇到的问题。 还是把名字改为:愚人的内核移植札记(超曲折版) 千呼万唤始出来,让我们开始移植内核吧!环境:Ubuntu + EABI-4.3.3(就是前边配置好的环境)内核版本:linux-2.6.34.10 /*这个版原创 2011-10-25 18:15:09 · 3359 阅读 · 3 评论 -
Linux下第一个驱动程序
因为在Ubuntu环境下写的文章和做的实验,没有安装linux下比较好用的截图工具,所以没有附带太多截屏,还望海涵,不过该描述的都到位了。 曾经还一直处于应用程序开发的我,以为驱动开发者是那么的厉害,以为只有牛人才能走到这一步,随着知识的积累,发现并非如此,驱动开发并不像想象中那么特别,俗话说术业有专攻,开发者只是使用的工具不同,且从事的领域不同,产品不同罢了。只要能作出好的原创 2011-10-21 13:35:32 · 5725 阅读 · 7 评论 -
Linux下字符设备驱动程序的结构
首先,希望可以明确一下概念:1、 要说的是,驱动,必然是与内核紧密相连的底层程序;并且接口对用户是不可见的。所以你要想到的是如何把驱动和内核联系起来,第一个就想到了模块(modules),模块就像一个载体,一个容器,通过它,会把你写好的程序插入(装载)到内核可见的区域,从而使内核感知到你的驱动的存在,然后用户空间才能通过系统调用的形式联系到驱动,从而完成它的任务,所以你首要了解模块。2、原创 2011-10-21 23:09:46 · 2277 阅读 · 1 评论 -
Ubuntu下内核编程之第一个模块helloworld
模块是驱动开发的必经之路,这也是我们在前边要构建内核源码树的目的所在。因为模块属于kernel编程了,和用户空间的c语言变成不同。他要依附于内核源码树的存在而存在,下面就开始我们的第一个模块的编写吧。 Ubuntu下内核编程之第一个模块——我的叫jun_module。随你怎么起名。以下是建立的全过程: 1、首先肯定是编写模块的源代码,和Makefile。我们建立一个专用原创 2011-09-13 17:41:36 · 4040 阅读 · 5 评论 -
如何移除Ubuntu内核源码树中老版本的内核相关文件
如前边文章提到的,更新Ubuntu后,在建立内核源码树时,在/usr/src/目录下,会有两套内核相关目录。我的是从9.04更新到10.04后,会多出下面的老版本的内核相关目录:linux-headers-2.6.28-11 linux-headers-2.6原创 2011-09-19 23:33:10 · 1911 阅读 · 2 评论 -
Ubuntu+下构建内核源码树_图文教程
Ubuntu下构建内核源码树 网上好多文章,他大爷的都是转来转去,每一篇中用的。索性还是自己整理一篇吧。 网上牛人多,但是小白问题更多,更何况咱们这号不入门的,因为最近学内核,要写模块,模块要在源码树下编译安装,又习惯了Ubuntu的OS,不忍转向他方原创 2011-09-09 22:00:50 · 4150 阅读 · 2 评论 -
第一个程序,让你的板子唱国歌(败笔)
虽然是败笔,但是文中基本上介绍了一个小应用实现及问题分析的全过程,希望能够对你有帮助,大胆贴出!毕竟这篇文章写了好久。。。额,写文章的人伤不起啊伤不起。。。学生时代总会有这么一句笑话:“XXX!去,给我蹲政教处门口唱国歌!” 一直在思索第一个例子用什么,才能原创 2011-10-07 18:48:18 · 7713 阅读 · 19 评论 -
裸板烧写Uboot
有读者要求介绍一下裸板下Uboot的烧写;所以就简单的说明一下。这里主要是参考的TQ2440的出厂使用手册中介绍的,并做一下具体说明。在裸板(没有Uboot)情况下,只用通过jtag调试接口向flash中烧写程序,一般情况下,我们只用到jtag接口一次,就是用来烧写b原创 2011-10-11 18:20:08 · 10986 阅读 · 3 评论 -
ARM嵌入式常用开发工具介绍及插画开发流程(更新)
这里接着前边的开发环境的配置说,其实用于开发的话,基本的开发环境已经架构好了,不过由于嵌入式开发环境的特殊性(交叉编译),我们还会用到一些其他的外围工具,这里做简要的说明。并重新介绍一下整个开发环境中,各个工具的使用,及一个简单应用的开发流程。 SecureCRT :原创 2011-09-28 15:38:05 · 11851 阅读 · 14 评论 -
Ubuntu下安装、配置交叉编译工具链
一般吧,都是用的制作好的交叉编译工具,买的ARM开发板里都带的有配套的常用开发工具。只有像看文章的你和写文章的我这般闲的浑身都疼的人才自己编译制作交叉编译工具。当然我们的目的是为了知其然还知其所以然。知识的学习是无穷尽的,here we go。 Well,首先要明白什么是交叉编译工具链。这个我就不嗷述了,说不定你比我看过的解释的版本还多。这里常用的制作工具链的方法是基于gc原创 2011-09-20 18:03:34 · 8725 阅读 · 7 评论 -
Ubuntu下安装、配置NFS服务
介绍一下NFS的配置吧。因为感觉感觉嵌入式开发板的NFS方式启动内核比USB烧写来的方便,所以这个是少不了的。其实只用作简单的安装、配置即可使用了:(这里只是简单配置,只适合于嵌入式开发应用,若要进行Linux或者Unix服务器配置,还请多多参阅其他资料) 执行下边原创 2011-09-19 23:54:54 · 1731 阅读 · 1 评论 -
SecureCRT 的乱码问题和中文显示
如果这个真没有,那就算了。不过,这个可以有。难免会有乱码的时候,默认的是西欧字符显示中文是乱码,尤其是通过SSH连Ubuntu,用户home下的文件夹是乱码,还有通过SecureCRT更新Ubuntu时,看不到更新的反馈信息,其实很简单,稍作设置就OK了:选项--》会原创 2011-09-08 17:46:38 · 5944 阅读 · 1 评论 -
Ubuntu 下 配置 SSH服务全过程及问题解决
Windows下做Linux开发,装虚拟机里,怎么可以不用SSH呢。有人说,“做Linux开发,还不直接装机器上跑起来了,还挂虚拟机,开SSH……闲的蛋疼了吧”,不管怎样,我接触Linux算是3年了,用了3年的Ubuntu了吧,对Ubuntu算是了解,Ubuntu在Linux众多原创 2011-09-08 17:19:36 · 3755 阅读 · 2 评论 -
Ubuntu下安装、配置FTP服务
Ubuntu下安装、配置FTP服务 续根据前两篇博文之后,SSH服务配置好了,内核通过SSH编译好了,得能把编译好的内核或者模块从虚拟机里面弄出来,一般就用FTP服务器了,Linux下,用的大多就是vsftpd了。如果ftp也配置好了,那么然后在虚拟机里边进行后原创 2011-09-11 14:02:43 · 12165 阅读 · 6 评论 -
ARM嵌入式学习自顶向下平台介绍和相关说明
介绍一下学习用到的平台,外扯几句给你打气的闲话。 首先说一下开发平台。这里用到的是Windows 7 + Vmware 7.1.2 + Ubuntu 10.04(原来是9.04,在配置SSH服务时升级到了10.04,文章中有介绍)。开发板是用的TQ2440原创 2011-09-22 14:12:35 · 2057 阅读 · 4 评论 -
基于ARM嵌入式Linux学习开始到入门
腾出手来,认认真真写一篇嵌入式的文章,谈谈我的学习历程。希望对你有所帮助。介绍一下背景,我是学计算机的,还是专升本的。大一大二上的是软件学院,然后专升本考了个二本,也就是说大一大二的时候学的是纯面向应用的开发,学了一年半的Java,都是高层开发,对底层是毫无了解的。当时也没有系统的学习过操作系统、组成原理的知识,好在我还算是上进,主要还是兴趣所致,对计算机认识比较到位,所以平时也积累了不少原创 2011-09-11 16:29:32 · 4112 阅读 · 26 评论 -
ARM嵌入式学习自顶向下从入门到精通系列目录(2011-11-23更新)
推荐多线程同步学习策略。。。。(持续更新) 这里把之前写的文章整理出来,由点到线再到面,希望可以帮助你一步步入门。可等文章不是很连贯,我会逐步修改完善。还有就是牵涉到的知识体系比较庞大,又是多线程的学习,可能更新不是很快,但是只要一闲下来,我就会尽快更新的。可能我写的文章不是很好,但绝对很真诚。我虽然不是什么高手牛人,但也会帮你少走一些弯路的。因为在我心目中,程序猿一直是原创 2011-09-20 18:49:29 · 5865 阅读 · 14 评论