在分析ARM-Linux s3c2440中UART的时有必要先了解 s3c2440A中串口的硬件知识。也就是本文----
硬件篇:
S3c2440A串口提供三个独立的异步串行通信I/O端口(asynchronousserial I/O ports)。每一个串口均可以以普通中断方式或者DMA方式进行数据收发,采用系统时钟时,最大速率为115.2kbps.如果采用外部时钟(UEXTCLK),UART速度可以更快。每个串口包含有2个64-byte的FIFO缓存区用来发送或传输数据。
S3c2440A 串口具有可编程波特率,红外(IR)收发数据,1或者2 位的停止位(stop),5/6/7/8 位数据宽度和奇偶校验功能(parity checking)。
每个串口由波特率产生单元,发送单元,接收单元和控制单元组成。如下图所示,波特产生单元的时钟可以是PCLK,FCLK/n,或者UEXTCLK(外部输入的时钟)。发送和接收单元包含有一个64-byte的FIFOs(先入先出队列)和数据移位器。发送数据时,数据被写进FIFO然后拷贝到数据移位器后发送数据,最后数据被一位一位由数据发送脚(TxDn)送出。类似的,数据在接收时,数据一位一位的由数据接收脚(RxDn)接收,然后拷贝到FIFO缓存区。
寄存器:
串口的控制寄存器有三个:UCON0 ~ UCON1分别对应于每一个串口,用于设置UART的工作模式,波特率,中断类型等。
状态寄存器:UTRSTAT0 ~UTRSTAT2, 用于串口工作时,接收/发送的状态指示
FIFO控制寄存器: UFCON0 ~ UFCON2, 用于对FIFO的设置。
FIFO状态寄存器: UFSTAT0 ~ UFSTAT2, 用于表示FIFO缓存中的状态
对于Arm-linux s3c2440串口的使用,主要是对以上寄存器的操作。
下一篇将结合源码分析arm-linux s3c2440串口驱动的实现(软件篇)
关键字:ARM Linux s3c2440 UART
引用地址:
ARM-Linux s3c2440 之UART分析(一)
推荐阅读最新更新时间:2024-03-16 14:56
51单片机入门 - UART串口
对于单片机来说,通信则与传感器、存储芯片、外围控制芯片等技术紧密结合,成为整个单片机系统的“神经中枢”。 1、初步认识 一位一位的发送出去的,要发送 8 次才能发送完一个字节。 STC89C52有两个引脚是专门用来做 UART串行通信的,一个是 P3.0一个是 P3.1,它们还分别有另外的名字叫做 RXD和TXD,由它们组成的通信接口就叫做串行接口,简称串口。 波特率:发送二进制数据位的速率,习惯上用 baud 表示;即我们发送一位二进制数据的持续时间=1/baud。 通信过程:在UART 通信的时候,一个字节是 8 位,规定当没有通信信号发生时,通信线路保持高电平,当要发送数据之前,先发一位 0
[单片机]
软银拟收购ARM 英特尔面临更大竞争压力
与英国公司ARM Holdings PLC (ARMH)之间的竞争总会给英特尔公司(Intel Co. ,INTC)带来特殊麻烦,英特尔已多次尝试突破ARM对智能手机芯片技术的封锁,但均以失败告终。这项任务可能很快会变得更加艰巨。 日本软银集团股份有限公司(SoftBank Group Corp. ,9984.TO)周一宣布,计划以320亿美元收购ARM,并承诺对ARM进行更多投资,帮助其在五年内将员工数量增加一倍。ARM获得的额外资金也将被用于收购和内部技术发展,以增强该芯片设计公司在新市场的影响力,比如数据中心设备这个英特尔占据优势的市场。 Linley Group分析师Linley Gwenn称,对于英特尔
[半导体设计/制造]
ARM芯片选择的一般原则
1.1 ARM芯核 如果希望使用WinCE或Linux等操作系统以减少软件开发时间,就需要选择ARM720T以上带有MMU(memory management unit)功能的ARM芯片,ARM720T、StrongARM、ARM920T、ARM922T、ARM946T都带有MMU功能。而 ARM7TDMI没有MMU,不支持Windows CE和大部分的Linux, 但目前有uCLinux等少数几种Linux不需要MMU的支持。 1.2 系统时钟控制器 系统时钟决定了ARM芯片的处理速度。ARM7的处理速度为0.9MIPS/MHz,常见的ARM7芯片系统主时钟为20MHz- 133MHz,ARM9的处理速度为1.1MI
[单片机]
新建的UART0通讯波特率不一致的问题(波特率降低4倍)
如果用Keil ARM的话自动生成的Startup.s中默认VPBDIV=0X00000000,这就导致 Fpclk 为4分频。导致波特率下降四倍。以下为keil中的Startup.s中默认设定的值。;// e VPBDIV Setup ;// i Peripheral Bus Clock Rate ;// o1.0..1 VPBDIV: VPB Clock ;// 0= VPB Clock = CPU Clock / 4 ;// 1= VPB Clock = CPU Clock ;// 2= VPB Clock = CPU Clock / 2 ;// o1.4..5 XCLKDI
[单片机]
详解bootloader的执行流程与ARM Linux启动过程分析
ARM Linux启动过程分析是本文要介绍的内容,嵌入式 Linux 的可移植性使得我们可以在各种电子产品上看到它的身影。对于不同体系结构的处理器来说Linux的启动过程也有所不同。 本文以S3C2410 ARM处理器为例,详细分析了系统上电后 bootloader的执行流程及 ARM Linux的启动过程。 1、引 言 Linux 最初是由瑞典赫尔辛基大学的学生 Linus Torvalds在1991 年开发出来的,之后在 GNU的支持下,Linux 获得了巨大的发展。虽然 Linux 在桌面 PC 机上的普及程度远不及微软的 Windows 操作系统,但它的发展速度之快、用户数量的日益增多,也是微软所不能轻视的。而近些
[单片机]
基于ARM S3C44B0X 的LED显示屏设计
为了简化L ED 显示屏 的 驱动 电路,节约单片机的端口资源,对常见的L ED 显示屏驱动电路进行了改进,全部采用通用的串入并出移位寄存器作为选通驱动,系统全部采用串行数据控制,形成了一种只需4 根信号线的L ED 显示屏驱动电路解决方案,仅需占用单片机的4个I/ O 端口发送串行数据就可以实现正常的 显示 功能,文中给出相应的程序代码。 1 、引言 L ED 显示屏应用十分广泛,是信息传播的有效工具。在某井下矿采设备监测系统中选用了 ARM S3C44B0X 32 位单片机作为CPU ,根据应用要求,监测系统的显示部分使用16 行的单色L ED 显示屏实时显示监测数据。由于系统 外设 较多,端口资源十分
[电源管理]
基于ARM的PWM模块的超声波检测系统的设计
近年来以微电子学和计算机技术为基础的信息技术飞速发展,超声无损检测仪器也得到了前所未有的发展动力,为了提高检测的可靠性和提高检测效率,研制数字化、智能化、自动化、图像化的超声仪是当今无损检测领域发展的一个重要趋势。而传统的超声波检测仪存在准确性差、精度低、体积大、功耗大、人机界面不友好等问题。而超声波发射与控制电路正是在一种基于ARM的超声波检测系统的基础上,以ARM微控制器为核心,使用C语言编程,方便地实现了发射频率与激励电压脉冲幅度的调节。 1 超声波检测系统的总体设计结构 基于ARM超声波检测系统的总体结构框图,如图1所示。该系统主要由3部分组成:超声波前端发射接收电路、DSP和ARM处理器。
[单片机]