Форум программистов, компьютерный форум, киберфорум
Наши страницы
Arduino
Войти
Регистрация
Восстановить пароль
 
Nemizan
1 / 1 / 0
Регистрация: 09.05.2019
Сообщений: 39
1

Многозадачность

09.11.2019, 00:15. Просмотров 130. Ответов 0

Люди, HELP!!! Есть ардуинка Due, которая может воспроизводить аудиофайлы с SD карточки. У меня должны идти кое-какие действия и в определённый момент нужно вызывать функцию, которая проигрывает аудио. Всё работает, но нужно, чтобы воспроизведение аудио шло на фоне (возможно даже отдельным процессом). Функция взята из примера библиотеки Audio на офф. сайте. Добавил только filename (имя проигрываемого файла).
Вот функция проигрывания музыки:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
void PlayMusic(String filename)
{
  File myFile = SD.open(filename);
  int count = 0;
  const int S = 1024; // Number of samples to read in block
  short buffer[S];
  while (myFile.available()) 
  {
    if (keyboard.available()) 
    {
      char c = keyboard.read();
      if (c == PS2_ESC) 
      {
        break;
      }
    }
    myFile.read(buffer, sizeof(buffer));
    int volume = 1200;
    Audio.prepare(buffer, S, volume);
    Audio.write(buffer, S);
    count++;
    if (count == 100)
    {
      //Serial.print(".");
      count = 0;
    }
  }
  Audio.rst();
  myFile.close();
}
По моим предположениям нужно переработать функцию так, чтобы она продвигалась вперёд не за счёт while, а за счёт loop.Но не получилось пока что это сделать так, чтоб работало.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.11.2019, 00:15
Ответы с готовыми решениями:

Многозадачность
Есть программа в которой нажимается кнопка и идет процесс обработки, в то время пока идет процесс...

0

Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.11.2019, 00:15

Многозадачность с Nightmare js
Я по примерам написал функцию, в которой Nightmare парсит страницу. При отладке я запускал функцию...

Многозадачность в DOS
Хочу написать что-то типа надстройки на DOS, но как-то неудобно, что там одновременно может...

Вытесняющая многозадачность...
Всем известно, что в WindowsXP используется вытесняющая многозадачность... Однако, если мы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.