歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

S3C6410的PWM部分

在分析PWM驅動的實現之前,我們需要看看6410的芯片手冊中有關PWM章節,知道PWM的產生方式和控制方法,知道相關的一些寄存器才能知道設置那些寄存器,都應該賦什麼值,下面就是其中的一部分,主要是芯片手冊的內容,沒寫有關PWM的全部,主要是我們稍候的PWM驅動主要是針對蜂鳴器的使用,所以選取了相關的內容,感興趣的可以自己去閱讀芯片手冊。

這一章主要是講述S3C6410X RISC微處理器內部的PWM TIMER的功能和用法。

相關閱讀:S3C6410的PWM驅動實例

S3C6410X RISC微處理器有5個32位的定時器。這些定時器在ARM子系統中主要是用來產生內部中斷。另外,定時器0和定時器1包含了PWM功能,可以用來驅動一個外部I/O信號。定時器0和定時器1具有可選的死區發生器的功能,可以用來支持更多的設備。定時器2,3,4是內部定時器,沒有輸出引腳。

PWM支持如下特性:
     *五個32位的定時器;
     *在第一級為PCLK提供了兩個8位的時鐘預分頻器,在第二級為預分頻的時鐘和外部時鐘提供5個時鐘分頻器和倍頻器;
     *對每個PWM都有獨立的可編程時鐘選擇邏輯;
     *兩個獨立可編程占空比控制和極性的PWM通道;
     *支持自動加載模式和單脈沖模式;
     *支持外部輸入來啟動PWM;
     *兩個PWM輸出上都有死區發生器;
     *支持DMA傳輸;
     *可選脈沖或電平中斷;
    PWM支持兩種操作模式:
     *自動裝載模式
      基於可編程占空比和極性產生連續的PWM脈沖。
     *單脈沖模式
      基於可編程占空比和極性產生單個脈沖。
     提供了16個特殊功能寄存器來控制PWM的功能。PWM是可編程輸出的。我們可以通過APB來訪問PWM內部的16個特殊功能寄存器。

圖32-1 描述為獨立的PWM通道的時鐘產生流程。

Copyright © Linux教程網 All Rights Reserved