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.

[参考译文] CC2652R7:通过 DriverLib 调用(不是传感器控制器),时钟源和头文件实现数字转换器的时间

Guru**** 2455350 points
Other Parts Discussed in Thread: CC2652R7, SYSCONFIG

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

https://e2e.ti.com/support/wireless-connectivity/other-wireless-group/other-wireless/f/other-wireless-technologies-forum/1087697/cc2652r7-time-to-digital-converter-via-driverlib-calls-not-sensor-controller-clock-source-and-header-files

部件号:CC2652R7
“线程 :sysconfig”中讨论的其它部分

您好,

我希望有传感器控制器经验的人,特别是 TDC,能帮助我。 我希望从系统 CPU 使用 CC2652R7的 TDC,而不是从传感器控制器使用。 我现在还在加速,我认为“辅助域”是传感器控制器(ARM M0)作为单独的总线和地址空间驻留的,尽管它和系统 CPU (ARM M4)可以访问它们共用的外围设备。 如果不是我对 SDK 和编译器选择的最前沿的方法,我会利用传感器控制器(Studio):TIRTTOS7和 clang 编译器——CCS 在 macOS 下运行。 (我有一台运行传感器控制器工作室的 Windows 虚拟机,它运行良好,但我理解它还不支持 TIRTTOS7。)

系统配置(sysconfig)实用程序在管理通过 Simplelink SDK 提供的大量外围设备和服务方面提供了很大帮助,但尽管某些外围设备(如 ADC)似乎也与传感器控制器共享,但 TDC 却存在异常。 当 TIRTTOS7最终正式“完成”时,我希望传感器控制器工作室将提供支持,这将有所帮助。

因此,我计划直接利用 TI DriverLib 调用来部署 TDC。 (在以前的项目中,我非常有效地使用了 DriverLib 来利用 MSP430计时器。) 我在...找到了相关的驱动程序函数,例如“AUXTDCMeasureGet”(我认为)。

software-dl.ti.com/.../group__auxtdc__api.html>

...但迄今为止尚未确定我应该添加到我的包括中的头文件,也没有确定如何或在哪里可以在传感器控制器工作室接口(由于目前 TIRTTOS7,我没有使用该接口)之外配置 TDC 的时钟源。

我发现 DriverLib 的调用“AUXTDCMeasureGet (ui32Base)”应该返回上止点的最新测量值,但我不知道在哪里以及如何设置上止点以获得可用的时钟和输入设置——再次,在传感器控制器工作室之外。

请提供有关文件的任何提示或线索。


此致,

比尔。

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

    您好 Bill,

    我以前没有使用过此 Driverlib 资源,但我能够使用 AUX TDC API 构建空的 TI-RTOS7项目。  该代码未被验证是否正常运行,我只是将一些东西放在一起,以确保代码能够在没有错误的情况下生成。

    /*
     *  ======== empty.c ========
     */
    
    /* For usleep() */
    #include <unistd.h>
    #include <stdint.h>
    #include <stddef.h>
    
    /* Driver Header files */
    #include <ti/drivers/GPIO.h>
    // #include <ti/drivers/I2C.h>
    // #include <ti/drivers/SPI.h>
    // #include <ti/drivers/UART.h>
    // #include <ti/drivers/Watchdog.h>
    
    /* Driver configuration */
    #include "ti_drivers_config.h"
    
    #include <ti/devices/cc13x2x7_cc26x2x7/driverlib/aux_tdc.h>
    
    /*
     *  ======== mainThread ========
     */
    void *mainThread(void *arg0)
    {
        /* 1 second delay */
        uint32_t time = 1;
        uint32_t result = 0;
    
        /* Call driver init functions */
        GPIO_init();
        // I2C_init();
        // SPI_init();
        // UART_init();
        // Watchdog_init();
    
        /* Configure the LED pin */
        GPIO_setConfig(CONFIG_GPIO_LED_0, GPIO_CFG_OUT_STD | GPIO_CFG_OUT_LOW);
    
        /* Turn on user LED */
        GPIO_write(CONFIG_GPIO_LED_0, CONFIG_GPIO_LED_ON);
    
        AUXTDCConfigSet(AUX_TDC_BASE, AUXTDC_START_AUXIO2 | AUXTDC_STARTPOL_RIS, AUXTDC_STOP_AUXIO2 | AUXTDC_STOPPOL_FALL);
    
        if(! AUXTDCIdle(AUX_TDC_BASE)) AUXTDCIdleForce(AUX_TDC_BASE);
    
        while (1) {
            AUXTDCEnable(AUX_TDC_BASE, AUX_TDC_RUNSYNC);
            while(AUXTDCMeasurementDone(AUX_TDC_BASE) != AUX_TDC_DONE);
            result = AUXTDCMeasurementGet(AUX_TDC_BASE);
            sleep(time);
            GPIO_toggle(CONFIG_GPIO_LED_0);
        }
    }

    由于使用 AUX TDC 的在线参考数量不多,我建议您参考 TRM 的19.5.2部分 ,并使用最新 的 Driverlib 文档,包括 库 APICPU 域寄存器说明

    此外,计划在传感器控制器工作室 v2.9中支持 TI-RTOS 7,预计将于3月底发布。

    此致,
    瑞安

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

    瑞安

    非常感谢! 对我来说是个好地方

    ARM,TIRTOS (7),clang,sysconfig,传感器控制器, SimpleLink……对我来说,这是一个全新的地形,我感觉我是在这里用消防水管喝酒。 (我甚至没有提到我在使用 MATLAB /Simulink 来生成模型的 C 代码的同时,使用 RTOS 来进行所有事件和实时调度)。 但我玩得很开心!

    希望我能为社会做出实物贡献。

    比尔。