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.

[参考译文] CCS/MSP432P401R:将数据导出到计算机

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/962084/ccs-msp432p401r-export-data-to-computer

器件型号:MSP432P401R

工具/软件:Code Composer Studio

你(们)好。

我正在编写此代码、并尝试在阵列全部填充(16000个索引)时打印出来。 是否有任何 driverlib 函数可以自动将变量或数组(基本上是存储在存储器中的值)打印为 txt 文件?

这是我编写的代码、

#include

/*标准包括*/

#include

#include

//s#include

易失性浮点数组[16000];

INT 计数= 0;

volatile int index;

int main (空)

{

    /*停止看门狗*/

    MAP_WDT_A_HOLDTimer();

    //![简单 CS 配置]

    /*为外设/晶体使用配置引脚、为输出配置 LED */

    MAP_GPIO_setPeripheralModuleFunctionOutputPin (

            GPIO_PORT_PJ、

            GPIO_PIN3 | GPIO_PIN2、

            GPIO_PRIMARY_MODULE_FUNCTION);

    MAP_GPIO_setAsInputPinWithPullUpResistor (GPIO_PORT_P1、GPIO_PIN1);

    MAP_GPIO_interruptEdgeSelect (GPIO_PORT_P1、GPIO_PIN1、

    GPIO_HIGH_TO_LOW_TRANSITION);

    /*以防用户想要使用 getACLK、getMCLK 等函数、

     *让我们在代码中设置时钟频率。

     *

    cs_setExternalClockSourceFrequency (32000、36000000);

    /*在非旁路模式下启动 HFXT 而不超时。 开始之前

     *我们必须将 VCORE 更改为1以支持48MHz 频率*/

    MAP_PCM_setCoreVoltageLevel (PCM_VCORE1);

    MAP_FlashCtl_setWaitState (FLASH_BANK0、1);

    MAP_FlashCtl_setWaitState (FLASH_BANK1、1);

    CS_startHFXT (false);

    /*将 MCLK 初始化为 HFXT (有效48MHz)*/

    MAP_CS_initClockSignal (CS_MCLK、CS_HFXTCLK_SELECT、CS_CLOCK_DEVIDER_1);

    //![简单 CS 配置]

    /*将 SysTick 配置为在12000000时触发(MCLK 为48MHz、因此将会触发

     *每0.025秒切换一次)*/

    MAP_SysTK_enableModule();

    MAP_SysTK_setPeriod (1200000);

    MAP_Interrupt_enableSlepOnIsrExit();

    MAP_SysTK_enableInterrupt ();

    /*启用主中断*/

    MAP_Interrupt_enableMaster();

    while (1)

    {

    }

}

空 SysTick 处理程序(空)

{

    易失性浮点子阵列[6];

    易失性浮点和;

    int i;

    count++;

    子数组[count]= MAP_GPIO_getInputPinValue (GPIO_PORT_P1、GPIO_PIN1);

    如果(计数% 6 = 0)

    {

        对于(I = 0;I < 6;I++)

        {

            sum +=子数组[i];

        }

        array[索引]=SUM;

        总和= 0;

        I = 0;

        计数= 0;

        索引++;

    }

}

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

    您好、Keith、

    [引用 user="Keith Xia">我正在编写此代码,并尝试在阵列全部填充(16000个索引)时打印出来。 是否有任何 driverlib 函数可以自动将变量或数组(主要是存储在存储器中的值)打印为 txt 文件?

    是否也要在没有 JTAG 连接的情况下执行此操作? 如果这仅用于调试目的并且将有一个 JTAG 调试连接、那么 C I/O 始终是一个选项(尽管是一个插入式 I/O)。  

    谢谢

    Ki

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

    您好 Ki、

    我只需要对电路板进行调试、然后将在笔记本电脑中本地打印并保存 txt 文件。 我尝试搜索是否有任何函数可以执行该工作、但到目前为止、我无法找到任何可用的函数/示例。 您是否有我可以参考的任何示例代码?

    Keith

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

    [引用 user="Keith Xia">我只需要对电路板进行调试、然后将在笔记本电脑中本地打印并保存 txt 文件。 [/报价]

    如果您将具有 CCS 调试连接、并且不担心侵扰度(处理器停止)、那么 像 fwrite 这样的 C 文件 I/O 应该会起作用。

    请注意、在嵌入式器件上使用 C I/O 时需要考虑一些注意事项。 有关更多详细信息、请参阅以下文章:

    https://dev.ti.com/tirex/explore/node?node=ADxuQu8gX3MLBUkurarz8A__FUz-xrs__LATEST

    您还可以让 CCS 调试器通过设置断点并执行将存储器位置保存到文件的操作来自动执行此操作。

    谢谢

    Ki