你才是小个子 發表於 2022-4-5 16:33:00

汇编语言实现方波的输出

<p>汇编语言实现89C51单片机输出一个50HZ的方波,并由P1.1口输出的详解<br>
系统时钟频率为12MHZ<br>
单片机原理及接口技术书中的例程</p>
<pre><code class="language-assembly">;-----------------
;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
</code></pre><br><br>
来源:https://www.cnblogs.com/DDH-qiu/p/2022-4-5-1.html
頁: [1]
查看完整版本: 汇编语言实现方波的输出