找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2043|回复: 1
收起左侧

关于单片机摇摇棒控制变量的问题

[复制链接]
ID:206180 发表于 2017-5-30 21:48 | 显示全部楼层 |阅读模式
/*****中断服务程序*****/
void intersvr0(void) interrupt 0
{
      KY=~KY;
       //每个摇动来回水银开关会在摆幅两端分别产生下降沿中断,只提取其中一次(从左向右摇才显示)
if(KY==0)
{
  num++;     //计算中断次数
   switch(pic)      //选择画面
   {
        case 0:{display1_ltor();}break;
    case 1:{display2_ltor();}break;
    case 2:{display3();}break;
    case 3:{display4();}break;
    default:{display1_ltor();}  
   }
}
        
}

上面是中断程序
控制变量ky初值为0,摇摇棒从左往右或者从右往左都会产生一个中断,按照程序所描述是不是说 第一次中断不送数据,第二次中断送数据,第3次又送。。。。。
那这样来分析的话摇摇棒有可能从左往右的时候送数据,也有可能从右往左的时候送数据,
但是实际上之后摇摇棒从左往右时才送数据啊,
有点搞不懂
哪位大神能看看我的分析哪里出了问题,感激不尽!!!

回复

使用道具 举报

ID:123289 发表于 2017-5-31 02:14 | 显示全部楼层
1、如果是别人的程序,就不一定对,你可以直接运行验证,从而弄清原理。
2、自己必须弄清显示的原理,依原理自己先想像一个显示方案,再对照范例,才便于理解。
本项目有以下关键点,请楼主想像一下是如何解决的?
1、从何时开始送第一列数据?
2、间隔多久送下一列数据合适?
3、从首列至末列?还是从末列到首列?
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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