注册 登录
查看: 385|回复: 12

[其他] gpio采集高低电平的问题

[复制链接]
发表于 2014-6-8 09:02:27 | 显示全部楼层 |阅读模式


山外哥,我通过外部解码芯片判断方向,但是kl26读不出高低电平,怎么办哦?
gpio_init(DRI_L ,GPI,1);
    gpio_init(DRI_R ,GPI,1);

        Dri_L =gpio_get(DRI_L);   //读取方向 a
        Dri_R =gpio_get(DRI_R);   //读取方向 b

回复

使用道具 举报

发表于 2014-6-8 09:20:16 | 显示全部楼层
因为编码器是脉冲形式,而不是一直高电平,需要用D触发器。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-8 09:33:55 | 显示全部楼层
山外メ雲ジ 发表于 2014-6-8 09:20
因为编码器是脉冲形式,而不是一直高电平,需要用D触发器。

我是用的74hc74芯片进行转向的判断的,但是单片机读的值一直不变,用示波器看芯片的输出是没有问题的
回复 支持 反对

使用道具 举报

发表于 2014-6-8 09:35:12 | 显示全部楼层
yoo 发表于 2014-6-8 09:33
我是用的74hc74芯片进行转向的判断的,但是单片机读的值一直不变,用示波器看芯片的输出是没有问题的

你可以先简单测测 IO口接VCC和GND的采集值,看看对不对的嘛。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-8 10:50:55 | 显示全部楼层
山外メ雲ジ 发表于 2014-6-8 09:35
你可以先简单测测 IO口接VCC和GND的采集值,看看对不对的嘛。

采集不了啊,我晕
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-8 10:53:30 | 显示全部楼层
山外メ雲ジ 发表于 2014-6-8 09:35
你可以先简单测测 IO口接VCC和GND的采集值,看看对不对的嘛。

我用的E2,E3口配置了上拉电阻,但还是采集不到
回复 支持 反对

使用道具 举报

发表于 2014-6-8 11:01:34 | 显示全部楼层
yoo 发表于 2014-6-8 10:50
采集不了啊,我晕

如果普通的高低电平都采集不到,那你设置IO输出0和1,看看输出值对不对。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-8 11:21:30 | 显示全部楼层
山外メ雲ジ 发表于 2014-6-8 11:01
如果普通的高低电平都采集不到,那你设置IO输出0和1,看看输出值对不对。

没右问题的
回复 支持 反对

使用道具 举报

发表于 2014-6-8 11:46:54 | 显示全部楼层
yoo 发表于 2014-6-8 11:21
没右问题的

输出正常,那输入应该正常啊。

你是不是按照我说的,分别接入VCC和GND来测啊?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-8 12:20:38 | 显示全部楼层
山外メ雲ジ 发表于 2014-6-8 11:46
输出正常,那输入应该正常啊。

你是不是按照我说的,分别接入VCC和GND来测啊?

是的~采集到的值没有变化
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-8 13:26:54 | 显示全部楼层
山外哥~你看帮我写一个main的例程我试试吧
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-8 13:27:46 | 显示全部楼层
山外メ雲ジ 发表于 2014-6-8 11:46
输出正常,那输入应该正常啊。

你是不是按照我说的,分别接入VCC和GND来测啊?

山外哥~你看帮我写一个main的例程我试试吧
回复 支持 反对

使用道具 举报

发表于 2014-6-8 13:50:57 | 显示全部楼层
yoo 发表于 2014-6-8 13:27
山外哥~你看帮我写一个main的例程我试试吧

gpio_init(DRI_L ,GPI,1);
gpio_init(DRI_R ,GPI,1);

while(1)

        Dri_L =gpio_get(DRI_L);   //读取方向 a
        Dri_R =gpio_get(DRI_R);   //读取方向 b

         printf()//打印他们的值
         DELAY_MS(1000);

回复 支持 反对

使用道具 举报

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

本版积分规则

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