单片机编程试题求解

来源:百度知道 编辑:UC知道 时间:2024/06/22 11:52:52
我这有两题单片机接口技术的编程题目,请好心人帮助解答,只答一个题也可以,只要能帮小弟的忙,本人都不胜感激。

1、使CT0以中断方法产生秒、分脉冲,要求从P1.0端产生秒脉冲,P1.1端产生分脉冲。
2、对一8031单片机应用系统,已知其时钟频率为 12MHz,需要将8031片内定时计数器设置成:
CT0:10ms 定时,申请中断,自启动。
CT1:对外部信号16位计数,不中断申请,(这里是逗号)自启动。
问:此时TMOD值应为多少?THO/TLO、TH1/Tl1 值应为多少?
(要求:问答题请作详细解答,编程格式正确,最好能够添加注释,谢谢!!)

这个已调试好的:

org 0h
ajmp start
org 0bh
ljmp inttime ;T0中断入口
org 30h
start:
MOV TMOD,#01H ;设置T0工作方式1
SETB EA ;开总中断
SETB ET0 ;开定时器0中断
MOV TL0,#0e0h ;设置定制器初值
MOV TH0,#0b2h ;设置定制器初值,定时20ms,晶振12m的情况下初值是b2e0h
SETB TR0 ;启动定时
MOV R0,#50 ;设1秒定时值50
SJMP $ ;等待中断
inttime:
MOV TL0,#0e0h ;重载初值
MOV TH0,#0b2h
JB P1.0,next ;P1.0为高电平跳转周期输出
SETB P1.7 ;P1.0=0,P1.7恒为高电平
SJMP END10 ;退出中断
NEXT: DJNZ R0,END10 ;未够1秒,退出中断
CPL P1.7 ;每秒翻转1次,周期=2秒
MOV R0,#50 ;定时值:50*20ms=1秒

END10: RETI ;中断返回

end

现在单片机都用C语言啦...
而且你这题目最好把TCON格式附上,不然谁记得住

这些问题翻下书中的定时器中断那块就OK了