打印

求助啊,帮我看看程序啊

[复制链接]
楼主: Sjj爱
手机看帖
扫描二维码
随时随地手机跟帖
21
Sjj爱|  楼主 | 2009-2-11 14:08 | 只看该作者 回帖奖励 |倒序浏览

TRACE资料6

小模块的TRACE资料删除,请看33楼和34楼的完整的TRACE资料和源程序资料附件

使用特权

评论回复
22
Sjj爱|  楼主 | 2009-2-11 14:15 | 只看该作者

TRACE6

??

使用特权

评论回复
23
Sjj爱|  楼主 | 2009-2-11 14:20 | 只看该作者

TRACE资料7

!!!!!

使用特权

评论回复
24
Sjj爱|  楼主 | 2009-2-11 14:22 | 只看该作者

TRACE资料8

!!!!!!

使用特权

评论回复
25
Sjj爱|  楼主 | 2009-2-11 14:23 | 只看该作者

TRACE资料9

!!!!!!

使用特权

评论回复
26
Sjj爱|  楼主 | 2009-2-11 14:25 | 只看该作者

TRACE资料10

!!!!!

使用特权

评论回复
27
Sjj爱|  楼主 | 2009-2-11 14:27 | 只看该作者

TRACE资料11

!!!!!!

使用特权

评论回复
28
Sjj爱|  楼主 | 2009-2-11 14:28 | 只看该作者

TRACE资料12

!!!!

使用特权

评论回复
29
Sjj爱|  楼主 | 2009-2-11 15:58 | 只看该作者

为什么进入中断的前一条指令执行2次呢

为什么进入中断的前一条指令执行2次呢

8189 05DB 9DDA 1 1 1 1 1 1 1 1 BC $-1
8190 05DB 9DDA 1 1 1 1 1 1 1 1 BC $-1
8191 0002 E005 1 1 1 1 1 1 1 1 JMP TIMER_IN



使用特权

评论回复
30
warm_ice| | 2009-2-11 17:06 | 只看该作者

这样

您这样上传看起来就比较辛苦了.
您把原程序做为一个附件上传上来,TRACE资料也保存成文件做为附件上传上来,我下载下来分析一下.看能否帮到您.

使用特权

评论回复
31
Sjj爱|  楼主 | 2009-2-12 08:22 | 只看该作者

回31L

我程序问题就是烧IC后乱跑啊

使用特权

评论回复
32
Sjj爱|  楼主 | 2009-2-12 09:05 | 只看该作者

30L所要资料

使用特权

评论回复
33
Sjj爱|  楼主 | 2009-2-12 09:06 | 只看该作者

30L所要资料

使用特权

评论回复
34
warm_ice| | 2009-2-12 16:24 | 只看该作者

资料已经下来了,研究一下

你的资料我已经下载下来了,我会研究一下,看能否帮到您.

先回复你的29楼的问题,这2条其中只有第1条执行了,第2条是在等待进入中断服务程序,只是这样显示,没有执行程序.

使用特权

评论回复
35
Sjj爱|  楼主 | 2009-2-12 17:06 | 只看该作者

谢谢了啊

你看我那TRACE资料,有一个问题就是
有时那程序会漏跑一条指令,

都不知道问题出现在哪

使用特权

评论回复
36
Sjj爱|  楼主 | 2009-2-12 17:13 | 只看该作者

回35L

请看下面:
0095 05ED 9DEB 1 1 1 1 1 1 1 1 BC $-2
0096 05EB FFFF 1 1 1 1 1 1 1 1 NOP
0097 05EC 58B9 1 1 1 1 1 1 1 1 SBIM DELAY_0,01
0098 05ED 9DEB 1 1 1 1 1 1 1 1 BC $-2
0099 05EC 58B9 1 1 1 1 1 1 1 1 SBIM DELAY_0,01
0100 05ED 9DEB 1 1 1 1 1 1 1 1 BC $-2
0101 05EC 58B9 1 1 1 1 1 1 1 1 SBIM DELAY_0,01
0102 05ED 9DEB 1 1 1 1 1 1 1 1 BC $-2
0103 05EB FFFF 1 1 1 1 1 1 1 1 NOP

0098和0100执行后都应该执行一条NOP的,但是在这两地方都没有跑NOP
而是直接跳过去执行下面的 SBIM DELAY_0,01
  

