📄 pcafreout.asm
字号:
//-----------------------------------------------------------------------------
// 版权归新华龙电子公司所有
//-----------------------------------------------------------------------------
//
//文件名: PCAfreout.ASM
//
//编写人: LC
//
//编写时间:2005/03/10
//
//目标器件: C8051F02x
//
//编译工具: Silicon Laboratories IDE
//
//程序说明: 此程序实现PCA频率输出方式,在P0.0口用示波器测量,有波形频率的变化。
$include (c8051f020.inc) // SFR declarations
ORG 0
AJMP main
ORG 4BH
AJMP PCA_ISR
ORG 0100H
//------------------------------------------------------------------------------------
// MAIN Routine
//------------------------------------------------------------------------------------
main:
;关看门狗
MOV WDTCN,#0deH
MOV WDTCN,#0adH
LCALL PORT_Init ;初始化IO口
LCALL PCA_Init ;PCA初始化成频率输出方式
SETB EA ;开总中断
SJMP $
RET
;初始化I/O口
PORT_Init:
MOV XBR0,#08H ;CEX0-->P0.0
MOV XBR2,#40H ;使能交叉开关和弱上拉
ORL P1MDOUT,#40H ;使能P1.6脚推挽输出
RET
;初始化PCA
PCA_Init:
MOV EIE1,#08H ;使能PCA0中断
;MOV PCA0MD,#01H ;PCA定时器/计数器溢出中断允许
MOV PCA0L,#00H
MOV PCA0H,#00H
MOV PCA0CPM0,#4fH ;PCA0的频率输出方式,当CCF0=1时,允许辅捉/比较标志的中断申请
MOV PCA0CPL0,#00H
MOV PCA0CPH0,#20H
MOV PCA0CN,#40H ;允许PCA定时器/计数器
RET
;PCA中断子程序
PCA_ISR:
;CLR CF
CLR CCF0 ;清匹配中断标志
MOV A,PCA0CPH0
ADD A,#10H ;改变波形的频率
MOV PCA0CPH0,A
RETI
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -