⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wpca1pwm16.asm

📁 C8051F系列单片机外围电路功能模块程序
💻 ASM
字号:
;参考程序A:WPCA1pwm16.ASM程序实现PCA模块1的16位PWM输出,输出脚CEX1配置在P0.1脚。输出方波占空比为1/2
$include (c8051f020.inc)                    // SFR declarations
        ORG	0
	AJMP	main
	ORG	4BH
	AJMP	PCA_ISR
	ORG	0100H
main:   MOV	WDTCN,#0deH    ;关看门
	MOV	WDTCN,#0adH
	LCALL	PORT_Init	;初始化IO口
	LCALL	PCA_Init	;PCA初始化成16位脉宽调置方式
	SETB	EA		;开总中断
	AJMP	$
PORT_Init:;初始化I/O口
	MOV	XBR0,#20H    ;CEX0-->P0.0,CEX0-->P0.1,CEX0-->P0.2,CEX0-->P0.3
	MOV	XBR2,#40H    ;使能交叉开关和弱上拉
	RET
PCA_Init:;初始化PCA
  MOV	EIE1,#08H        ;允许PCA0中断
  MOV   OSCICN  ,#017H   ;使用内部振荡器,频率为16MHZ
	MOV PCA0MD ,#09;	     PCA方式选择:使用系统时钟,允许	CCF1申请中断
	MOV	PCA0L,#00H      ;设置定时器/计数器初值:0000H
	MOV	PCA0H,#00H
	MOV	PCA0CPM1,#0cbH  ;PCA模块1为16位PWM方式,当CCF1=1时,允许中断申请
	MOV	PCA0CPL1,#00H	   ;设置捕捉/比较寄存器初值:8000h 
	MOV	PCA0CPH1,#80H
	MOV	PCA0CN,#42H	;允许PCA模块1定时器/计数器, CCF1置1时产生中断.
	RET
PCA_ISR:;PCA中断子程序
	CLR		CF		;清溢出中断标志
	CLR		CCF1		;清匹配中断标志
	RET
	END  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -