您现在的位置: 主页 > MCU > 单片机技术应用 > 51单片机汇编语言编程:用定时器控制输出矩形波 -
本文所属标签:
为本文创立个标签吧:

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

来源: 网络用户发布,如有版权联系网管删除 2018-09-06 

[导读]
80C51单片机的时钟频率为12MHz,利用定时器T1和P1.0输出矩形脉冲。波形只画出了2段:一段为100us 另一段为50us。要完全的、完整的、详细的编写此程序的过程!谢谢------------------------最佳答案:用

80C51单片机的时钟频率为12MHz,利用定时器T1和P1.0输出矩形脉冲。
波形只画出了2段:一段为100us 另一段为50us。
要完全的、完整的、详细的编写此程序的过程!谢谢
------------------------
最佳答案:
用一个定时器定时50us,也可以达到题目要求。
在我的空间里面有类似的问题和解答。

本文引用地址: http://www.21ic.com/app/mcu/201806/764347.htm

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 ;完.




              查看评论 回复



嵌入式交流网主页 > MCU > 单片机技术应用 > 51单片机汇编语言编程:用定时器控制输出矩形波 -
 

"51单片机汇编语言编程:用定时器控制输出矩形波 -"的相关文章

网站地图

围观()