发新帖我要提问
12
返回列表
打印

毕业设计中代码,一中断问题

[复制链接]
楼主: 你猜我是虎
手机看帖
扫描二维码
随时随地手机跟帖
21
你猜我是虎|  楼主 | 2014-11-11 16:26 | 只看该作者 回帖奖励 |倒序浏览
ningling_21 发表于 2014-11-11 16:22
搞程序时从来不能说:应该或不应该;只有是或不是

很是不好意思。其实我只是想到有个自然的优先级,所以没有自己刻意再去设置优先级

使用特权

评论回复
22
陈杰1993| | 2014-11-11 17:00 | 只看该作者
你猜我是虎 发表于 2014-11-11 15:38
用的外部中断0对外部脉冲进行计数

优先级需要定义一下的

使用特权

评论回复
23
你猜我是虎|  楼主 | 2014-11-11 18:01 | 只看该作者
陈杰1993 发表于 2014-11-11 17:00
优先级需要定义一下的

那个不是有自然优先级嘛?为什么还要重新定义一次呢?

使用特权

评论回复
24
叶伤| | 2014-11-11 18:34 | 只看该作者
你的main没有给出,楼上的回答,不忍直视

使用特权

评论回复
25
叶伤| | 2014-11-11 19:06 | 只看该作者
  
void INT_0() interrupt 0
{
  EX0=0;
  n++;

LCD_Write_Date(0x30+i);
                   n=n/10;
                   j--;


原谅我看走了眼。

使用特权

评论回复
26
你猜我是虎|  楼主 | 2014-11-11 19:31 | 只看该作者
叶伤 发表于 2014-11-11 19:06
void INT_0() interrupt 0
{
  EX0=0;

这也是一种解决的方法,但是我还是比较想知道为什么那个全局变量没有达到预期的效果

使用特权

评论回复
27
叶伤| | 2014-11-11 20:58 | 只看该作者
你猜我是虎 发表于 2014-11-11 19:31
这也是一种解决的方法,但是我还是比较想知道为什么那个全局变量没有达到预期的效果 ...

这也是一种解决的方法?!!oh no,骚年,我只是把你的程序的两个地方照抄上来了。


还看不明白呢?你在中断里赋值++,在显示里清零,那值不为1还能是什么。

使用特权

评论回复
28
叶伤| | 2014-11-11 21:01 | 只看该作者

怕你还不明白,多说几句:

while(n>0)
          {         
               i=n%10;
                   Gotoxy_P(j,0);
           LCD_Write_Date(0x30+i);
                   n=n/10;
                   j--;
          }

当n不为0,循环计算n=n/10,直到n=0为止,这就是清零操作。明白了吧?

使用特权

评论回复
29
你猜我是虎|  楼主 | 2014-11-11 21:04 | 只看该作者
叶伤 发表于 2014-11-11 20:58
这也是一种解决的方法?!!oh no,骚年,我只是把你的程序的两个地方照抄上来了。

还真不明白,在中断里面赋值,n++;在显示里面清零。赋值和清零,叶兄务必解释一下=-=

使用特权

评论回复
30
你猜我是虎|  楼主 | 2014-11-11 21:06 | 只看该作者
叶伤 发表于 2014-11-11 21:01
怕你还不明白,多说几句:

while(n>0)

这下明白了,多谢叶兄的指点。
我还是太嫩了点=-=

使用特权

评论回复
31
叶伤| | 2014-11-11 21:06 | 只看该作者
好吧,我只能说,言尽于此。/尴尬

使用特权

评论回复
32
你猜我是虎|  楼主 | 2014-11-11 21:13 | 只看该作者
叶伤 发表于 2014-11-11 21:06
好吧,我只能说,言尽于此。/尴尬

恩,突然发现我的编程习惯太差了=-=

使用特权

评论回复
33
sinanjj| | 2014-11-11 22:12 | 只看该作者
n=n/10;。。。。

有时序操作关闭中断是我的习惯,我必须知道程序运行在哪个部分。

绝大部分情况下,使用中断是想把这个部分抛出去,但是在一个高度可控和高度时许的情况下,这种还是我所不认可的。
需要检测按键计数这种情况,应该是根据中断立即停止原有操作,从新进行显示操作,就是把程序至于绝对可控或者说清晰的状态下。

这个相信楼主也没做到。

至于说 n=n/10的错误。可以做跟踪调试看出来

使用特权

评论回复
34
llf021421| | 2014-11-11 22:48 | 只看该作者
全局变量定义前加volatile

使用特权

评论回复
35
zhangwenkang| | 2014-11-11 22:55 | 只看该作者
你的中断初始化有问题1:没有设置初始值2:在中断中没有重新附初始值。

使用特权

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

本版积分规则