智能车制作

标题: 关于拨码开关的问题 求解 [打印本页]

作者: 风哥    时间: 2014-11-30 00:18
标题: 关于拨码开关的问题 求解
#include"include.h"
#include"common.h"

void boma_kg()//档位选择
{
   
    u8 boma_status;
    u8 a;
    gpio_init(PORTE,0,GPI_UP,1);//必须配置为上拉输入模式
    gpio_init(PORTE,1,GPI_UP,1);
    gpio_init(PORTE,2,GPI_UP,1);
    gpio_init(PORTE,3,GPI_UP,1);
    gpio_init(PORTE,4,GPI_UP,1);
    gpio_init(PORTE,5,GPI_UP,1);
    gpio_init(PORTE,6,GPI_UP,1);
    gpio_init(PORTE,7,GPI_UP,1);
    boma_status=PTE_BYTE0_IN;
    boma_status=boma_status&0x0f;
    a=PTB_BYTE2_OUT;
    a=a&0x0f;
    switch(boma_status)
    {
      case 0x00:{a=0x00;}break;//1111 0000
      case 0x01:{a=0x10;}break;//1111 0001
      case 0x02:{a=0x20;}break;//1111 0010
      case 0x04:{a=0x40;}break;//1111 0011
      case 0x08:{a=0x80;}break;//1111 0011                 
      default:break;
    }
   
}
    void main()
    {
          boma_kg();
          LED_init();
   
    }



//这个程序问题出在哪里啊    我想用拨码开关控制PTB20-PTB23的4个灯 为什么拨码开关不起作用呢?????

作者: 暗光    时间: 2014-11-30 00:51
main函数没有进入主循环,对拨码开关没有一直检测,很可能灯迅速亮一下就灭了。。。。。。。。。。
作者: 风哥    时间: 2014-11-30 01:52
暗光 发表于 2014-11-30 00:51
main函数没有进入主循环,对拨码开关没有一直检测,很可能灯迅速亮一下就灭了。。。。。。。。。。

那应该怎么改啊
作者: wijop    时间: 2014-11-30 11:15
你单步调试看一下
作者: 1224091496    时间: 2014-11-30 12:45
while(1)
作者: 支点305    时间: 2014-11-30 13:27
void main()
{
while(1)
{
          boma_kg();
          LED_init();
}
   
}
作者: 暗光    时间: 2014-11-30 13:32
风哥 发表于 2014-11-30 01:52
那应该怎么改啊

看#6楼
作者: 钟意黑色    时间: 2015-1-5 17:30
暗光 发表于 2014-11-30 00:51
main函数没有进入主循环,对拨码开关没有一直检测,很可能灯迅速亮一下就灭了。。。。。。。。。。

拨码开关的原来和按键一样?四位拨码开关就相当于四个独立的按键?

作者: 暗光    时间: 2015-1-5 18:52
钟意黑色 发表于 2015-1-5 17:30
拨码开关的原来和按键一样?四位拨码开关就相当于四个独立的按键?

也对也不对,不对在于,按键你松下后又恢复了,拨码开关还是保持那个状态

作者: yangsd    时间: 2015-1-5 19:22
128还是k60?




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