智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 4564|回复: 6
打印 上一主题 下一主题

延时程序 求解释

[复制链接]

2

主题

8

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
296
QQ
威望
241
贡献
47
兑换币
4
注册时间
2010-10-21
在线时间
4 小时
跳转到指定楼层
1#
发表于 2010-11-5 16:14:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
DELAY:
         PSHA
         PSHX
         LDA        #200
         LDA        #250

DELAY_1
         NOP
         NOP
         DBNZX      DELAY_1

         LDX         #250
         DBNZA      DELAY_1

         PULX
         PULA

         RTS


       请哪位高人帮忙看一下,这个延时程序的周期是多少个?算法是如何的?拜谢。。。

2

主题

8

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
296
QQ
威望
241
贡献
47
兑换币
4
注册时间
2010-10-21
在线时间
4 小时
2#
 楼主| 发表于 2010-11-5 17:03:52 | 只看该作者
抱歉  上面的帖子打错了  第5行为LDX
回复 支持 反对

使用道具 举报

2

主题

10

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
224
威望
182
贡献
42
兑换币
0
注册时间
2010-9-23
在线时间
0 小时
3#
发表于 2011-1-27 13:20:32 | 只看该作者
呵呵   手边上没有书  查不到每个指令的周期~~~  这是一个简单的程序延时  你可以查到每个指令的周期后按照这个程序的嵌套方法直接计算~~~  这是一种入门级的延时方法~~~呵呵
回复 支持 反对

使用道具 举报

2

主题

10

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
224
威望
182
贡献
42
兑换币
0
注册时间
2010-9-23
在线时间
0 小时
4#
发表于 2011-1-27 13:32:26 | 只看该作者
一开始时 A X进栈 分别给A X 十进制 200 250 然后两个空操作  减X不为0就跳转DELAY_1
一共跳250次 然后再给X250 减A 不为0就跳转DELAY_1  跳200次 最后 A X出栈 子程序返回

NOP 我记得是一个周期 DBNZ 不记得了 好像是3个吧 你最好查一下  假如是3个来计算那总周期就是
(((2+30)*250)+3)*200 然后还要加上前后进出栈的周期就可以了
回复 支持 反对

使用道具 举报

4

主题

61

帖子

0

精华

高级会员

Rank: 4

积分
609
威望
438
贡献
93
兑换币
0
注册时间
2011-3-23
在线时间
39 小时
5#
发表于 2012-3-24 23:53:49 | 只看该作者
chenxudong16 发表于 2011-1-27 13:32
一开始时 A X进栈 分别给A X 十进制 200 250 然后两个空操作  减X不为0就跳转DELAY_1
一共跳250次 然后再 ...

是汇编么,都看不懂啊
回复 支持 反对

使用道具 举报

0

主题

16

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
282
威望
148
贡献
108
兑换币
98
注册时间
2013-7-18
在线时间
13 小时
毕业学校
xioauasbf
6#
发表于 2013-7-19 18:09:48 | 只看该作者
有一些像但是汇编的进栈指令是PUSH出栈指令是POP估计是另外一种机械语言。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-6-17 08:43 , Processed in 0.043991 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表