|
|
  |
STM32F4 Discovery где найти опсиание работы с USB Flash |
|
|
|
Jul 20 2013, 15:30
|

Частый гость
 
Группа: Участник
Сообщений: 105
Регистрация: 21-06-12
Пользователь №: 72 429

|
Это еще что за либа? Цитата BUILD FAILED c:\coocox\gcc\arm-none-eabi\lib\armv7e-m\fpu does not exist.
|
|
|
|
|
Jul 22 2013, 15:24
|

Частый гость
 
Группа: Участник
Сообщений: 105
Регистрация: 21-06-12
Пользователь №: 72 429

|
Цитата(hd44780 @ Jul 22 2013, 17:56)  Из какого примера? Audio_playback_and_record? Да. Там есть функция Код /** * @brief Initializes the wave player * @param AudioFreq: Audio sampling frequency * @retval None */ int WavePlayerInit(uint32_t AudioFreq) {
/* Initialize I2S interface */ EVAL_AUDIO_SetAudioInterface(AUDIO_INTERFACE_I2S);
/* Initialize the Audio codec and all related peripherals (I2S, I2C, IOExpander, IOs...) */ EVAL_AUDIO_Init(OUTPUT_DEVICE_AUTO, volume, AudioFreq);
return 0; } вот думаю достаточно ли ее для полной инициализации работы с внешним DAC или еще что то нужно конфигурировать.
Сообщение отредактировал flopix - Jul 22 2013, 15:27
|
|
|
|
|
Jul 28 2013, 20:32
|

Частый гость
 
Группа: Участник
Сообщений: 105
Регистрация: 21-06-12
Пользователь №: 72 429

|
Неделю промаялся с поиском проблеммы из за которой не работал вывод звука. Оказалось в Coocox идет более старая версия файла system_stm32f4xx.c в которой не хватает блока для инициализации I2S. Код /******************************************************************************/ /* I2S clock configuration */ /******************************************************************************/ /* PLLI2S clock used as I2S clock source */ RCC->CFGR &= ~RCC_CFGR_I2SSRC;
/* Configure PLLI2S */ RCC->PLLI2SCFGR = (PLLI2S_N << 6) | (PLLI2S_R << 28);
/* Enable PLLI2S */ RCC->CR |= ((uint32_t)RCC_CR_PLLI2SON);
/* Wait till PLLI2S is ready */ while((RCC->CR & RCC_CR_PLLI2SRDY) == 0) { } }
|
|
|
|
|
Jul 30 2013, 03:10
|

Частый гость
 
Группа: Участник
Сообщений: 105
Регистрация: 21-06-12
Пользователь №: 72 429

|
При добавлении mp3 бблиотеки Helix выяснилась неприятность - Coocox не понимает синтаксис ассемблерных *.s файлов. Я даже не знаю что теперь делать  Цитата C:\CooCox\CoIDE\workspace\FlashTest-Coocox-USB-LFN-Rus-PID_VID_RTOS\helix\real\arm\asmpoly_thumb2.S: Assembler messages: [cc] C:\CooCox\CoIDE\workspace\FlashTest-Coocox-USB-LFN-Rus-PID_VID_RTOS\helix\real\arm\asmpoly_thumb2.S:1: Error: bad instruction `area |.text|,CODE,READONLY,ALIGN=2' [cc] C:\CooCox\CoIDE\workspace\FlashTest-Coocox-USB-LFN-Rus-PID_VID_RTOS\helix\real\arm\asmpoly_thumb2.S:2: Error: bad instruction `thumb' [cc] C:\CooCox\CoIDE\workspace\FlashTest-Coocox-USB-LFN-Rus-PID_VID_RTOS\helix\real\arm\asmpoly_thumb2.S:3: Error: bad instruction `require8' [cc] C:\CooCox\CoIDE\workspace\FlashTest-Coocox-USB-LFN-Rus-PID_VID_RTOS\helix\real\arm\asmpoly_thumb2.S:4: Error: bad instruction `preserve8' [cc] C:\CooCox\CoIDE\workspace\FlashTest-Coocox-USB-LFN-Rus-PID_VID_RTOS\helix\real\arm\asmpoly_thumb2.S:6: Error: bad instruction `pcm RN r0' [cc] C:\CooCox\CoIDE\workspace\FlashTest-Coocox-USB-LFN-Rus-PID_VID_RTOS\helix\real\arm\asmpoly_thumb2.S:7: Error: bad instruction `vb1 RN r1' [cc] C:\CooCox\CoIDE\workspace\FlashTest-Coocox-USB-LFN-Rus-PID_VID_RTOS\helix\real\arm\asmpoly_thumb2.S:8: Error: bad instruction `coef RN r2' [cc] C:\CooCox\CoIDE\workspace\FlashTest-Coocox-USB-LFN-Rus-PID_VID_RTOS\helix\real\arm\asmpoly_thumb2.S:10: Error: bad instruction `vlo RN r0' [cc] C:\CooCox\CoIDE\workspace\FlashTest-Coocox-USB-LFN-Rus-PID_VID_RTOS\helix\real\arm\asmpoly_thumb2.S:11: Error: bad instruction `vhi RN r3' [cc] C:\CooCox\CoIDE\workspace\FlashTest-Coocox-USB-LFN-Rus-PID_VID_RTOS\helix\real\arm\asmpoly_thumb2.S:13: Error: bad instruction `sum1ll RN r4' [cc] C:\CooCox\CoIDE\workspace\FlashTest-Coocox-USB-LFN-Rus-PID_VID_RTOS\helix\real\arm\asmpoly_thumb2.S:14: Error: bad instruction `sum1lh RN r5' ......
|
|
|
|
|
Jul 30 2013, 19:41
|

Частый гость
 
Группа: Участник
Сообщений: 105
Регистрация: 21-06-12
Пользователь №: 72 429

|
Пока обошлось. Оказалось те *.s файлы не нужны в проекте. Уже допиливаю декодировку. Будет готово выложу проект. По поводу скорости воспроизведения - где то неверно настроены предделители тактирования I2S. А может вообще частота внешний кварца сильно отличается от 8мгц. В стандартной демке Audio_playback_and_record та же ситуация. Если при инициализации EVAL_AUDIO_Init(OUTPUT_DEVICE_AUTO, volume, AudioFreq); AudioFreq домножить на небольшйо коэффицинет, то можно добиться нужной частоты вывода звука. Цитата(flopix @ Jul 30 2013, 22:16)  Оказалось те *.s файлы не нужны в проекте. Поторопился с выводами. Нужны. Еще немного покопаюсь с настройками и наверно перенесу проект в Keil. Я вообще в Coocox не вижу настроек gcc ассемблера. Может он вообще с ним не может работаь?
Сообщение отредактировал flopix - Jul 30 2013, 19:47
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|