查看: 32|回覆: 0

汇编语言实现方波的输出

[複製鏈接]

5

主題

0

回帖

0

積分

热心网友

金币
0
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2011-2-2
發表於 2022-4-5 16:33:00 | 顯示全部樓層 |閲讀模式

汇编语言实现89C51单片机输出一个50HZ的方波,并由P1.1口输出的详解
系统时钟频率为12MHZ
单片机原理及接口技术书中的例程

;-----------------
;Title:定时器T1产生一个50HZ的方波由P1.1输出
;Authors:DDH-qiu
;Date:2022-4-5
;Abstract:fosc=12MHZ,利用定时器产生方波
;-----------------
ORG 0100H        ;伪指令下一条指令的起始地址
	MOV TMOD,#10H  ;TMOD寄存器(0001 0000)设置定时器方式为定时器1,GATE门控位关闭
		       ;选择定时模式(定时模式低电平有效)选择定时器工作模式1
	SETB TR1       ;将TCON中TR1(定时器启动控制)置1,启动定时器
	LOOP:	       ;LOOP标号
	MOV TH1,#0D8H  ;定时器高8位写入D8H
	MOV TL1,#0F0H  ;定时器低8位写入F0H,定时器时间计算公式
	JNB TF1,$      ;JNB(判位变量转移指令,当TF1(TCON中)为0时跳转,为1时顺序执行)
		       ;等待定时器1的溢出中断
		CLR TF1	    ;清除TF1的定时器溢出中断标志
		CPL P1.1    ;CPL位取反命令,将P1.1取反
		SJMP LOOP   ;SJMP相对跳转,跳转到LOOP标号处
		END


来源:https://www.cnblogs.com/DDH-qiu/p/2022-4-5-1.html
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部