自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Hi-Wooya

无涯物联致力于推动中国物联网通讯的发展,让联网通讯更简单!

  • 博客(23)
  • 资源 (3)
  • 收藏
  • 关注

原创 CMOS摄像头之硬件原理

百问网自制CMOS摄像头模块硬件原理。

2013-09-24 17:50:27 6194 1

原创 u-boot-2012.04.01的配置编译过程分析.doc

uboot分析之配置过程基于u-boot-2012.04.01.tar.bz2一:问:我们在编译uboot的时候,先是执行make smdkc100_config命令(配置),然后执行make命令(编译),那么make smdkc100_config过程是怎么实现的呢?答:我们知道,在执行命令的时候,都直接和Makefile挂钩,打开uboot顶层目录下的Makefile,

2013-01-15 00:14:27 2144

原创 u-boot-1.1.6的配置编译过程分析.doc

uboot更目录下的Makefile分析一.配置过程(make smdk2410_config):smdk2410_config:unconfig   //相当于执行这条语句@$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 NULL s3c24x0-----------------------------------------

2013-01-15 00:12:56 1551

原创 s5k4ba摄像头驱动分析

s5k4ba摄像头驱动分析注释:本驱动是基于S5PV310的,但是全天下的摄像头驱动都是采用V4L2,因此驱动框架流程基本差不多。其中fimc_init_camera()函数会回调.init函数,该函数主要就是通过IIC总线来初始化摄像头模块寄存器,初始化该寄存器一般是通过写数组(由iic中的地址和数据构成)完成,该数组一般会被芯片原厂提供,如需弄清楚数组做了什么?只需要对照芯片(如OV9

2012-12-25 17:42:38 2732 1

原创 210学习日记_特别篇

210学习日记_特别篇本来我是不想写这章的,我担心大家觉得我在打广告,不过作为一个过来人,我还是有必要讲讲在使用Tiny210和QT210两款开发板的时候,的不同的感觉。会对比下这两款开发板的优劣,供大家以后在购买开发板时参考。注意:如果你觉得我是在打广告,你可以不看该章,或者直接del掉!!1.从外观上看:(1).QT210是黑色,Tiny210是白色,当然还有它们的造型

2012-10-29 19:20:37 1214

原创 210学习日记(18)_ARM基础知识

210学习日记(18)--ARM基础知识注意:以下大部分类容都来自网上现成的(直接拷贝过来的,然后经整理)!!!!问1:ARM处理器工作模式有几种?各种工作模式下分别有什么特点?答1:ARM 处理器有7种工作模式,这7种模式及其特点是如下:快速中断模式(fiq):支持高速数据传输或通道处理,外部中断fiq信号有效且CPSR的F=0时进入。中断模式(irq):

2012-10-29 19:19:49 1272

原创 210学习日记(17)_IIS驱动框架

210学习日记(16)--原来我误会IIS总线驱动了以前一直认为声卡的驱动程序的框架是多么的复杂,可是当我再次看完相关视频和自己分析了一下框架,发现和写裸板的差不多。声卡驱动程序框架:(linux-2.6.22\sound\sound_core.c)注意:sound_core.c在声卡驱动中扮演的角色和input.c在输入子系统中扮演的角色一样!!static cons

2012-10-29 19:19:03 1093 1

原创 210学习日记(16)_移植一线触摸

210学习日记(16)--移植一线触摸经过前面十多章的不懈努力,开发板从无到有的开发Linux驱动的环境已经搭建好(如果你问我,怎么没有写怎么制作文件系统,怎么nfs启动的话,我只能回答,视频里面讲得很详细了!),接下来肯定就是将二期中的所有驱动在210中给通通实现了。二期里面讲的方法非常实用,内核里面的框架都是固定的,而这些框架,韦东山已经详细分析过,所以大家照着框架做(分配,设

2012-10-29 19:18:26 2101

原创 210学习日记(15)_移植DM9000

210学习日记(15)--移植DM9000网卡驱动我想,大家学习到这里,写了一些裸板程序,对S5PV210应该算是比较了解了吧,而且已经写出了一个比较满意的bootloader来了,肯定是想上系统玩玩驱动了吧!我在"Tiny210学习日记(1)"中提过,要在从内核官网上面下载的纯净的Linux系统上面玩驱动,那么你要不得支持网卡,要不得有MTD分区,因为我们要挂接系统。接下

2012-10-29 19:17:46 1452

原创 210学习日记(14)_支持声卡

210学习日记(14)--支持声卡我想,声卡一定是大家比较喜欢和关注的吧。接下来我将S3C2440和S5PV210的声卡部分进行对比讲解。IIS(Inter-IC Sound)由飞利浦公司开发,是一种常用的音频设备接口,主要用于CD、MD、MP3等设备。1.播放音频的过程:                       IIS接口发送声音  DDR——>S5PV210——

2012-10-29 19:17:04 2299 1

原创 210学习日记(13)_定时器和修改工具

210学习日记(13)--定时器和修改工具一,定时器用于PWM输出(驱动蜂鸣器):我本来从来不写蜂鸣器的程序的(声音太难听),但是今天破例了。下面,先介绍下定时器的几个关键的寄存器吧:问:大家都知道,定时器的实现,其实就是一个计数的过程(从0家到一个数字或从一个数字减到0),那么这个数字从哪里来呢?答:从寄存器TCNTBx中获得,当我们编程时,写入一个数组到该寄存器

2012-10-29 19:16:16 1346 1

原创 210学习日记(12)_IIC

210学习日记(12)--IIC因为后面的声卡程序,要用到IIC,这里就讲下IIC,用AT24LC04的EEPROM做为测试:1.IIC总线接线图:问:既然只有两根总线,但是上面挂接了很多的从设备,那么CPU怎么来区分它们呢?答:通过IIC协议发出的信号,一定会先发出地址信号,从而达到区分从设备的目的。传送出的数据的格式为:-----------------

2012-10-29 19:15:22 971 1

原创 210学习日记(11)_中断

210学习日记(11)--中断由于后面的IIC会用到中断,这里就先讲讲中断吧:写完S5PV210的按键中断程序后,我才知道"6410只是一个过渡产品"确实是正确的,为什么这样说呢?下面我就给大家进行详细的阐述:中断处理过程等等我就不讲了,一期视频里面已经讲得非常详细了,建议大家在学习本章前,把2440和6410的关于中断的视频再看一次。接下来,我就直接对比他们吧:(1).对

2012-10-29 19:14:23 993

原创 210学习日记(10)_支持LCD

210学习日记(10)--支持LCD经过9章日志的努力,终于成功写好了bootloader。但是每次启动的时候,让7寸的LCD只显示背光,实在是浪费,我接下我将讲述如何让bootloader显示开机logo,即我的帅气照片。其实写LCD程序,就是那么个事儿......先做LCD的初始化工作,比如设置时间参数,分配显存等等操作,初始化完后,就完事儿了,以后什么都不需要做了,只需往

2012-10-29 19:12:55 1289

原创 210学习日记(9)_成功启动内核

210学习日记(9)--成功启动内核要成功启动Linux内核,无非就是要真确的传入函数theKernel(int zero, int arch, uint params)的参数,和跳到正确的地址去执行而已。(这些知识在韦东山自己写bootloader的相关视频中已经讲得非常的详细了)。我就从三个参数入手吧:参数一:必须为0,这就没有什么好讲解的了;参数二:机器ID,该参

2012-10-29 19:12:12 868

原创 210学习日记(8)_支持DDR

210学习日记(8)--支持DDR要支持DDR,仅仅只需要做一些初始化工作就行,而在S5PV210芯片手册中的598页已经给出了相信的初始化话步骤,我就不再多说什么了。另外大家可以听一下韦东三的6410的一期视频里面关于DDR的视频,会对大家对DDR的了解有所帮助。另外推荐大家看两篇文章:1).DDR2_SDRAM操作时序.pdf2).内存的原理和时序(SDRAM、DD

2012-10-29 19:11:35 1052

原创 210学习日记(7)_支持NAND

210学习日记(7)--支持NAND其实S5PV210的NAND FLASH控制器和2440的没有多大的差别,只是S5PV210的ECC校验功能更家强大了而已,而我在本章将不会用到ECC,故不做关于ECC校验相关的寄存器的介绍,在给出代码之前,我先讲讲我自己对NAND FLASH的一些理解。(建议大家先看二期视频里面NAND驱动的相关章节,关于NAND的硬件原理,讲得非常详细)

2012-10-29 19:10:26 961 1

原创 210学习日记(6)_独立日

210学习日记(6)--独立日写了这么久的S5PV210的裸板程序了,每次编译完成后,生成的bin文件总是要经过mktiny210spl.exe工具(是u-boot生成的)重新生成一个新的bin文件,而该bin文件只比旧的bin文件多出四行信息(在Tiny210学习日记(2)中有讲过),也就是说,该四行信息是mktiny210spl.exe帮我们写的,所以我们没有真正的独立,没有真正的

2012-10-29 19:08:53 1395 1

原创 210学习日记(5)_简单命令的实现.doc

210学习日记(5)--简单命令的实现这章实在是没有什么好讲的,大家直接分析代码就能够明白,都是些硬件无关的程序,代码我放到了"Tiny210学习日记_代码"目录下了,名为"4_command"。分析过u-boot的朋友们,应该对readline()函数不陌生吧,我这里将实现一个简化的readline()函数,实现在终端显示输入提示符,并从终端获取命令,实现过程如下:int r

2012-10-29 19:07:54 609

原创 210学习日记(4)_printf的实现

210学习日记(4)--printf的实现问:什么是可选参数?答:比如函数int printf(const char * format, ...),那么参数format后面的都是可选参数(注:不包含format),即可以传入可以不传入的参数。问:C函数是怎么被组织进C程序的?答:C语言的函数是从下(低地址)向上(高地址)压入堆栈的,如下图所示:栈底 高地址

2012-10-29 19:07:00 661

原创 210学习日记(3)_支持串口

210学习日记(3)--支持串口支持串口的代码我放到了"Tiny210学习日记_代码"目录下了,名为"2_clock_uart",因此,我就不在这里一一列出代码了,我讲讲我当初觉困难的地方吧:1.初始化时钟:代码如下:void clock_init(void){/* 设置时钟为: * ARMCLK=1000MHz, HCLKM=200MHz, HCLKD=166

2012-10-29 19:06:10 1303 2

原创 210学习日记(2) --工欲善其事,必先利其器

一,如何下载裸机程序到开发板(刚拿到开发板的时候,为这事儿犯愁好几天):1.下载裸机程序到SD卡:1). PC上执行ls /dev/sd*,得到:/dev/sda  /dev/sda1  /dev/sda22). 插入带有SD卡的读卡器到PC,PC再次上执行ls /dev/sd*,得到:/dev/sda  /dev/sda1  /dev/sda2  /dev/sdb  /dev

2012-10-29 19:04:29 1186

原创 210学习日记(1)--遇到的问题

问题1:当学习完韦东山的一期,二期视频教程以后,感觉收获特别的多,以前学习过国嵌的教程,向学 校的老师讨教过嵌入式相关的知识......但是,还是韦东山的最为经典,让我真正入了门,也有了 从未有过的收获,心里特别的高兴,但是与此同时,我产生了很多疑问和困扰,我真的学会了吗? 我以后该学习什么呢?该怎么学习呢?答案1:韦东山给了我一个很好的建议,叫我换一块开发板玩玩。于是我就好不犹豫的买了2

2012-10-29 19:02:50 1427

openwrt开发教程

该教程是F403科技创意室基于RT5350开发板写的openwrt中文教程!该教程还会不断更新!让广大读者,彻底掌握openwrt系统的开发!跟我们一起来学习openwrt吧!物联网的时代!

2014-05-22

独家揭秘tiny210v2启动流程(MLC)

独家揭秘tiny210v2启动流程(MLC nand),支持16bit的硬件ecc,支持mlc nand启动!

2013-01-27

uboot完全注释

uboot完全注释 非常适合uboot学习的人的资料 几乎是逐行注释

2013-01-15

空空如也

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

TA关注的人

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