这是个简易频率计,程序如下:
---------------------------------
ORG 0000H
JMP START
ORG 000BH
JMP T0_INT
---------------------------------
START:
MOV TMOD, #51H /*01010001 T1计数,T0定时*/
MOV TH0, #HIGH(65536 - 50000) 50ms@12MHz
MOV TL0, #LOW (65536 - 50000)
MOV TH1, #0
MOV TL1, #0
SETB TR0
SETB TR1
SETB ET0
SETB EA
MOV R7, #20
SJMP $
---------------------------------
T0_INT: 50ms执行一次
MOV TL0, #LOW (65536 - 50000) 重新写入初始值
MOV TH0, #HIGH(65536 - 50000) 50ms@12MHz
DJNZ R7, T0_END
MOV R7, #20
MOV P1, TL1
MOV P2, TH1
MOV TL1, #0
MOV TH1, #0
T0_END:
RETI
---------------------------------
END
用PROTEUS仿真如下图。
图中信号的频率是5000Hz,显示的是16进制,这是题目中要求的形式。
,显示的是每分钟的脉冲个数。----
需要等待一分钟后,显示出来吗?
对1Hz的脉冲计数,显示的数字,不就是 60 吗?
定时5MS,是什么意思?
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)