Программирование сборки ARM GNU с нуля Язык ассемблера (2023) /Видеокурс/
24.09.2023 21:49
К концу этого курса вы освоите набор инструкций ARM, набор инструкций Thumb и набор инструкций Thumb-2. Вы сможете создавать структуры данных, такие как FIFO, в сборке. Вы также сможете создавать конечные автоматы, такие как машина Мура, используя только ассемблерный код.
Кроме того, этот курс научит вас пользоваться справочным руководством по микроконтроллерам и техническим описанием для извлечения нужной информации для профессионального создания драйверов периферийных устройств и микропрограмм. Для достижения этой цели в этом курсе не используются никакие библиотеки, исключительно язык ассемблера ARM. Вы сможете писать драйверы периферийных устройств на ассемблере - ADC, UART, SYSTICK, GPIO, GPTM.
Чему вы научитесь:
1. Освойте набор инструкций ARM
2. Пишите сложные программы на ассемблере
3. Реализуйте структуры данных на языке ассемблера
4. Пишите драйверы UART на ассемблере
5. Пишите драйверы GPIO на ассемблере
6. Освойте наборы инструкций Thumb и Thumb-2
7. Реализуйте конечные автоматы на языке ассемблера
8. Пишите драйверы АЦП на языке ассемблера
9. Пишите драйверы GPTM на ассемблере
Для кого этот курс:
1. Если вы новичок в программировании встраиваемых систем, пройдите этот курс.
2. Если вы опытный программист, пройдите этот курс, чтобы освоить архитектуру ARM и программирование на ассемблере.
3. Если вы переходите с других архитектур, таких как x86, на ARM, то это быстрый способ сделать это. Вы можете сразу приступить к работе с набором инструкций ARM.
Модуль 1 - Введение
1. Загрузка нашей интегрированной среды разработки IDE
2. Установка нашей интегрированной среды разработки (IDE)
3. Программирование: Написание простой программы на ассемблере.
4. Программирование: Написание простой программы на ассемблере без файла запуска.
Модуль 2 - Введение в архитектуры Arm
1. Вычислительное устройство
2. Системы счисления
3. Преобразование битов в команды
4. Философия дизайна RISC
5. Философия дизайна ARM
6. Фон Нуеман и Гарвардская архитектура
7. Регистры ARM Cortex-M
8. Векторная таблица ARM Cortex-M
Модуль 3 - Правила и директивы ассемблера
1. Наборы инструкций ARM,Thumb и Thumb-2
2. Предопределенные имена регистров
3. Часто используемые директивы
4. Обзор бинарных операторов
5. Программирование: переименование регистров
6. Программирование: выделение места в памяти с помощью директивы SPACE.
7. Программирование: замена содержимого регистра
Модуль 4 - Инструкция по загрузке-сохранению
1. Границы памяти
2. Часто используемые инструкции загрузки/сохранения (Часть I)
3. Часто используемые инструкции загрузки/сохранения (Часть II)
4. Часто используемые инструкции загрузки/сохранения (часть III)
5. Прединдексированная адресация
6. Постиндексная адресация
7. Порядок следования байтов
8. Определение областей памяти
Модуль 5 - Работа с константами и литералами
1. Кодировка инструкции MOV
2. Загрузка констант с помощью инструкции LDR
3. Загрузка констант с помощью инструкций MOVW и MOVT
4. Загрузка этикеток с инструкциями ADR, ADRL и LDR
5. Программирование: решение простого уравнения
6. Программирование: Импорт из C в Ассемблер
7. Программирование: экспорт из сборки в C
Модуль 6 - Арифметические и логические инструкции
1. Флаги
2. Флаги N и V
3. Флаги Z и C
4. Инструкции по сравнению/тестированию
5. Обзор логических операций
6. Введение в смены и ротации
7. Понимание логических сдвигов
8. Понимание вращений
9. Некоторые примеры сдвига и поворота
10. Обзор Инструкции по сложению и вычитанию
11. Обзор инструкций умножения
12. Умножение на константы
13. Обзор инструкции по разделу
14. Инструкции по работе с битами
15. Программирование: поиск максимального значения в массиве
16. Программирование: эксперименты с инструкцией LSL
17. Программирование: добавление подписанных чисел
18. Программирование: поиск минимального значения в массиве
19. Программирование: решение более сложного уравнения
20. Программирование: Деление на вычитание
Модуль 7 - Инструкции ветвления и цикла
1. Введение в ветки и циклы
2. Ветвление
3. Сравнить и разветвить
4. Петли в сборке
5. Условное выполнение
6. Блок ЕСЛИ-ТО
7. Программирование: вычисление факториала числа с использованием блока IF-THEN.
Модуль 8 - Инструкции стека
1. Введение в стек
2. Инструкции LDM и STM
3. Синтаксис инструкций PUSH и POP
4. Программирование: вталкивание и извлечение стека
Модуль 9 - Разработка драйвера ввода вывода общего назначения (GPIO)
1. Обзор модуля ввода/вывода общего назначения ARM Cortex-M
2. Получение нужной документации
3. Программирование: Анализ карты памяти чипа
4. Программирование: определение адресов для регистров
5. Программирование: установка вывода в качестве выходного вывода
6. Программирование: переключение вывода с помощью регистра выходных данных (ODR)
7. Программирование: переключение вывода с помощью регистра установки/сброса битов (BSRR)
8. Программирование: определение регистров для драйвера ввода
9. Программирование: реализация драйвера ввода
Модуль 10 - Разработка дайвера аналого-цифрового преобразования (АЦП)
1. Введение в аналого-цифровое преобразование
2. Понимание независимых режимов АЦП
3. Программирование: планирование проекта
4. Программирование: реализация функции инициализации
5. Программирование: реализация функции чтения АЦП
6. Программирование: тестирование драйвера АЦП
Информация о видео Название: Программирование сборки ARM GNU с нуля Язык ассемблера Автор: Israel Gbati Год выхода: 2023 Жанр: Видеокурс Язык: Английский (Русские субтитры. translate.google) Выпущено: Россия Продолжительность: 15 ч 27 мин Формат: MP4 (+доп.файлы) Видео: AVC, 1920x1080, ~370 Kbps Аудио: AAC, 128 Kbps, 48.0 KHz Размер файла: 6.28 Gb
Скачать Israel Gbati - Программирование сборки ARM GNU с нуля Язык ассемблера (2023) Видеокурс
Материалы на сайте опубликованы пользователями для обмена и ознакомления, администрация не несёт ответственности за их содержание.
Мы не храним никаких нелегальных материалов, а также материалов охраняемых авторским правом. На страницах сайта выложены только ссылки на файлы.
Если вы являетесь правообладателем какого либо контента и не желаете его распространения, сообщите нам и нарушение будет устранено.