S3C2440A通用异步接收器和发射机(UART)提供了三个独立的异步串行输入/输出(SIO)端口,每个端口都可以在中断或基于dma的模式下运行。换句话说,UART可以生成一个中断或DMA请求来在CPU和UART之间传输数据。UART可以使用系统时钟,支持波特率高达921.6 Kbps。如果外部设备提供UEXTCLK,那么UART可以以更高的速度运行。每个UART通道包含两个64字节的FIFO,用于接收器和发送器。
S3C2440A UART包括可编程的波特率、红外(IR)传输/接收、一个或两个停止位、5位、6位、7位或8位数据宽度和奇偶校验。
每个UART包含一个波特率生成器、发射机、接收机和一个控制单元,如图1所示。波特率发生器可以通过PCLK、fclk/n或UEXTCLK(外部输入时钟)来确定。发射机和接收机包含64字节的FIFO和数据移位器。数据首先被写入到FIFO,然后在传输之前复制到移位器,最后,数据被传输数据pin(TxDn)移出。与此同时,接收到的数据从接收数据pin(RxDn)转移,然后从shifter复制到FIFO。
图 1 UART框图
编程一般顺序(对于协议类的接口,大体相同),这里补充一点题外话,对于协议类接口编程,牢牢记住两点:
(1)看通信双方的协议是什么(一般是弄清楚数据帧的格式)
(2)查看时序要求(多大的速率,对于串口就是指波特率了)
有了这两点,那我们的编程顺序便有了一个依据:
(1)首先设置相关的引脚。
(2)配置时钟,设置波特率
(3)设置数据帧的格式
(4)编写相关操作函数
前面三点就是初始化串口需要做的事,后面操作函数部分就看自己的发挥了!
上一篇:对于S3C2440A芯片的认知和使用理论再学习
下一篇:S3C2440串口学习
设计资源 培训 开发板 精华推荐
- CRD-060DD12P,60W辅助电源演示板
- LTC3838EUHF-1 6.5V 至 34V 输入、5V/12A 和 3.3V/12A 双路输出、300kHz、RSENSE、5V 输出连接至 EXTVCC、降压转换器的典型应用电路
- LTC3736EUF 演示板,2 相双路同步降压转换器,Vin = 2.7V - 8V,Vout1 = 2.5V(5A,5V),Vout2 = 1.8V(5A,5V)
- AD8034AR高速单位增益峰值检测器的典型应用电路
- USBC_TTL
- ADP8860DBCB-EVALZ,ADP8860并行背光驱动器和ALS评估板的子板-WLCSP版本
- STEVAL-1PS01EJR,基于 ST1PS01EJR 400mA 纳米静态同步降压转换器的评估板
- 【ART-Pi】TMC5160步进电机驱动器
- 使用 Analog Devices 的 LTC1708-PG 的参考设计
- 使用 ON Semiconductor 的 STK416-090-E 的参考设计