- 博客(52)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 提供嵌入式GCC开发支持服务
最近碰到一件事情,朋友的公司因为版权的问题,将原来开发的ARM工程转移到ARM GCC工具链下。但是朋友的公司使用过GCC工具链的比较少,更别说ARM GCC工具链了。所以遇到了不少问题,后来只能求助于我。发现这过程中,有很多问题是因为不熟悉和了解而导致。所以在这里有一个想法,提供GCC开发服务支持。主要针对商业和企业用户。GCC是一个好东西,但是由于在国内缺乏商业支持,熟悉的人比较少,这里主要针
2012-03-06 22:06:56
1052
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 linux驱动模型分析总括
LINUX设备驱动模型在2.4和2.6之间有非常大的变化。感觉最大的变化就是2.6中加入了一些面相对象的方法进行管理设备驱动,其实在LINUX中早就使用了该方法。 为了有一个全面的了解,今天特意理清了一下思路,为下一步进入分析打下基础。LINUX使用类似UINX方式管理设备驱动,把设备当作文件来看待,只是当针对设备进行操作时,会调用对应的设备驱动中的操作。这里主要是了解一下LINUX如何处理用
2009-01-08 21:53:00
3193
原创 2012年
新的一年,有来了。也该是时候动手做些事情了,为自由,为梦想。一晃眼间,时间过得真快。还是得要坚持自己的梦想!!! 不能在期待奇迹会出现,也不再等待了吧。机遇垂青有准备的人,给自己创造机会和寻找出路。责任让我变的更强大,信心比黄金还珍贵。努力
2012-02-07 23:35:57
1841
1
原创 codelite + arm gcc toolchain + jlink
以前介绍了使用eclipse+winarm来搭建ARM开发平台。不过整体体验不是太好,特别是调试那一部分。而且eclipse对机器的性能要求比较高,配置起来不太方面。后来一直就用VIM+GDB方式来做开发,使用Makefile来管理工程。但是这个开发环境入手时间比较长,所以一直都在寻找可以用的方案。 KEIL MDK也支持arm gcc工具链,但是编辑环境和使用起来总是不够顺手,
2012-02-07 23:26:50
4502
5
原创 ARM GCC浮点相关总结
<br />名字解释:<br />ABI,application binary interface (ABI),应用程序二进制接口。<br /><br />编译版本问题:<br /> GCC 4.0 为分界线<br /> 4.0版本以下,由于采用OABI接口,其对浮点的支持不太好<br /> 4.0版本以上,采用了新的EABI接口,其对软浮点和硬浮点的支持都比较好。<br /><br />考虑在4.0版本以下时,其支持的ARM内核大多数没有硬浮点,所以可以分析资料比较少,<br
2011-05-10 22:08:00
10379
2
原创 Linux MMC/SD/SDIO体系结构
<br />有关MMC/SD/SDIO相关的知识这里就不多讲了,请参考相关资料。这里主要涉及Linux下MMC相关内容。<br />内核版本(2.6.36)<br />首先说一下Linux相关MMC的代码分布,主要有两个目录,一个头文件目录和一个源代码目录。<br />分别位置如下:<br />include/linux/mmc<br />drivers/mmc<br />要阅读MMC相关代码就必须要看这两个目录。在drivers/mmc目录下分别有三个子目录,其将对应接下来要讲的M
2010-11-08 21:09:00
5046
1
原创 MontaVista linux介绍
MontaVista Linux专业版(Professional Edition),可以满足用户对可预测性、稳定性以及高级I/O支持的要求。MontaVista Linux是MontaVista软件公司的产品,是业界领先的实时Linux。 实时Linux,实时性能好 MontaVista Linux可以满足各种嵌入式应用的实时性响应要求。MontaVista可抢占内核技术明显降低了内核的延迟和抖动,保证了100us以内的系统最坏响 应时间,可以达到甚至超过绝大多数实时性处理的要求。 专业版
2010-10-21 23:03:00
3983
转载 嵌入式软件测试的十大秘诀
在嵌入式软件开发过程中,一般来说,花在测试和花在编码的时间比为3:1(实际上可能更多)。这个比例随着你的编程和测试水平的提高而不断下降,但不论怎样,软件测试对一般人来讲很重要。很多年前,一位开发人员为了对嵌入式有更深层次的理解,向Oracle询问了这样的一个问题:我怎么才能知道并懂得我的系统到底在干些什么呢? Oracle面对这个问题有些吃惊,因为在当时没有人这么问过,而同时代的嵌入式开发人员问的最多的大都围绕“我怎么才能使程序跑的更快”、“什么编译器最好”等肤浅的问题。所以,面对这个不同寻常却异乎成熟
2010-10-21 22:50:00
749
转载 USB的八个问题和答案(适用初学者)
<br />USB的八个问题和答案(适用初学者)<br />问题一:USB的传输线结构是如何的呢?<br /><br />答案一:一条USB的传输线分别由地线、电源线、D+、D-四条线构成,D+和D-是差分输入线,它使用的是3.3V的电压(注意哦,与CMOS的5V电平不同),而电源线和地线可向设备提供5V电压,最大电流为500MA(可以在编程中设置的,至于硬件的实现机制,就不要管它了)。<br /><br />问题二:数据是如何在USB传输线里面传送的<br /><br />答案二:数据在USB线里传送是由
2010-10-21 22:41:00
777
原创 arm linux 优化
<br />ARM Linux的优化主要涉及部分:<br />1.内核部分<br />2.应用程序部分<br /> <br />两者的主要区别在于:内核没有使用标准C库和涉及浮点运算。所以在针对内核和应用程序优化上有所区别。<br />优化一般涉及两个方面:空间和时间。一般情况我们只能选择最优,两种不可兼得。不过随着ARM新的核A15的推出(据说速度可以达到2.5G,看来ARM的野心也不小,虽然WINDOWS系统还不支持ARM,未来也不不一定)以及现在存储的技术和性价比不断提升,将来的开发主要应该会走PC的
2010-10-21 22:33:00
1166
转载 如何读时序图
<br />时序时序,就是按照一定的时间顺序给出信号<br />就能得到你想要的数据,或者把你要写的数据写进芯片;<br />举个62256读数据的例子:<br /><br /><br /><br />先给地址, 地址保持的最短时间是:trc;<br />再给CS片选;片选滞后地址的最短时间可以算出来;<br />再给OE(读信号);同样滞后的最短时间也可以算出来;<br />数据线上本来是高阻态;<br />这时,滞后OE一段时间之后,数据输出,直到数据有效输出并保持一段时间;<br />然后O
2010-09-18 23:54:00
2167
转载 一些鲜为人知的编程事实
<br />David Veksler曾发表过一篇博文《Some lesser-known truths about programming》,列出了一些鲜为人知的编程事实,这些事实是什么呢?酷壳个人网站楼主陈皓对此文进行了翻译,全文如下:<br />我的程序员经历让我明白了一些关于软件开发的事情。下面是一些在编程中可能会让人感到诧异的事情:<br />1. 一个程序员用了大约只用了10%-20%的时间来编码,而且大多数程序员,无论他的水平如何,其平均每天只有10-12行的代码最终会
2010-09-18 23:31:00
559
原创 初创企业,该注意的
<br />对于现在的环境,相信很多人都想创业,做一番自己的事业。然而创业并非是见容易的事情,初创企业一般很难熬过5年。今天也写一些自己的想法,来探讨一下这个问题。初创企业该注意些什么?以下纯属个人观点:<br /> <br />1.初创企业生存是最重要的。只有生存下来,才有可能谈发展,谈战略。无法生存一切都是空的。所以生存是第一要务,特别是白手起家的企业。当然如果一开始企业就有大把的钱烧,不怕暂时不能盈利,可以熬那当然另当别论。<br /> <br />2.想好企业的盈利模式,做好企业的市场定位。这个非常
2010-09-18 23:21:00
677
转载 一个打工与创业的区别
<br />1:打工是靠自己的能力吃饭,创业是靠自己的智慧和思考吃饭; <br />2:打工是靠别人给自己的平台来展示能力,创业是靠自己的决心和眼光创造一个平台;<br />3:打工是做好自己的本分工作就好,创业是要思考体系运作的每一个环节;<br />4:打工的人期望的是一周有两天休息,创业的人是思考的是如何能低成本的运作; <br />5:打工的不愿意真实的面对自己的收入,创业必须要真实的面对自己的实力和财务状况;<br />6:打工的时候想的是自己的经历和文凭应该值多少钱,创业的时
2010-09-17 22:27:00
916
转载 PCB布板原则
<br />布线原则:走线的学问是非常高深的,每人都会有自己的体会,但还是有些通行的原则的。 <br /> <br /> ◆高频数字电路走线细一些、短一些好 <br /> <br /> ◆大电流信号、高电压信号与小信号之间应该注意隔离(隔离距离与要承受的耐压有关,通常情况下在2KV时板上要距离2mm,在此之上以比例算还要加大,例如若要承受3KV的耐压测试,则高低压线路之间的距离应在3.5mm以上,许多情况下为避免爬电,还在印制线路板上的高低压之间开槽。) <br />
2010-09-17 22:12:00
2867
转载 一个小公司老板的日常管理
<br />1. 小公司如何留住骨干:<br />2.关于授权<br />3.有的钱不能省<br />5.关于招聘<br />6.老板尽量唱红脸<br />7.公司里的亲戚<br />8.当老板和开车<br />9.按时发工资<br />10.学会说“不”<br />11.不要在公司内部奢望交朋友<br />12.避免当场做决定<br />13.政策的制定<br />14.矬子里拔将军<br />15.有些事情越透明越好<br />16.发劳保用品<b
2010-09-16 23:09:00
1590
转载 漫话产品设计
<br />原文来自:http://my.oschina.net/xuwa/blog/2727?catalog=85<br /> <br /> <br />2010年优涩控的第一篇文章,来个轻松的话题:漫话产品设计。只是00的有感而发,请勿对号入座~<br />以下被借题发挥的漫画来自这里的转载~<br />1.鱼饵就应当符合鱼儿的胃口,而不是钓鱼者<br /><br />(看不到图?点这里)<br /> <br />第一次看到这幅漫画就笑了:画的不就是做产品的我们嘛~ 花了不少成本、人
2010-09-16 21:30:00
952
1
原创 uboot 2010.06阅读分析
<br />1.uboot编译系统。<br />采用与linux内核类似的编译系统。在根Makefile文件中,先根据用户配置,如at91rm9200dk_defconfig,调用mkconfig对系统用的一些头文件和目录进行操作,并在include目录下产生config.mk文件和config.h文件。<br />在使用make all对系统进行编译。这时将通过include/config.h文件产生include/autoconf.mk文件,该文件包含了系统编译时可能需要选择的所有文件。<br /><b
2010-09-12 14:01:00
1317
原创 回来了
<br />差不多一年时间没有来更新BLOG了。去年年末一直都忙着工作。今年一开年,忙家事。今年对我来说是意义重大。完成了我人生中最重要的几件事。虽然压力挺大的。但生活还得继续,我一直都在努力。好好加油,去实践自己的梦想
2010-09-12 13:53:00
479
原创 有关音视频的总结
这几天一直在查阅有关音视频方面的资料,为后面的路打下基础。现在总结一下: 音视频中最基本的就是:原始采样的音频数据(PCM)和保存每个像素信息的图片(BMP文件去掉不必要的信息)。而已所产生出来的各种音视频的格式都是在这些的基础上,进行结构组织和各种压缩算法和规则而已形成的。视频其实就是一帧一帧连续的图片组成。另外根据压缩算法的不一样产生了无损压缩和有损压缩两种方式。图片和音频
2009-09-29 19:00:00
741
原创 音视频常见术语和接口收集
说明:这些内容都来网络,有可能存在错误。收集在此,为方便在工作中理解各种需求用。取样率:模拟信号是连续的,而数字信号是断续的。所以,模拟信号变成数字信号的第一步就要从连续的信号中,有间隔地一点点取出信号?这就叫取样。取样的密度就是取样率,用频率Hz来表示,1Hz就是1秒钟取一个点,CD的取样频率为44.1kHz,即1秒钟的波形上要均匀取出44100个点来。 取样率愈高,一点
2009-09-29 18:40:00
1626
原创 嵌入式linux加载引导内核和根文件系统的方法
总体来说,嵌入式Linux内核和根文件的引导与PC机差不多。嵌入式linux内核和根文件系统可以存放在各种可能的存储设备中,一般情况下我们将内核和根文件系统直接烧入到Flash中(包括NOR和NANDflash),这种方法的缺点是在内核和根文件系统出现修改时我们就不得不得重新对flash进行擦除和烧写工作,这个非常耗时,在产品开发调试阶段非常不适合,只有在最终成品时才比较适用。哪在
2009-09-29 18:37:00
4806
原创 主流音频格式介绍
什么是数字音频格式? 数字音源,也就是数字音频格式,最早指的是CD,CD经过压缩之后,又衍生出多种适于在随身听上播放的格式,这些压缩过的格式,我们可以分为两大类:有损压缩的和无损压缩的。这里所说的压缩,是指把PCM编码的或者是WAV格式的音频流经过特殊的压缩处理,转换成其他格式,从而达到减小文件体积的效果。有损/无损,是指经过压缩过后,新文件所保留的声音信号相对于原来的PCM/WAV
2009-09-29 18:37:00
3446
原创 常见的显示分辨率
习惯上,我们都对各种分辨率,采用命名的方式来标准。如VGA就是代表 640 x 480 pixels,一般电视机都只是支援到 VGA 的分辨率。而一般的 LCD 电脑幕都支持到 XGA 分辨率 (即 1024 x 768 pixels)。还有CIF,QCIF等等。下面是一张对照表,方便以后查阅。尺寸 (宽 x 高(像素))简称 (代号)全写尺
2009-09-27 19:41:00
603
原创 OEM与ODM
OEM是Original Equipment Manufacture(原始设备制造商)的缩写,它是指一种"代工生产"方式,其含义是生产者不直接生产产品,而是利用自己掌握的"关键的核心技术",负责设计和开发、控制销售"渠道",具体的加工任务交给别的企业去做的方式。这种方式是在电子产业大量发展起来以后才在世界范围内逐步生成的一种普遍现象,微软、IBM等国际上的主要大企业均采用这种方式。国内习惯称为协作
2009-09-27 19:32:00
752
原创 主流图片格式介绍
现在的图片格式也多种多样。不过比较常用的格式就是那么几种,要知道到底是哪几种,只要打开WINDOWS自带的画图程序就知道了。”开始“--》”所有程序“--》”附件“--》”画图“。然后保存就会出现你要将文件保存为哪种格式的图片文件。包括:BMP(1bit,4bit,8bit,24bit),JPEG,GIF,TIF,PNG. 下面就介绍一下这些图片格式:常见图片格式:BMP图像文件格式 BM
2009-09-27 19:31:00
3501
原创 主流视频格式介绍
现在存在各种视频太多了,工作需要,所以将它们都记录下来,至少也该知道它到底是怎么一回事,虽然没有办法去理解所有视频使用的算法,但是了解一下还是有必要的。MPEG Moving Picture Expert Group,即运动图像专家组格式,是以下MPEG-1、MPEG-2等视频格式的总称,VCD、SVCD、DVD就是这种格式。MPEG格式是运动图像压缩算法的国际标准,它采用了有损压缩方法从而
2009-09-27 19:29:00
1618
原创 ucos-ii ARM几种移植版本
打算移植UCOS-II到一个新的平台,所以今天的时间就主要花费在参考了几个移植版本。说到移植UCOS-II最关键实现几个函数:1.OSStartHighRdy,只被调用一次,在系统初始化时被调用,用来恢复第一个要运行的任务。一定来注意系统时钟还没有起来,这个工作应该放到第一个任务。否则会出现混乱。2.OSCtxSw,进行任务切换,保存被抢占的任务,恢复将要执行的任务3.OSIn
2009-09-18 19:40:00
2841
1
原创 ARM GCC工具链有关的使用总结
使用GCC工具链有那么久了,对其也有所了解了。主要用它来编译ARM平台的一些代码。下面是使用时的一些总结:1.GCC工具链对文件命是区分大小的。这个可能与它有关的系统有关,像UINX/LINUX这类系统,文件命是区分大小的。HELLO.C Hello.Chello.c是三个不同的文件。我们可能不会在同一个项目中使用这样三个文件,但如果我们在命名文件命是把如后缀命写错了就可能出问题了
2009-09-18 19:39:00
924
原创 Linux内核模块/驱动编程基础
linux内核开发时需要注意以下几个问题:1.不能访问C库,内核不能使用标准库。这个可以在编译链接内核以后从内核目录下的.vmlinux.cmd可以看出:arm-xxx-ld -nostdlib ... ... 。不过内核在lib下实现了部分常用的函数,如memset,strcpy这类函数,还有可能针对具体体系结构进行优化的代码,一般在arch/xxx/lib下。2.内核编程使用的
2009-09-18 19:39:00
1018
1
原创 Android相关链接
Android是GOOGLE联合30多个公司共同推出的手机开源手机平台,其基于Linux操作系统。但其并不针对手机这一个平台,可以用到非常多的消费电子产品中。故搜集一些信息为后面开发积累资料。参见网站。http://source.android.com/源代码使用GIT访问http://git.source.android.com/源代码非常全。大小在2.1G左右
2009-08-11 22:03:00
665
转载 嵌入式常用IC芯片索引
× 【目录】× 1.电源变换IC芯片× 2.数字式传感器,电位器及精密运放芯片× 3.电机控制及驱动芯片× 4.数字通信IC芯片及接口× 5.AD转换芯片× 6.DA转换芯片× 【说明】× 1.“...”表示未完成待补充,因为采用增量模型,所以没有结束的一天。:-)× 2.全部一个一个敲的,注意版权,引用时注明
2009-06-11 19:21:00
2654
原创 usb host相关的一些资料
最近工作需要,收集了一些有关的USB HOST方面的资料,说实话还真是少,所以记录下。 LPC2468 的 USBHOST OHCI FAT32 实现http://www.icdev.com.cn/?viewthread-9447.html Software Implemented Atmel Mega32 Universal Serial Bus Host Controlle
2009-06-08 21:08:00
890
原创 生活随想
今天没有钥匙开门,中午下班以后回不了家。没办法只好乱逛。说实话我很少出去逛,特别是自己一个人出去逛。感觉自己真的太没生活情趣了,自从进入自己的专业以后,很多东西都放弃了。连现在写点东西都成问题了,更别说其它的了,自己以前的爱好都放弃了。特别是出来工作以后,发现对自己更加苛刻了。生活生存的压力,好像永远都是我沉重的负担。上有父母,旁边还有一个整天要想结婚的女朋友。这年代,想结婚也不行,没户
2009-06-06 21:57:00
647
2
原创 顶顶大名的嵌入式实时系统厂商风河(Wind River Systems)被Intel收购
我想VXWorks就不用多说了吧!搞过嵌入式系统的人应该都知道。今天看到消息其被Intel收购了。这也为Intel进入嵌入式领域铺平了道路。毕竟PC领域的大体格局应该来说日趋稳定,要想获得更大的发展,Intel必须向嵌入式市场进军,其利润应该会远远超过PC机。对其他IC厂商来说,这也许意味着点什么,特别是ARM在中国大道其行的今天,那么其地位是否会有所改变呢?现在产品是人家的了,不给你用,也没办法
2009-06-05 18:19:00
1144
原创 开源项目
http://sourceforge.net/index.php 开源社区的老窝 http://freshmeat.net/ 另一个开源社区 www.kernel.org LINUX内核发布网站ww.uclinux.org UCLINUX官网WWW.GNU.org gnu openOCD:Free and Open On
2009-06-04 23:24:00
841
原创 Android系统
Android是google公司针对手机开发的一个平台,并公布了其中大部分代码,其大部分应用程序都是用JAVA开发的,毕竟它是商业性的产品嘛,有所保留也是理所当然的。对于搞嵌入式linux开发的人来说我们可以从中学习其长处,也算得上是未来的一个发展方向和趋势吧。我们先来看看Android它的体系结构吧。下面是一张公开的Android体系结构图。 android的系统架构和其操作系统
2009-05-17 11:33:00
5546
3
原创 好久没有更新blog了
差不多一个月没写blog了,上来做个记号。时间过得特别快,这近一个月时间一直在研究有关JTAG协议方面的内容,并在实现一个ARM CORTEX-M3的调试驱动,现在已经可以使用了,总算可以轻松一下了,这段时间特别辛苦,所以也懒得写。Linux方面的工作放了一段时间,估计马上又要上马了,rtems系统的工作移植在断断续续进行中。希望自己一切都好,工作还在继续,生活也在继续,为了生存,为了更好的生活,
2009-05-13 19:53:00
572
转载 嵌入式系统网址大全 驱动程序开发网技术社区
嵌入式综合性网站 http://www.embeddedtechnology.com (英文) 包含大量的嵌入式产品、开发工具、产品提供商介绍。 http://www.embedded-directory.com (英文) 嵌入式产品、工具介绍,包括硬件、软件、开发工具、开发服务商、测试设备、单板、处理器、信号处理器、分析仪等。 DSP技术 DSP介绍,提供DSP厂商和芯片族名录,DSP文档和链接
2009-04-19 13:30:00
1092
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人