嵌入式Linux开发——(六)系统时钟和定时器

一、系统时钟和定时器

1)S3C2440 / S3C2410时钟体系

    ①3种时钟:

        A、FCLK: 用于CPU

        B、HCLK: 用于AHB总线上设备,比如CPU核、存储控制器、中断控制器、LCD控 制器、DMA和USB主机模块等

        C、PCLK: 用于APB总线上的设备,比如WATCHDOG、IIS、IIC、PWM控制器、MMC 接口、ADC、UART、GPIO、RTC、                SPI

    ②两种PLL锁相环

        A、UPLL: 专用于USB设备

        B、MPLL: 用于设置FCLK、HCLK、PCLK

    ③Fin : 晶振频率 = 12MHz

    ④FCLK与Fin的关系计算公式:

        A、对于S3C2410:

               MPLL(FCLK) = (m*Fin) / (P*2^S)

              其中m=MDIV+8  P=PDIV+2  S=SDIV

        B、对于S3C2440:

              MPLL(FCLK) = (2*m*Fin) / (P*2^S)

             其中m=MDIV+8  P=PDIV+2  S=SDIV

2)PWM定时器

    ①S3C2410 / S3C2410有5个16位定时器,其中定时器0,1,2,3,有PWM(Pulse Width Modulation)

3)WATCHDOG定时器

    ①在正常的程序中,必须不断重新设置WTCNT第存器使得它不为0,这样可以保证系统不被重启,这称为“喂狗”,当程序崩溃时不能正常“喂狗”,计数器值达到0后系统将被重启,这样程序将重新运行。

二、通用异步收发器(UART)

1)UART(Universal Asynchronous Receiver Transmitter)

嵌入式Linux开发——(六)系统时钟和定时器_第1张图片

 

你可能感兴趣的:(嵌入式Linux)