f303k8 wav player
Dependencies: SDFileSystem mbed
main.cpp
- Committer:
- nameless129
- Date:
- 2016-07-31
- Revision:
- 0:1561c4efda0e
- Child:
- 1:7a3f34b2d18b
File content as of revision 0:1561c4efda0e:
#include "mbed.h" #include <stdio.h> #include "SDFileSystem.h" #include "stm32f3xx_hal_rcc.h" #include "cmsis_nvic.h" #include "wavPlayer.h" static void MX_TIM6_Init(void); static void MX_NVIC_Init(void); void TIM6_IRQHandler(void); TIM_HandleTypeDef htim6; Ticker flipper; FATFS FatFs; wavPlayerOnDAC wavPlayer(PA_4); //AnalogOut DACout(PA_4); SDFileSystem sd(PB_5, PB_4, PB_3, PA_11, "sd"); // the pinout on the mbed Cool Components workshop board DigitalOut pin(PA_12); DigitalOut pin2(PB_0); DigitalIn button(PA_0,PullDown); BusIn DipSW(PA_10,PA_9,PA_12,PB_0); void TIM6_IRQHandler() { __HAL_TIM_CLEAR_IT(&htim6 , TIM_FLAG_UPDATE); wavPlayer.DACOutProc(); } static void MX_NVIC_Init(void) { /* TIM6_DAC1_IRQn interrupt configuration */ HAL_NVIC_SetPriority(TIM6_DAC1_IRQn, 0, 0); HAL_NVIC_EnableIRQ(TIM6_DAC1_IRQn); } /* TIM6 init function */ static void MX_TIM6_Init(void) { __TIM6_CLK_ENABLE(); htim6.Instance = TIM6; htim6.Init.Prescaler = 1; htim6.Init.CounterMode = TIM_COUNTERMODE_UP; htim6.Init.Period = 1451; if (HAL_TIM_Base_Init(&htim6) != HAL_OK) { while(1) { } } HAL_TIM_Base_Start_IT(&htim6); } int main(void) { FRESULT wavFileResult; FIL fil; int i,j; MX_TIM6_Init(); NVIC_SetVector(TIM6_DAC1_IRQn, (uint32_t)&TIM6_IRQHandler); MX_NVIC_Init(); DipSW.mode(PullDown); f_mount(&FatFs,"",0); wavFileResult = f_open(&fil, "LondonCalling.wav", FA_READ); printf("error:%d\r\n",(int)wavFileResult); wavPlayer.setFile(&fil); printf("buff ok\r\n"); while(button == 1) { } printf("start\r\n"); while(1) { if(wavPlayer.readProc() == 1) { printf("END\r\n"); wavPlayer.rewind(); } } }