背景知识:
<1>
由于UART的波特率设置与时钟有关,此文设置FCLK:HCLK:PCLK=1 : 2 : 4,FCLK=200MHZ,遂先介绍时钟的设置。
通常认为上电复位后PLL是不稳定的。因此在软件重新配置PLLCON之前Fin代替MPLL直接供给Fclk。即便用户不希望复位之后改变PLLCON的数值,用户还是要用软件写入相同的数值到PLLCON寄存器中。
按照MDK4.22中启动代码的设置来说明以下设置。

MPLL,UPLL根据公式即可算出,这里的MPS最后算出的Fclk=200Mhz。PCLK也就是50Mhz了。
注意到HDIVN这里设置为0x01,不为0,那么Fclk != Hclk,要将fast mode转为异步模式,不然的话,Fclk相当于Pclk了。
由于MDK自带的启动代码没有这部分代码,所以自己加以修改了这部分。

FAST_TO_ASYN如果勾选的话,会选中
IF ASYN_SETUP <> 0
MRC p15, 0, r1, c1, c0, 0
ORR r1, r1, #0xc0000000

本文介绍了S3C2440微处理器中UART的FIFO模式操作,包括时钟设置、UART配置和中断处理。在FIFO模式下,每个串口有64字节的接收和发送FIFO,并详细阐述了接收和发送中断的触发条件。程序示例展示了如何配置UART0以实现16字节触发接收中断,以及回显输入字符的功能。
最低0.47元/天 解锁文章
2412

被折叠的 条评论
为什么被折叠?



