c51矩形波输出汇编语言,51单片机汇编语言编程:用定时器控制输出矩形波

80C51单片机的时钟频率为12MHz,利用定时器T1和P1.0输出矩形脉冲。

波形只画出了2段:一段为100us 另一段为50us。

要完全的、完整的、详细的编写此程序的过程!谢谢

------------------------

最佳答案:

用一个定时器定时50us,也可以达到题目要求。

在我的空间里面有类似的问题和解答。

ORG   0000H

SJMP  START

ORG   001BH          ;T1中断入口.

SJMP  T1_INT

START:

MOV  TMOD,  #20H     ;设置T1定时方式2

MOV  TH1,  #206      ;自动重新装入方式.

MOV  TL1,  #206      ;定时时间

MOV  IE,  #10001000B ;开放总中断和T1中断.

SETB TR1             ;启动T1

MOV  R2,  #3         ;周期是3×50us

SJMP $               ;等着吧.

T1_INT:

SETB P1.0            ;输出高.

DJNZ R2,  T1_END     ;R2-1

CLR  P1.0            ;减到0,就输出低电平.

MOV  R2,  #3

T1_END:

RETI                 ;中断返回.

END                          ;完.

------------------------

已知51单片机系统晶振频率为12MHz,请利用定时器1工作方式1,中断方式在P2.3输出频率为10Hz的方波。

写出定时设计过程及完整代码

问题补充:用汇编的   麻烦写一下

------------------------

最佳答案:

ORG   0000H

SJMP  START

ORG   001BH          ;T1中断入口.

SJMP  T1_INT

START:

MOV  TMOD, #10H     ;设置T1定时方式1

MOV  TH1, #(65536-50000) / 256   ;送入初始值.

MOV  TL1, #(65536-50000) MOD 256 ;定时

MOV  IE, #10001000B ;开放总中断和T1中断.

SETB TR1            ;启动T1

SJMP $              ;等着吧.

T1_INT:

MOV  TH1, #(65536-50000) / 256   ;重新送入初始值.

MOV  TL1, #(65536-50000) MOD 256 ;定时

CPL   P2.3          ;输出方波.

RETI                ;中断返回.

END                         ;完.

------------------------

===========================================

单片机编程

选用T0操作模式1用于定时,由P1.7输出周期为5ms方波的控制程序,设晶振fosc=6MHz。

------------------------

最佳答案:

ORG  0000H

MOV  TMOD, #01H    ;T0方式1定时.

SETB TR0            ;启动T0

LOOP:

MOV  TH0, #(65536-5000/2/2) / 256   ;送入初始值.

MOV  TL0, #(65536-5000/2/2) MOD 256 ;定时

JNB  TF0, $         ;等待定时完成.

CLR  TF0            ;清除标志.

CPL  P1.7           ;输出方波.

SJMP LOOP           ;无限循环.

END                         ;完.

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值