C51计数器困惑

2020-01-24 12:02发布

为什么,我按递减按键到0了还会继续显示出最大数字,请教怎么修改代码,谢谢!!!



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
煮酒fu
1楼-- · 2020-01-24 15:31
你还不如贴出来源码呢,不然没人看的,小哥。
tam2907
2楼-- · 2020-01-24 18:59
 精彩回答 2  元偷偷看……
waterghost
3楼-- · 2020-01-24 21:46
void int_1(void) interrupt 2
{
        if(counter>0)
        {       
                counter--;
        }       

}
linbin250
4楼-- · 2020-01-24 23:56
电脑里面的数是循环的。所以下面的这个是一直循环的。也就是说。
当这个数据达到最小的数后,再减一,就会直接到最大。
当这个数据达到最大的数后,再加一,就会直接到最小。

void int_0(void) interrupt 0
{
        counter++;  
        // 换成
        if (counter < 65530) counter++;
}
void int_1(void) interrupt 2
{
        counter--;
        // 换成
        if (counter > 0) counter--;
}
mcu5i51
5楼-- · 2020-01-25 02:12
限制数据范围,达到0时不在减就好了,加法相同
jamasliu
6楼-- · 2020-01-25 03:09
谢谢各位的回复,问题解决。。

一周热门 更多>