jinglixixi 发表于 2018-5-5 21:38

【新版CH554评测】CH554开发板实现触摸键的参数设置与执行

<div class='showpostmsg'> 本帖最后由 jinglixixi 于 2018-5-6 10:15 编辑

   在控制电机转动时,需要对电机的转动方向和转动的圈数进行设置。在OLED屏的配合下,其执行效果如图所示。相应的参数设置与执行的关键程序如下:d=0;
while(f)
{
            TouchKeyChannelQuery();                                                               
            if(KeyBuf)                                                                                 
            {
                        if(KeyBuf==3)
                     {
                        OLED_ShowChar(88,2,'+',6);
                        d=0;
                     }
                        if(KeyBuf==4)
                     {
                        OLED_ShowChar(88,2,'-',6);
                        d=1;
                     }
                        if(KeyBuf==6)
                        {
                           OLED_ShowNum(0,6,0,3,6);
                           f=0;
                        }
                }
      }
      mDelaymS(200);
      f=1;
      i=0;
      k=0;
      while(1)
      {
                TouchKeyChannelQuery();                                                               
                if(KeyBuf)                                                                                             
                {
                        if(KeyBuf==3)
                        {
                            if(i<9) i++;
                        }
                        if(KeyBuf==4)
                        {
                            if(i>1) i--;
                        }
                        if(KeyBuf==5)
                        {
                                 if(k<1000)
                                 {
                                       k=(k+i)*10;
                                       i=0;
                                 }
                                 mDelaymS(20);
                        }
                        OLED_ShowNum(0,6,k+i,4,6);
                        if(KeyBuf==6)
                        {
                              k=k+i;
                              f=0;
                              i=0;
                        }
                        KeyBuf      = 0;      
                        mDelaymS(100);                                                                                       
}
//按指定的方向和圈数执行运转
if(d==0)      
{
while(k>0)
{
               //正向转动1周
               for(X=0;X<96;X++)         
            {
               for(Y=0;Y<8;Y++)
                {
               MD=0;
               MA=1; //A
               mDelaymS(1);
               MB=1; //AB
               mDelaymS(1);
               MA=0; //B
               mDelaymS(1);
               MC=1; //BC
               mDelaymS(1);
               MB=0; //C
               mDelaymS(1);
               MD=1; //CD
               mDelaymS(1);
               MC=0; //D
               mDelaymS(1);
               MA=1; //DA
               mDelaymS(1);
               }         //y      
             }   // x      
             K--;
            }   // k
            }   //d
else
{
          MA=0;
          MB=0;
          MC=0;
          MD=0;
         while(k>0)
         {
            //反向转动      1周      
             for(X=0;X<96;X++)
            {
                for(Y=0;Y<8;Y++)
               {
               MD=1;
               MA=1; //DA
               mDelaymS(1);      
               MA=0; //D
               mDelaymS(1);
               MC=1; //CD
               mDelaymS(1);
               MD=0; //C
               mDelaymS(1);      
               MB=1; //BC
               mDelaymS(1);
               MC=0; //B
               mDelaymS(1);
               MA=1; //AB
               mDelaymS(1);
               MB=0; //A
               mDelaymS(1);                        
            }          //      y
          }            //       x
                K--;
         }      //k
         }      //d
   }

    至此,已完成了当初的测评与DIY计划,总体来讲新版CH554开发板是易于进行小规模应用项目开发的,所配置的触摸键也是灵敏和便于使用的。后面更期待有CH559 mini开发板的活动,因为它所具备的U盘读写功能更是我所期待的性能,也更便于设计性能的扩展。    在后面的时间里,争取能把OLED 屏显示、触摸键判别、步进电机控制、MP3语音模块播放及DS1302时钟模块相结合来制作一个智能语音药盒。


此内容由EEWORLD论坛网友jinglixixi原创,如需转载或用于商业用途需征得作者同意并注明出处

</div><script>                                        var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;"   style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
                                       
                                        if(parseInt(discuz_uid)==0){
                                                                                                (function($){
                                                        var postHeight = getTextHeight(400);
                                                        $(".showpostmsg").html($(".showpostmsg").html());
                                                        $(".showpostmsg").after(loginstr);
                                                        $(".showpostmsg").css({height:postHeight,overflow:"hidden"});
                                                })(jQuery);
                                        }                </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script>
页: [1]
查看完整版本: 【新版CH554评测】CH554开发板实现触摸键的参数设置与执行