
ARM系统
文章平均质量分 78
zhaocj
这个作者很懒,什么都没留下…
展开
-
s3c2440启动文件详细分析
启动文件就是引导ARM启动,并进入我们熟悉的C语言程序。它主要完成了ARM最基本的硬件初始化工作。虽然启动文件的内容大同小异(就是设置系统时钟、内存、中断向量表、栈等内容),而且只要有一个现成的启动文件,即使不用详细了解该文件的内容,直接进入C语言编程工作也可以对ARM进行操作,但我认为熟悉启动文件的内容,还是有必要的,它对我们熟悉ARM的体系结构,编写出更高效的程序是大有益处的。原创 2010-02-09 15:39:00 · 26596 阅读 · 79 评论 -
s3c2440的触摸屏应用与校正
触摸屏是当今最流行的一种人机交互接口,它被广泛地应用于手机等消费类电子产品中,目前这种技术有向PC机方向发展的趋势。基于原理的不同,触摸屏可以分为电阻式、电容式、表面声波式等。电阻式是应用较广的一种触摸屏,它的原理是通过测量横向和纵向的电阻值来获得触点的坐标。 s3c2440集成了4线制电阻式的触摸屏接口,触点坐标的检测是通过A/D转换来实现的。s3c2440一共有4种触摸屏接口模式原创 2010-04-21 11:26:00 · 16823 阅读 · 113 评论 -
s3c2440的SD/MMC的应用
SD(全名为Secure Digital Memory Card,安全数码卡),是一种存储卡的标准,它被广泛地用于便携式设备上,如数码相机、个人数字助理(PDA)和多媒体播放器等。它的技术是基于MMC(MultiMedia Card)格式,因此SD兼容MMC。 s3c2440集成了SD控制器,可以方便地读写SD、MMC和对SDIO进行操作。在这里,我们只研究对SD/MM原创 2010-04-30 21:19:00 · 8589 阅读 · 70 评论 -
s3c2440对norflash的操作
本文介绍了s3c2440对以EN29LV160AB为例的norflash的操作,包括读、写、块擦除、读ID、复位等。原创 2010-07-04 18:13:00 · 12834 阅读 · 44 评论 -
s3c2440的DMA应用
DMA(Direct Memory Access,直接内存访问)是一种不经过CPU而直接从内存存取数据的数据交换模式。在需要进行大量数据交换的场合,用好DMA,可以大大提高系统的性能,因为DMA操作几乎不占用CPU资源。 s3c2440提供了4个通道的DMA,它们不仅可以实现内存之间的数据交换,还可以实现内存与外设,以及外设与外设之间的数据交换。要用好s3原创 2010-05-12 19:57:00 · 12515 阅读 · 74 评论 -
s3c2440的摄像接口应用
本文详细介绍了s3c2440摄像接口的应用,主要讲解的是P通道,即在LCD上实时显示视频。文中还分别给出了使用通用IO和IIC来实现OV9650的SCCB协议的方法。原创 2010-06-07 17:18:00 · 12273 阅读 · 147 评论 -
s3c2440对nandflash的操作
本文以K9F2G08U0A为例,详细讲解了s3c2440对nandflash的基本操作,包括读ID,页读,页写,擦除,随意读,随意写等内容。原创 2010-08-07 14:56:00 · 15090 阅读 · 104 评论 -
s3c2440的nandflash启动
本文介绍了如何使s3c2440进行nandflash的自启动方法。原创 2010-08-11 12:26:00 · 14009 阅读 · 41 评论 -
s3c2440的网卡接口扩展
该文主要讲解了如何利用DM9000来扩展s3c2440的以太网卡功能,并以ARP协议为例,实现了简单的网卡通信。原创 2010-06-15 17:19:00 · 12127 阅读 · 136 评论 -
s3c2440的USB主机控制器
s3c2440提供了USB主机接口,它与OHCI v1.0完全兼容。要使用该功能,就必须熟悉OHCI v1.0规范;而要熟悉OHCI v1.0规范,那么还必须先熟悉USB v1.1协议。因此涉及到该部分的内容较多,要想正确使用s3c2440所提供的USB主机接口也不是一件容易的事情。在这里,我主要介绍USB设备枚举过程中所涉及到的一些知识,并给出具体的实现程序。原创 2010-12-17 21:48:00 · 12420 阅读 · 76 评论 -
s3c2440裸奔之结束语
想了好久,最终还是决定结束该系列的内容。对照s3c2440数据手册,能讲解的内容我基本上都介绍了一遍。其中,限于手头没有相关硬件资源,SPI、UART的红外模式、AC97没有涉及,而USB设备控制器部分,由于还要用到上位机的驱动以及应用程序的开发,涉及的内容较多,已超出了“裸奔”的范围,因此也没有予以介绍,还请大家谅解。 为了便于大家的查找,我给出一个目录:1、s3c2440启原创 2011-01-05 21:36:00 · 20327 阅读 · 95 评论 -
s3c2440的A/D转换应用
A/D转换,又称为模数转换,是将模拟信号转换为计算机能够处理的数字信号。s3c2440集成了8通道10位CMOS A/D转换器。 对于s3c2440来说,实现A/D转换比较简单,主要应用的是ADC控制寄存器ADCCON和ADC转换数据寄存器ADCDAT0。寄存器ADCDAT0的低10位用于存储A/D转换后的数据。寄存器ADCCON的第15位用于标识A/D转原创 2010-04-17 08:41:00 · 9671 阅读 · 46 评论 -
s3c2440实时时钟中断
s3c2440实时时钟(RTC)中,定义了两个中断源:报警中断和时间节拍中断。前面有网友问到了这两个中断的用法,最近我抽出时间对这两个中断研究了一番,发现这两个中断都很实用。现在就给大家介绍一下它们的用法。 时间节拍中断,顾名思义,就像一个节拍器,可以等时性的控制节拍。因此它类似于定时器中断。但时间节拍中断是毫秒级的,而定时器中断可以达到微秒,甚至更小级别。时间节拍中断原创 2010-04-05 20:28:00 · 8842 阅读 · 26 评论 -
第一个裸奔程序——跑马灯
经过前段时间的准备,现在终于开始正式写ARM程序了。本着先易后难的原则,先写无操作系统的ARM裸奔程序,以便熟悉s3c2440的内部结构,此后再编写有操作系统的程序。 第一个程序就从最最简单的点亮开发板上的四个LED开始,使这四个并排摆放的LED从一端向另一端依次被点亮,从而呈现出跑马灯的效果。四个LED连接到了B口的5到8引脚,输出低电平时被点亮,下面就是程序代码:原创 2010-02-12 16:16:00 · 13083 阅读 · 60 评论 -
s3c2440外部中断操作
要想正确地执行2440的外部中断,一般需要完成两个部分内容:中断初始化和中断处理函数。 在具体执行中断之前,要初始化好要用的中断。2440的外部中断引脚EINT与通用IO引脚F和G复用,要想使用中断功能,就要把相应的引脚配置成中断模式,如我们想把端口F0设置成外部中断,而其他引脚功能不变,则GPFCON=(GPFCON & ~0x3) | 0x2。配置完引脚后,还需要配置具体原创 2010-02-16 21:39:00 · 19810 阅读 · 106 评论 -
s3c2440的PWM应用
PWM(Pulse Width Modulation)——脉宽调制,它是利用微控制器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用于测量、通信、功率控制与变换等许多领域。s3c2440芯片中一共有5个16位的定时器,其中有4个定时器(定时器0~定时器3)具有脉宽调制功能,因此用s3c2440可以很容易地实现PWM功能。下面就具体介绍如何实现PWM功能。1、PWM是通过原创 2010-02-20 10:02:00 · 13164 阅读 · 19 评论 -
s3c2440定时器中断的应用
在前面的几篇文章中,每当程序需要延时时,我们是利用循环语句来实现。这种方法的延时简单,但不是很精确,就是说不能得到确切的一段时间的延时。因此当需要精确延时时,就不能采用这种方法了。一般是利用定时器来实现。在这里,我们就介绍一下s3c2440定时器的使用方法。 在讲解之前,先介绍一下s3c2440时钟系统。一般来说,MCU的主时钟源主要是外部晶振或外部时钟,而用的最多的是外部晶振。在正确原创 2010-02-24 19:48:00 · 15658 阅读 · 66 评论 -
s3c2440看门狗定时器的应用
看门狗定时器的主要作用是在程序因为干扰而跑飞后,能够使系统复位,不至于使系统永远的死下去。 它的原理与一般的定时器没有多大区别,就是先要设置好一段时间,当超过这段时间后,就从当前运行的程序中跳出进入中断处理程序中。但两者的主要差别是,一般的定时器中断是我们希望它发生的,因此我们不会在定时器中断发生前的那个时间段内干预它;而看门狗定时器中断是我们不希望它发生的,因此我们要想方设法地避免原创 2010-02-27 11:12:00 · 9820 阅读 · 13 评论 -
s3c2440的UART用法
SPI、IIC和UART是最常用的三种串行总线,这三种总线在s3c2440中都被集成了。在这里我们主要介绍UART,另两个总线在后面的文章中给出。 UART(Universal Asynchronous Receiver/Transmitter,通用异步接收/发送装置)用于异步通信,可以实现全双工发送和接收。它不仅可以实现不同嵌入式系统之间的通信,还可以实现原创 2010-03-10 12:40:00 · 18951 阅读 · 135 评论 -
s3c2440的LCD应用
人机交互是嵌入式系统必须具有的功能。比较简单的人机交互有按键、LED、蜂鸣器,稍微复杂的有7段数码管和点阵。但如今这些都不能满足人们的需求了,所以又出现了LCD和触摸屏技术。s3c2440具有LCD和触摸屏接口,可以很好的连接LCD和触摸屏。这篇文章主要介绍TFT型LCD的用法。 要想正确使用LCD,必须注意两点:1、时序;2、显示缓存区。 1、时序LCD一原创 2010-03-19 17:28:00 · 19914 阅读 · 103 评论 -
s3c2440的LCD字符显示
在上一篇文章中,我们详细介绍了如何驱动LCD,对于在LCD屏上呈现各种简单的图形已经不是一件高不可攀的难事。但如何绘制字符呢? 其实每一字符就是一幅图像,字符的大小对应于图像的大小,字符的笔画对应于图像的内容。那么如何把字符转换为图像呢?简单的方法是使用“字模提取”之类的软件,它能够把任意的字符转换为一个字节型的数组,数组元素中的每一位代表LCD上的一个像素点,当为1时,表示该位置原创 2010-03-26 10:06:00 · 16164 阅读 · 156 评论 -
s3c2440的IIC应用——读写AT24C02A
IIC(Inter-Integrated Circuit,I2C)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微处理器及其外围设备,它的最主要优点是简单和有效。它只需要数据线SDA和时钟线SCL,就能够实现CPU与被控IC之间、IC与IC之间进行双向传送。 s3c2440内部有一个IIC总线接口,因此为我们连接带有IIC通信模块的外围设备提供了便利。它具原创 2010-04-12 16:36:00 · 15867 阅读 · 122 评论 -
s3c2440实时时钟的应用
实时时钟(RTC)的主要功能是在系统掉电的情况下,利用后备电源使时钟继续运行,从而不会丢失时间信息。 s3c2440内部集成了RTC模块,而且用起来也十分简单。其内部的寄存器BCDSEC,BCDMIN,BCDHOUR,BCDDAY,BCDDATE,BCDMON和BCDYEAR分别存储了当前的秒,分,小时,星期,日,月和年,表示时间的数值都是BCD码。这些寄存器的内容可读可写,并且只有原创 2010-04-03 22:10:00 · 8387 阅读 · 38 评论 -
s3c2440的IIS应用——放音与录音
IIS(Inter-IC Sound)由飞利浦公司开发,是一种常用的音频设备接口,主要用于CD、MD、MP3等设备。 s3c2440一共有5个引脚用于IIS:IISDO、IISDI、IISSCLK、IISLRCK和CDCLK。前两个引脚用于数字音频信号的输出和输入,另外三个引脚都与音频信号的频率有关,可见要用好IIS,就要把信号频率设置正确。IISSCLK原创 2010-05-08 19:19:00 · 15072 阅读 · 168 评论