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.

[参考译文] MSP430FR5969:MSP430带ADXL345加速计|检测双丝锥

Guru**** 2589280 points
Other Parts Discussed in Thread: MSP430FR5969

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/630894/msp430fr5969-msp430-with-adxl345-accelerometer-detecting-double-tap

部件号:MSP430FR5969

您好,  

我正在尝试将MSP430FR5969与ADXL345加速器连接起来。

根据 数据表,我能够读取0xE5的设备ID。 此外,我还可以修改寄存器并读取相同的值,所以我猜我的SPI不是造成问题的原因。问题是这样  

我正在尝试使用加速计检测双击。

下面是我遵循的代码步骤/算法。

MAIN ()
{//Watchdog
Stop
//通过设置PMMCTL5寄存器解锁GPIO引脚
//启用GIE
//将smclk MCLK设置为8MHz
//使用SMCLK将1MHz
//INT1引脚连接到MSP430引脚3.5 -启用防3.5 落边
//INT2引脚-启用MSP430引脚-启用防落边-启用3.6 3.6 中断


//读取设备ID。 设备ID读取为0xE5
// Configure_ADXL345_BW_RATE_REGISTER - 0x0E
// Configure_ADXL345_INT_MAP_REGISTER - 0x20
// Configure_ADXL345_thresh_tap_register - 0x08
// Configure_ADXL345_Dur_register - 0x02
// Configure_ADXL345_REGISTER_ADDRISTER_NOISTER_0x60




- 0x01 // ADX345_DI_DILE_DIADE_DE_DELA45_ADDE_DE_DIGE_DIEN存 取_ADDE_ADDE_ADDE_ADDE_DEX345_ADDE_

我面临的问题是,在执行双击时,我无法在MSP430 GPIO引脚上获得任何中断。 我尝试在ADXL345上双击我的手指,并且多次在 桌面上敲击ADXL设备(本身)两次。

但是,经过几次尝试后,一旦我得到一个中断,即使清除了P3IFG标志,代码也会在ISR中无限循环(即ISR完成后返回到ISR顶部)。  

能否有人确认我的双击配置是否正确?

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

    ADXL345是许多工程师与MSP430交互的常用部件。 通过快速论坛搜索,我找到了一些类似的帖子,可能很有用:

    e2e.ti.com/.../49.0264万
    e2e.ti.com/.../26.0094万
    e2e.ti.com/.../64.3532万

    虽然这些海报没有遇到您在此处描述的确切问题,但它们能够成功地连接这两种设备。 他们甚至提供了代码,以便您可以引用它。

    如果这些帖子不起作用,我希望看到针脚和P3 ISR的初始化,以确保您已正确设置针脚,并且正在正确清除P3IFG。

    此致,
    Caleb Overbay