智能车制作

标题: 如何设置拨码盘速度!!急 [打印本页]

作者: zhyntu    时间: 2010-7-1 21:56
标题: 如何设置拨码盘速度!!急
在PB1-PB4上我接了四个拨码开头,来通过硬件调节速度,同时PB0是作为控制33886正反转用的,请教大家为什么我用下列代码实现时总时达不到效果??
void set_max_speed()
{
      //PUCR_PUPBE=1;
       DDRB=0x01;    //将PB0设为输出,其它设为输入模式      
     speed_flag=PORTB&0x1e; //取PB1-PB4;
      switch(speed_flag)
       {
        case  0x1c : set_speed=300;break;
        case  0x1a : set_speed=400;break;
        case  0x16 :set_speed=500;break;
        case  0x0e: set_speed=600;break;
        default: set_speed=300;
      }
      PUCR_PUPBE=0;
作者: whut_wj    时间: 2010-7-1 22:24
确认程序执行到此处了?
作者: zhyntu    时间: 2010-7-16 20:57
回复 2# whut_wj


    程序没有,因为明明已经拨了开关,但是speed的值并没有变,不知道是什么原因,请告诉指点。
作者: zhyntu    时间: 2010-7-16 21:00
回复 2# whut_wj


    另外,最近正在为如何设定中断优先级发愁,我摄像头组的,中断优先级设的不对的话,程序会跑飞,请教下,谢谢
作者: peilet    时间: 2010-7-16 21:44
不是很明白你的意思 如果程序都没执行到 当然没有办法 set speed了

这个程序你是放在for(;;)里面还是前面 应该是前面吧 如果是前面 需要复位才有效果

作者: dragonbee    时间: 2012-12-17 19:46
不应该是四个端口都设为输入吗?





欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2