使用特权

评论回复
37
Sjj爱|  楼主 | 2009-2-13 16:31 | 只看该作者

真不好意思

还真不好意思
 warm_ice 肯定好忙 我又还要他帮我看程序 分析问题
我实在找不到问题啊
今天我又重新写了一次,还没敢烧IC
不知道  warm_ice 看我程序后有什么见解
不知道  maoyuankun123 有看我程序没,发现什么问题没?

使用特权

评论回复
38
Sjj爱|  楼主 | 2009-2-13 17:46 | 只看该作者

疑问?

看下面一段程序:

0111 05ED 9DEB 1 1 1 1 1 1 1 1 BC $-2
0112 05EB FFFF 1 1 1 1 1 1 1 1 NOP
0113 05EB FFFF 1 1 1 1 1 1 1 1 NOP
0114 0002 E005 1 1 1 1 1 1 1 1 JMP TIMER_IN
0115 0005 3C31 1 1 1 1 1 1 1 1 STA ACC_B,00H
0116 0006 7801 1 1 1 1 1 1 1 1 LDI IRQX,0000B
0117 0007 7800 1 1 1 1 1 1 1 1 LDI IEX,0000B
0118 0008 3808 1 1 1 1 1 1 1 1 LDA PORTA,00H
0119 0009 3C4A 1 1 1 1 1 1 1 1 STA PA_BACK,00H
0120 000A 6BCA 1 1 1 1 1 1 1 1 ORIM PA_BACK,0111B
0121 000B 3C08 1 1 1 1 1 1 1 1 STA PORTA,00H
0122 000C 3808 1 1 1 1 1 1 1 1 LDA PORTA,00H
0123 000D A01E 1 1 1 1 1 1 1 1 BA0 DOWN_KEY  ;判断加键是否按下,没有去判断减键
0124 000E 7936 1 1 1 1 1 1 1 1 LDI NOW_KEY,2
0125 000F 1835 1 1 1 1 1 1 1 1 SUB NEX_KEY,00H  ;去抖
0126 0010 801B 1 1 1 1 1 1 1 1 BNZ SCAN_KEY_1
0127 0011 3834 1 1 1 1 1 1 1 1 LDA FL_KEY,00H  ;判断是否响应,响应过则跳出去
0128 0012 A046 1 1 1 1 1 1 1 1 BA0 OVER_1
0129 0046 58C9 1 1 1 1 1 1 1 1 SBIM OPEN_ON,01
0130 0047 804A 1 1 1 1 1 1 1 1 BNZ TIMER_IN_END
0131 004A 3808 1 1 1 1 1 1 1 1 LDA PORTA,00H
0132 004B 3C4A 1 1 1 1 1 1 1 1 STA PA_BACK,00H
0133 004C 6BCA 1 1 1 1 1 1 1 1 ORIM PA_BACK,0111B
0134 004D 3C08 1 1 1 1 1 1 1 1 STA PORTA,00H
0135 004E 7A00 1 1 1 1 1 1 1 1 LDI IEX,0100B
0136 004F 3831 1 1 1 1 1 1 1 1 LDA ACC_B,00H
0137 0050 D400 1 1 1 1 1 1 1 1 RTNI
0138 05EB FFFF 1 1 1 1 1 1 1 1 NOP

0112和0113和0138这三条就是一条
0112是进入中断前执行的一条,0113你们说是等待进入中断,只显示不执行
但为什么出来还有0138呢,应该出中断后直接执行 SBIM DELAY_0,01而不是0138的NOP指令
这是为什么呢

使用特权

评论回复
39
warm_ice| | 2009-2-16 13:58 | 只看该作者

回楼上的朋友

真不好意思,最近事比较多,经常在外面,还没来得及看您的程序.

先回复您39楼的疑问,我又仔细看了一下,不好意思,是我之前说的不对,应该是在进入中断前等待2个指令周期,这样,0112和0113这2个NOP实际上在等待,0138这个才是实际执行的NOP.

另外,如果可能,建议您换一个仿真器,仿真板试一试,如果它们出了问题,也有可能导致提示堆栈溢出的提示.

使用特权

评论回复
40
Sjj爱|  楼主 | 2009-2-16 17:46 | 只看该作者

回楼上

不知道 warm_ice 对37楼的问题怎么看

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则