background image
宏晶科技:www.MCU-Memory.com   Mobile:13922805190(姚永平)   Tel:0755-82948409    Fax: 0755-82944243
宏晶科技:专业单片机 / 存储器供应商   www.MCU-Memory.com   STC12C5410AD 系列 1T 8051 单片机中文指南
91
;---------------------------------------------------------------------
; 使用  定时器 0 的溢出,作为  P C A 模块的时钟输入源,利用 P C A 模块的多种功能
;实现了可调频率的 P W M 输出( 还可以改变占空比) ,同时利用 P C A 模块再实现了定时器功能
;使用 STC12C2052AD  系列单片机 PCA 模块的模块 0 的 PWM 功能 做 PWM 输出的示例程序
;使用 STC12C2052AD  系列单片机 PCA 模块的模块 1 的 16 位软定时器功能做定时器的示例程序
;使用 STC12C5410AD  系列单片机 PCA 模块的模块 0 的 PWM 功能 做 PWM 输出的示例程序
;使用 STC12C5410AD  系列单片机 PCA 模块的模块 1 的 16 位软定时器功能做定时器的示例程序
;晶振频率 Fosc = 18.432MHz,在 P1.5 输出脉冲宽度为 1  秒钟的方波
;------------------------------------------------------------------------------
;声明 STC12C2052AD 和 STC12C5410AD 系列 MCU  特殊功能寄存器地址
IPH      EQU   0B7H              ;中断优先级高位寄存器
EPCA_LVD EQU   IE.6              ;PCA 中断和 LVD(低压检测)中断共享的总中断控制位
CH       EQU   0F9H             ;PCA 计数器高 8 位。
CL       EQU   0E9H             ;PCA 计数器低 8 位。
;------------------------
CCON     EQU   0D8H             ;PCA 控制寄存器。
CCF0     EQU   CCON.0           ;PCA 模块 0 中断标志, 由硬件置位, 必须由软件清 0。
CCF1     EQU   CCON.1           ;PCA 模块 1 中断标志, 由硬件置位, 必须由软件清 0。
CCF2     EQU   CCON.2           ;PCA 模块 2 中断标志, 由硬件置位, 必须由软件清 0。
CCF3     EQU   CCON.3           ;PCA 模块 3 中断标志, 由硬件置位, 必须由软件清 0。
CCF4     EQU   CCON.4           ;PCA 模块 4 中断标志, 由硬件置位, 必须由软件清 0。
CCF5     EQU   CCON.5           ;PCA 模块 5 中断标志, 由硬件置位, 必须由软件清 0。
CR       EQU   CCON.6           ;1:允许 PCA 计数器计数, 必须由软件清 0。
CF       EQU   CCON.7            ;PCA 计数器溢出(CH,CL 由 FFFFH 变为 0000H)标志,
                                ;PCA 计数器溢出后由硬件置位,必须由软件清 0。
;------------------------
CMOD     EQU   0D9H             ;PCA 工作模式寄存器。
;CMOD.7     CIDL: idle 状态时 PCA  计数器是否继续计数, 0:  继续计数, 1:  停止计数。
;CMOD.2     CPS1: PCA 计数器计数脉冲源选择位  1。
;CMOD.1     CPS0: PCA 计数器计数脉冲源选择位  0。
;           CPS1   CPS0
;            0      0    外部晶体频率 /12。
;            0      1    外部晶体频率 /2。
;            1      0    Timer 0 溢出脉冲,
;                        Timer 0 还可通过 AUXR 寄存器设置成工作在 12T 或 1T 模式。
;            1      1    从 ECI/P3.4 脚输入的外部时钟。
;CMOD.0     ECF: PCA 计数器溢出中断允许位, 1-- 允许 CF(CCON.7)  产生中断。
    利用定时器 0 的溢出作为 PCA 模块的时钟输入源
      
  --- 利用 PCA 模块 0 实现了可调频率的 PWM 输出
         --- 利用 PCA 模块 1 重新实现了 16 位定时器