久芯网

在学习官方示例工程的时候,发现 int main()里找不到 .c文件中定义的函数

avatar Ann1 提问时间: 2023-07-02 14:33:01 / 未解决

最近在了解ST MEMS麦克风的使用,有一个Audio_playback_and_record的工程,我的目的是想了解一下处理音频数据的过程,但是发现 int main()里找不到waverecorder.c文件中定义的函数 ,而且主函数中还多了加速度传感器的内容,让我很是疑惑,小白学艺不精,请问有大佬可以回答我下吗

主程序如下

/**

  • @brief Main program
  • @param None
  • @retval None / int main(void) { / STM32F4xx HAL library initialization:
    • Configure the Flash prefetch, instruction and Data caches
    • Configure the Systick to generate an interrupt each 1 msec
    • Set NVIC Group Priority to 4
    • Global MSP (MCU Support Package) initialization */ HAL_Init();

/ Configure LED3, LED4, LED5 and LED6 / BSP_LED_Init(LED3); BSP_LED_Init(LED4); BSP_LED_Init(LED5); BSP_LED_Init(LED6);

/ Configure the system clock to 168 MHz / SystemClock_Config();

/ Initialize MEMS Accelerometer mounted on STM32F4-Discovery board / if(BSP_ACCELERO_Init() != ACCELERO_OK) { / Initialization Error / Error_Handler(); }

MemsID = BSP_ACCELERO_ReadID();

/ Turn ON LED4: start of application / BSP_LED_On(LED4);

/ Configure TIM4 Peripheral to manage LEDs lighting / TIM_LED_Config();

/ Initialize the Repeat state / RepeatState = REPEAT_ON;

/ Turn OFF all LEDs / LEDsState = LEDS_OFF;

/ Configure USER Button / BSP_PB_Init(BUTTON_KEY, BUTTON_MODE_EXTI);

/##-1- Link the USB Host disk I/O driver ##################################/ if(FATFS_LinkDriver(&USBH_Driver, USBDISKPath) == 0) { /##-2- Init Host Library ################################################/ USBH_Init(&hUSB_Host, USBH_UserProcess, 0);

/##-3- Add Supported Class ##############################################/ USBH_RegisterClass(&hUSB_Host, USBH_MSC_CLASS);

/##-4- Start Host Process ###############################################/ USBH_Start(&hUSB_Host);

/ Run Application (Blocking mode)/ while (1) { switch(AppliState) { case APPLICATION_START: MSC_Application(); break; case APPLICATION_IDLE: default: break; }

/ USBH_Background Process / USBH_Process(&hUSB_Host); } }

/ TrueStudio compilation error correction / while (1) { } }

waverecorder.c里定义的函数如下图:

在学习官方示例工程的时候,发现 int main()里找不到 .c文件中定义的函数 [相关图片]

4个回答
  • avatar 老牛洋车
    回答时间: 2023-07-02 15:02:19

    定义的函数不一定非要在主函数中直接调用的,也许是通过主函数中调用的某个函数中调用,那在主函数中就不能直接看到。

  • avatar st_yujie2510
    回答时间: 2023-07-02 15:20:05

    您是参考了ST官网上的STSW-STM32068工程吗?工程里的加速度计是用于播放的【停止】和【恢复】控制,第一次敲击——停止播放,第二次敲击——继续播放。 相关的代码可以参考应用笔记——AN3997

  • avatar Ann1
    回答时间: 2023-07-02 15:46:27
    老牛洋车 发表于 2023-5-8 08:45
    定义的函数不一定非要在主函数中直接调用的,也许是通过主函数中调用的某个函数中调用,那在主函数中就 ...

    [md]感谢回复

  • avatar Ann1
    回答时间: 2023-07-02 16:14:06
    st_yujie2510 发表于 2023-5-11 08:53
    您是参考了ST官网上的STSW-STM32068工程吗?工程里的加速度计是用于播放的【停止】和【恢复】控制,第 ...

    [md]感谢回复

会员中心 微信客服
客服
回到顶部