概述
要求使用定时/计数器1作定时用,定时1s;定时/计数器0作计数器用,被计数的外部脉冲从P3.4(T0)接入。
单片机将在1s内对脉冲计数并送四位数码管显示,最大计数显示值为0FFFFH。
求程序。
悬赏分:30 - 解决时间:2010-6-27 22:26
;===============================================
最佳答案:这是个简易频率计,程序如下:
;---------------------------------
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仿真如下图。
图片链接:http://hi.baidu.com/%D7%F6%B6%F8%C2%DB%B5%C0/album/item/902f7103f249d83149fb5162.html
图中信号的频率是5000Hz,显示的1388是16进制,这是题目中要求的形式。
;===============================================
提问者对于答案的评价:谢谢
原题网址:http://zhidao.baidu.com/question/162920224.html?fr=im2
相关网址:http://zhidao.baidu.com/question/165401023.html?fr=qrl&cid=1075&index=1
最后
以上就是大力小猫咪为你收集整理的基于51单片机的简易数字频率计的全部内容,希望文章能够帮你解决基于51单片机的简易数字频率计所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复