winnie 发表于 2009-3-8 16:27:43

献上877A的CCP模块笔记一份!!!

与输入捕捉模式\比较器相关的寄存器
名称
符号
BANK列


位名称
D7
D6
D5
D4
D3
D2
D1
D0
中断控制
INTCON
0123
GIE
PEIE
TOIE
INTE
RBIE
TOIF
INTF
RBIF
第一外设中断标志
PIR1
0
PSPIF
ADIF
RCIF
TXIF
SSPIF
CCP1IF

TMR2IF
TMR1IF
CCP1IF=1时,捕捉下,表示出现捕捉功能;;;
比较下,表示比较匹配的条件出现
第二外设中断标志
PIR2
0
--------
-------
--------
EEIF
BCLIF
-------
--------
CCP2IF
第一外设中断使能
PIE1
1
PSPIE
ADIE
RCIE
TXIE
SSPIE
CCP1IE
TMR2IE
TMR1IE
第二外设中断使能
PIE2
1
----------
--------
-------
EEIE
BCLIE
-------
-----
CCP2IE
RC口方向
TRISC
1





TRISC2
1输入捕捉
0输出比较

TMR1低字节
TMR1L
0

16位TMR1计数累加寄存器低字节
TMR1高字节
TMR1H
0

16位TMR1计数累加寄存器高字节
TMR1控制
T1CON
0
------
--------
T1CKPS1
T1CKPS0
T1OSCEN
自带振荡使能
T1SYNC
外内时钟同步
TMR1CS
时钟选择位
TMR1ON
开关
TMR1的分频比选择
CCP1低字节
CCPR1L
0

16位CCP1计数累加寄存器低字节
存放捕捉到的TMR1的值,可读写!
CCP1高字节
CCPR1H
0

16位CCP1计数累加寄存器高字节
CCP1控制器
CCP1CON
0
-------
---------
CCPX
CCP1Y
CCP1M3
CCP1M2
CCP1M1
CCP1M0
脉宽寄存器的低2位,高8位在CCPR1L中
触发方式选择
CCP2低字节
CCPR2L
0

16位CCP2计数累加寄存器低字节
CCP2高字节
CCPR2H
0

16位CCP2计数累加寄存器高字节
CCP2控制器
CCP2CON
0
-------
--------
CCP2X
CCP2Y
CCP2M3
CCP2M2
CCP2M1
CCP2M0

CCP1M3
CCP1M2
CCP1M1
CCP1M0

0
0
0
0
禁止CCP1
0
1
0
0
捕捉模式,捕捉RC2脚送入的每个脉冲下降沿
0
1
0
1
捕捉模式,捕捉RC2脚送入的每个脉冲上降沿
0
1
1
0
捕捉模式,捕捉RC2脚送入的每4个脉冲下降沿
0
1
1
1
捕捉模式,捕捉RC2脚送入的每16个脉冲下降沿
1
0
0
0
比较模式,如果匹配,RC2输出高电平,CCP1IF置1
1
0
0
1
比较模式,如果匹配,RC2输出低电平,CCP1IF置1
1
0
1
0
比较模式,如果匹配,RC2电平不变,CCP1IF置1,产生软件中断
1
0
1
1
比较模式,如果匹配,RC2电平不变,CCP1IF置1触发特殊事件:CCP1将复位TMR1,CCP2将复位TMR1和启动ADC模块
1
1
X
X
脉宽调制PWM模式,低2位无用
页: [1]
查看完整版本: 献上877A的CCP模块笔记一份!!!