Требуется перевести незаконченный проект с Лазарус на Delphi 7, связанный с обработкой двумерной графики. Необходимо перенести существующий код (84 кб PAS и 8 форм) на Delphi, сохраняя текущий функционал и устраняя глюки. Задача не объемная и выполнимая на первом этапе.
Переработка оригинального проекта от STMicroelectronics.
Техническое задание.
Переработка оригинального проекта от ST.
Используемое ПО:
STM32CubeMX, Keil mVision.
Исходные данные оригинального проекта:
https://github.com/STMicroelectronics/STM32CubeF4
Каталог оригинального проекта:
STM32CubeF4-master\Projects\STM32F4-Discovery\Examples\BSP
Тестовая плата:
С контроллером STM32F407VGT6
Цель:
Убрать из проекта всё, что касается светодиодов, акселерометра
и МЕМС микрофона. Оставить только
обработку сырых WAV аудио. Добавить в проект SD карту Fat32. Научить проект проигрывать файлы, которые лежат на SD карте. Выбор файла для воспроизведения — по имени.
Переработать обработчик воспроизведения так, чтобы
можно было в процессе воспроизведения
файла останавливать воспроизведение.
Остановить воспроизведение — значит
прекратить использование текущего
файла, который воспроизводится. Это
значит освободить файл. Это не пауза.
Это именно СТОП. И после этого ожидать
новой команды воспроизведения.
Автомат (не блокирующий) для работы со звуковыми
файлами должен располагаться в блоке
main().
int main(void)
{
HAL_Init();
SystemClock_Config();
init_all_periph();
stopFlag=0; //управляющий сигнал СТОП
currFile=""; // Имя текущего аудио
playAvtomat=0; //Установить извне в 1 для начала воспроизведения
while(1)
{
if (playAvtomat==1)
{
openPlayFile(currFile);
playAvtomat=2;
}
else if (playAvtomat==2)
{
startPlayFile(currFile);
playAvtomat=3;
}
else if (playAvtomat==3)
{
if (stopFlag==1);
{
playAvtomat=100;
}
else
{
continuePlayFile(currFile);
}
}
else if (playAvtomat==100)
{
stopFlag=0;
playAvtomat=0;
stopPlayFile(currFile);
currFile="";
}
{
//Мой код
}
}
}
Оригинальный проект компилируется нормально. Звуковой
файл воспроизводится как положено. Все
действия с исходными данными согласно
файла:
STM32F4-Discovery\Examples\BSP\readme.txt
Работающий проект на выходе — это обязательно
связка Cube+Keil, чтобы можно было добавлять периферию по мере
необходимости.
Заявки фрилансеров
Похожие заказы
- Прикладное ПО2 заявкиЗакрыт4 года назад
Требуется разработка приложения на VBA для Excel, которое будет включать несколько форм для ввода данных и функционал для размещения и обработки этих данных в листах. Подробности указаны в прикрепленном техзадании.
Прикладное ПО1 исполнительЗавершен4 года назадСоздать прикладное ПО для сбора базы данных номеров автоинформаторов России. Программа должна выполнять поиск на SERP Google и валидировать номера, звоня на них. Если ответ длится более 120 секунд, номер считается подходящим. Используйте существующие модули и API для компоновки функционала. Подробное ТЗ предоставлено.
Прикладное ПО1 заявкаЗакрыт4 года назад- $5
Создайте приложение на Qt Creator на C++, которое демонстрирует движение меньшей окружности внутри большей. Реализуйте меню для задания цвета и толщины линий окружностей. Задание включает проработку интерфейса и анимации.
Прикладное ПОнет заявокЗакрыт4 года назад Требуется разработка кастомизированного клиента на основе MS Forms, который будет встроен на сайт. Ожидается создание user-friendly опросника для сбора данных от клиентов, с улучшенным функционалом и UX/UI. Дополнительные функции будут указаны в техническом задании.
Прикладное ПО1 заявкаЗакрыт4 года назадТребуется разработать решение для успешной загрузки сайта букмекера bet365 с использованием Selenium. Существующий код на Python приводит к бесконечной загрузке и белому экрану. Необходимо предоставить рабочий пример, чтобы получить доступ к переменной driver для дальнейших манипуляций.
Прикладное ПО2 заявкиЗакрыт4 года назад- $40
Требуется разработать модуль для Node.js, который будет вызывать консольную программу и обрабатывать результаты её работы, записываемые в два файла. Также необходимо предоставить тесты к модулю. Подробное описание задачи и спецификации программы содержится в ТЗ.
Прикладное ПО1 заявкаЗакрыт4 года назад Разработать алгоритм на MATLAB для нахождения максимального и минимального значений, встречающихся более одного раза в целочисленном массиве. Создать m-функцию с входными и выходными параметрами, обеспечивая корректную обработку пользовательского ввода и проверку данных. В случае пустого массива, использовать диалоговый ввод для получения данных от пользователя.
Прикладное ПО1 исполнительЗакрыт4 года назадТребуется разработать Viber бота на Python, который будет отправлять сообщения в группу. Сообщение должно храниться в переменной message_to_group. Необходимы навыки работы с API Viber и Python.
Прикладное ПО10 заявокЗакрыт4 года назад- $67
Необходимо исправить баг, связанный с отправкой сообщений по времени и дате в приложении-боте. Также требуется улучшить работу бота и добавить новый функционал. Идеальный кандидат должен иметь опыт разработки на Python.
Прикладное ПО17 заявокЗакрыт4 года назад