;完整源码下载:http://www.51hei.com/f/htpwm.rar
#INCLUDE HT66F50.INC
ORG 00H
MOV A,08H
MOV CP0C,A ;设置管脚不为比较器脚
MOV CP1C,A ;设置管脚不为比较器脚
CLR ACERL ;设置管家部位AD脚
MOV A,00010000B
MOV TMPC0,A ;T1BCP1置1使能TP1B_0
CLR TM1C0 ;fINT=fSYS/4
MOV A,10101001B ;设置为PWM模式PWM输出高有效同相T1CCLR=1
MOV TM1C1,A ;CCRA控制TP1B PWM 周期,CCRB 控制TP1B PWM 占空比
MOV A,10101000B ;置为PWM模式PWM输出高有效同相边沿对齐
MOV TM1C2,A ;
MOV A,LOW 1024-1
MOV TM1AL,A ;设置TP1B PWM 周期 CCRA=1024uS
MOV A,HIGH 1024-1
MOV TM1AH,A ;设置PC.0为输出
CLR PCC.0
CLR PC.0 ;pc.0输出低电平
MOV A,5
SET T1ON ;PWM开始工作
MOV A,0FFH ;设置占空比初始值
MOV [80H],A
MOV A,3 ;
MOV [81H],A
a2:
CALL M001 ;延时
SZ [80H] ;判断占空比低位是否为0
JMP $+2
JMP A3
DEC [80H] ;否低位减1
JMP A5
A3:
SZ [81H] ;是则判断高位是否为0
JMP A4
MOV A,0FFH ;是低位存0FFH
MOV [80H],A ;
MOV A,3 ;高位存3
MOV [81H],A ;不能大于周期
JMP A2
A4:
DEC [81H] ;否则高位减1
MOV A,0FFH ;
MOV [80H],A ;低位存0FFH
A5:
mov a,[80H] ;将占空比的数存到CCRB中
mov TM1BL,A ;
MOV A,[81H] ;
MOV TM1BH,A ;
jmp A2
M001: MOV A,2
MOV [85H],A
M002: MOV A,20
MOV [86H],A
M003: MOV A,250
MOV [87H],A
M004: SDZ [87H]
JMP M004
SDZ [86H]
JMP M003
SDZ [85H]
JMP M002
RET
end
上一篇:合泰单片机接收红外遥控器程序(NEC码)
下一篇:合泰单片机笔段式LCD显示程序+电路图
推荐阅读最新更新时间:2024-03-16 14:02
- 热门资源推荐
- 热门放大器推荐
设计资源 培训 开发板 精华推荐
- 有奖活动|TE无线连接,释放物联网无限潜能!
- 有奖直播:新科技、新课堂、新学期~ ADI软件定义无线电ADALM-Pluto入门实战
- Sitara™ AM335x ARM® Cortex™-A8 团购
- ST SensorTile物联网开发套件来啦!免费申请抢鲜体验等你来~
- 有奖直播|ST资料中心与通讯网路电源管理解决方案
- 有奖直播|基于TI最新低功耗60GHz毫米波雷达传感器的工业应用
- 已结束|Maxim IO-Link通信协议设计方案详解,5大优势助你轻松联网!
- jameswangsynnex带你进入智能电网世界
- 【EE团】TI M4开发板超低价尝鲜体验,分享心得赢百元返现!
- 最后一天!Beetle ESP32-C3免费测评,赶紧上车