求助:51单片机用内部定时器T0在方式1下,从P1.0输出周期为1ms的方波脉冲,已知晶振为6MHz,用汇编语言编程

大家帮下忙,谢谢~... 大家帮下忙,谢谢~ 展开
 我来答
GUEL86
2012-05-17 · TA获得超过5856个赞
知道大有可为答主
回答量:5538
采纳率:86%
帮助的人:2733万
展开全部
ORG 0000H ; protues 仿真 通过
AJMP MAIN
ORG 000BH
MOV TH0, #LOW T0MS ; T0 中断
MOV TL0, #HIGH T0MS ; 重置 500 uS 初值
CPL P1.0 ; P1.0 取非
RETI ; 中断返回
T0MS EQU NOT 250 ; 定义 500 uS 晶振 6 MHz
MAIN: MOV TMOD, #01H
MOV IE, #82H ; 开 T0 中断
MOV TH0, #LOW T0MS ; 设置 500 uS 初值
MOV TL0, #HIGH T0MS
SETB TR0 ; 开定时器 0
AJMP $ ; 原地等待
END
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7bbac528f8
2012-05-17 · TA获得超过598个赞
知道小有建树答主
回答量:1706
采纳率:50%
帮助的人:952万
展开全部
这个百度不到吗,我记得书上就有,我这个应该是T1工作在方式2,你自己换下中断地址就好了
ORG 0000H
AJMP MAIN
ORG 001BH ;T1的中断矢量
CPL P1.0 ;中断服务:P1.0取非
RETI ;中断返回
MAIN: MOV TMOD,#01H
MOV TH0, #6
MOV TL0, #6
SETB ET1
SETB EA
SETB TR1
HERE: AJMP HERE ;原地等待中断
END
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
做而论道
高能答主

2012-05-26 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.2亿
展开全部
用方式2更好。
已经通过仿真试验的程序如下:
.
ORG 0000H
JMP S
ORG 000BH
CPL P1.0
RETI
S: MOV TMOD, #2
MOV TH0, #6
SETB TR0
MOV IE, #82H
SJMP $

END
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
噢噢_大肥
2012-05-18
知道答主
回答量:8
采纳率:0%
帮助的人:1.3万
展开全部
ORG 0000H
JMP MAIN
ORG 000BH
JMP TO_ISR
ORG 0040H
MAIN:ANL TMOD,#0F0H
ORL TMOD,#10H
MOV DPTR,#65286
MOV TL0,DPL
MOV TH0,DPH
SETB EA
SETB ET0
SETB TR0
SJMP $
TO-ISR:MOV DPTR,#65286 ; 这个是根据基数初值N=2的N次方-t*Fosc/12,算出而Focs=6MHZ
MOV TL0,DPL ;低位送到TL0
MOV TH0,DPH ;高位送到TH0,
CPL P1.0
END
其实这个用方式2或3比较好些...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式