文号
t50092
阅读
15353
回复
9
收藏
8
新到51开发板,折腾了一个下午写了一个数码管显示频率计程序
2012/08/28
IP:广东
新到的51开发板,板子不错,就是数码管的驱动设计有点郁闷,真是的没事多加了两个锁存器在那里,为了减少几个I/O口的占用,但增加了两个锁存器的硬件成本,还要先查过锁存器的资料才知道怎么使用和根据逻辑关系编写程序,折腾了一个下午写了一个频率计程序,用汇编写的,6位数码管显示输入频率,每秒刷新一次数据,已经用准5000Hz的信号和示波器进行了校准调整(把定时中断的时间调整为最佳值),,能测试1Hz到40000Hz的频率信号,无小数点。10000Hz信号下误差小于1/1000。 下面图为测试179Hz和1000Hz的信号,同时给出P0口连接锁存器74HC573的原理图。1楼公布汇编源程序。

频率计.jpg
频率计2.jpg
数码管电路.jpg
+60
科创币
jrcsh
2012/08/28
高质量发帖
+10
科创币
科学人
2012/08/28
+50
科创币
hx
2012/08/28
+10
科创币
jesty
2012/08/29
有c语言代码么
来自:
软件综合
9
14年4个月前IP:未同步
445840
2楼
汇编真可爱~~~~
引用
评论
14年4个月前IP:未同步
445874
3楼
像“MOV A,35H”这种直接对地址操作的语句,LZ就不怕弄错一个查死人么?。比如开头写成“RAM0 EQU 35H”,后面再写"MOV A,RAM0"。初学者怎么都没养成好习惯。[s:275]
引用
评论
14年4个月前IP:未同步
445910
4楼
引用第3楼hefanghua于2012-08-29 08:05发表的 :
像“MOV A,35H”这种直接对地址操作的语句,LZ就不怕弄错一个查死人么?。比如开头写成“RAM0 EQU 35H”,后面再写"MOV A,RAM0"。初学者怎么都没养成好习惯。[s:275]  


额。。。。从来没弄错过的飘过~~习惯就好~习惯就好~~不用什么都按照规规矩矩的做~[s:274]
引用
评论
14年4个月前IP:未同步
445981
5楼
表示看不懂汇编......还是喜欢C51
引用
评论
14年3个月前IP:未同步
458805
6楼
能看懂汇编但是自从用了C以后觉得C上手快嘿嘿。这个能看懂就好了
引用
评论
14年2个月前IP:未同步
468673
7楼
学校学的汇编.自从学会c.感觉那些个老师都是锤子.
引用
评论
13年7个月前IP:未同步
533426
8楼
对端口类赋值我一直都是用逻辑指令并且2进制,从不用端口赋值的方式,还16进制![s:275]真的哥们儿,酱紫很危险!
引用
评论
13年7个月前IP:未同步
534340
9楼
我猜是秒闸门法测频吧,
引用
评论
笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的