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

[复制链接]
 楼主| 你猜我是虎 发表于 2014-11-11 16:26 | 显示全部楼层
ningling_21 发表于 2014-11-11 16:22
搞程序时从来不能说:应该或不应该;只有是或不是

很是不好意思。其实我只是想到有个自然的优先级,所以没有自己刻意再去设置优先级
陈杰1993 发表于 2014-11-11 17:00 | 显示全部楼层
你猜我是虎 发表于 2014-11-11 15:38
用的外部中断0对外部脉冲进行计数

优先级需要定义一下的
 楼主| 你猜我是虎 发表于 2014-11-11 18:01 | 显示全部楼层
陈杰1993 发表于 2014-11-11 17:00
优先级需要定义一下的

那个不是有自然优先级嘛?为什么还要重新定义一次呢?
叶伤 发表于 2014-11-11 18:34 来自手机 | 显示全部楼层
你的main没有给出,楼上的回答,不忍直视
叶伤 发表于 2014-11-11 19:06 来自手机 | 显示全部楼层
  
void INT_0() interrupt 0
{
  EX0=0;
  n++;

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


原谅我看走了眼。
 楼主| 你猜我是虎 发表于 2014-11-11 19:31 | 显示全部楼层
叶伤 发表于 2014-11-11 19:06
void INT_0() interrupt 0
{
  EX0=0;

这也是一种解决的方法,但是我还是比较想知道为什么那个全局变量没有达到预期的效果
叶伤 发表于 2014-11-11 20:58 来自手机 | 显示全部楼层
你猜我是虎 发表于 2014-11-11 19:31
这也是一种解决的方法,但是我还是比较想知道为什么那个全局变量没有达到预期的效果 ...

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


还看不明白呢?你在中断里赋值++,在显示里清零,那值不为1还能是什么。
叶伤 发表于 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为止,这就是清零操作。明白了吧?
 楼主| 你猜我是虎 发表于 2014-11-11 21:04 | 显示全部楼层
叶伤 发表于 2014-11-11 20:58
这也是一种解决的方法?!!oh no,骚年,我只是把你的程序的两个地方照抄上来了。

还真不明白,在中断里面赋值,n++;在显示里面清零。赋值和清零,叶兄务必解释一下=-=
 楼主| 你猜我是虎 发表于 2014-11-11 21:06 | 显示全部楼层
叶伤 发表于 2014-11-11 21:01
怕你还不明白,多说几句:

while(n>0)

这下明白了,多谢叶兄的指点。
我还是太嫩了点=-=
叶伤 发表于 2014-11-11 21:06 来自手机 | 显示全部楼层
好吧,我只能说,言尽于此。/尴尬
 楼主| 你猜我是虎 发表于 2014-11-11 21:13 | 显示全部楼层
叶伤 发表于 2014-11-11 21:06
好吧,我只能说,言尽于此。/尴尬

恩,突然发现我的编程习惯太差了=-=
sinanjj 发表于 2014-11-11 22:12 | 显示全部楼层
n=n/10;。。。。

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

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

这个相信楼主也没做到。

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

llf021421 发表于 2014-11-11 22:48 来自手机 | 显示全部楼层
全局变量定义前加volatile
zhangwenkang 发表于 2014-11-11 22:55 | 显示全部楼层
你的中断初始化有问题1:没有设置初始值2:在中断中没有重新附初始值。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部
快速回复 在线客服 返回列表 返回顶部