This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] LM8330:Linux 驱动程序

Guru**** 2390755 points
Other Parts Discussed in Thread: LM8330

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1463358/lm8330-linux-driver

器件型号:LM8330

工具与软件:

您好!

我尝试使用 lm8330拥有键盘(6x6)、并将其他引脚设置为标准 GPIO。
键盘部分工作正常。 GPIO 不工作。

以下是 lm8330的总体配置:


   lm8330_write8 (lm8330、LM8330_CLKEN_REG、(uint8_t)(0x01));
   lm8330_write8 (lm8330、LM8330_KBDSETTLE_REG、ACTIVE_TIME);
   lm8330_write8 (lm8330、LM8330_KBDBOUNCHE_REG、debounce_time);
   lm8330_write8 (lm8330、LM8330_KBDSIZE_REG、((keypad_rows<<4)| keypad_columns));
   lm8330_write16 (lm8330、LM8330_KBDDEDCFG_REG、keypad_selector);
   lm8330_write8 (lm8330、LM8330_IOCGF_REG、(uint8_t)(0x10));
   lm8330_write8 (lm8330、LM8330_KBDIC_REG、(uint8_t)(0x83));
   lm8330_write8 (lm8330、LM8330_KBDMSK_REG、(uint8_t)(0x03));
   lm8330_write8 (lm8330、LM8330_RSTINTCLR_REG、(uint8_t)(0x1));
   lm8330_write8 (lm8330、LM8330_CLKMODE_REG、(uint8_t)(0x1));

这是 GPIO 的配置。 我正在尝试将 KPY9配置为输出:

   lm8330_write8 (lm8330、LM8330_GPIOOME2_REG、(uint8_t)(0x0));
   lm8330_write8 (lm8330、LM8330_GPIODR2_REG、(uint8_t)(0x4));

和更改状态命令:
   lm8330_write16 (lm8330、LM8330_GPIOPDATA2_REG、(GPIO_state)? 0x404:0x400);

我忘记了什么? 是否可能有 Linux 驱动程序或有关此部分的示例?

此致、
杰罗姆

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jerome、

    对于 GPIOPDIR2寄存器配置、您设置为0x4、它似乎指示 KPY10。

    你的线程中没有完整的源代码、 根据这里的代码片段、这只是我的猜测。   

    此致、

    永华

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    是的、这是一个错误、但它并没有解决我的问题。

    通常、根据文档、组件按优先级工作。

    1) KBDSIZE 固定为0x66 (对于6x6键
    盘) 2) KBDDEDCFG 为0xFF 以使用键盘或 GPIO 功能中
    的所有引脚3
    ) IOCFG 为0x0以保持主功能4)- GPIODIR
    
    
    为0x2以用于 KPY9上的输出- GPIOME 为0x0、因为我们处于输出- GPIOMS 被忽略- IOPC 为0x0、因为我没有任何拉电阻器 
    我不知道除了这些寄存器之外是否缺少某些内容需要配置、但无法使 LED 闪烁 


    此致、
    杰罗姆

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jerome、

    团队仍在调查此问题、并将在此处作出响应、并很快提供更新。 感谢您的耐心。

    此致、

    插孔  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、
    问题最终得到解决、原因是 KBDDEDCFG 寄存器的配置不良以及 GPIOPDATA 寄存器的二进制偏移量。
    感谢你的帮助。 
    此致、
    杰罗姆