[Из песочницы] Мигаем светодиодом в STM32 на ассемблере
Некотрое время назад захотелось мне освоить ассемблер и после прочтения соответствующей литературы пришло время практики. Собственно о ней и пойдет дальше речь. Первое время я практиковался на Arduino Uno (Atmega328p), теперь решил двигаться дальше и взялся за STM32. В руки ко мне попала STM32F103C8 собственно на ней и будут проходить дальнейшие эксперименты.
Инструменты
Я использовал следующие инструменты:
Notepad++ — для написания кода
GNU Assembler — компилятор
STM32 ST-LINK Utility + ST-LINK V2 — для прошивки кода на микроконтроллер и отладки
Начало
Основная цель программирования на ассемблере для меня — это обучение. Так как никогда не знаешь где наткнешься на очередную интересную проблему, то было решено писать все с нуля. Первостепенной задачей было понять как работает вектор прерываний. В отличие от Atmega в STM32 вектор прерываний не содержит инструкций перехода:
jmp main
В нем прописываются конкретные адреса и во время прерывания процессор сам подставляет прописанный в векторе адрес в PC регистр. Вот пример моего вектора прерываний:
.org 0x00000000
SP: .word STACKINIT
RESET: .word main
NMI_HANDLER: .word nmi_fault
HARD_FAULT: .word hard_fault
MEMORY_FAULT: .word memory_fault
BUS_FAULT: .word bus_fault
USAGE_FAULT: .word usage_fault
.org 0x000000B0
TIMER2_INTERRUPT: .word timer2_interupt + 1
Хочу обратить внимание читателя, что первой строкой идет не reset вектор, а значения которым будет инициализироваться стэк. Сразу следом за ним идет reset вектор после которого следуют 5 обязательных векторов прерываний (NMI_HANDLER – USAGE_FAULT).
Читать дальше →
Читайте также:
Вчера 20:59
Вчера 21:33
00:17
Вчера 19:15
Moscow.media
Частные объявления сегодня
Пожар в центре Москвы локализован на площади 600 квадратных метров
Заместитель генерального директора ГПМ Радио по дистрибуции и технологиям отмечен наградой «Медиа-Менеджер России – 2024»
В Подмосковье росгвардейцы провели тематическую встречу с детьми
Совладелец «ТЕХНОНИКОЛЬ» Игорь Рыбаков запустил на Дальнем Востоке бизнес-клуб «Эквиум»
Стоя или сидя: как поза при употреблении пищи влияет на пищеварение, рассказал гастроэнтеролог Садыков
Жара невыносимая +50, вкусно поесть не получилось, цены высокие, красоты особой нет: российской туристка поняла, что в эту страну она больше не хочет
Гала-закрытие I Международного фестиваля «Мир классического романса» состоится в Капелле Санкт-Петербурга
КАК АНТАГОНИСТ МОЖЕТ ИЗМЕНИТЬ МИР ИЛИ ИСТОРИЯ ОДНОГО МОСКОВСКОГО РЭПЕРА.
An iconic Michael Jordan photo will be on Tyler Reddick's car as he races through Chicago
Portugal vs France – Euro 2024: Ronaldo and Mbappe have one last dance in quarter-final tie – stream FREE, TV, team news
Sky Sports issue grovelling apology to Nottingham Forest after Gary Neville’s ‘Mafia gang’ outburst
‘I made it work that night’: Stevenson reflects on negative fan response as he readies for next outing
Языковые модели на основе искусственного интеллекта, повышение производительности сотрудников и экономия ресурсов: BIA Technologies обозначила основные тренды цифровой трансформации
Портативный сканер штрих-кодов Heroje H133U на базе CMOS-матрицы
Военные следователи провели в Ялте проверку лиц, не вставших на воинский учет
В Екатеринбурге восьмиклассница оформила на мать кредит для мошенников
Dead Space x Battlefield 2042 crossover event looks fun, even if it isn't quite what Dead Space fans have been hoping for
Macrumors: «В iPhone 17 Slim будет 8 ГБ ОЗУ, а стоить он будет больше Pro Max»
Релиз Otherworld Three Kingdoms на смартфонах — новичкам дают 100 гача-круток
Escape From Tarkov studio Battlestate Games has put a bounty on cheaters
Врач посоветовала, как пережить аномальную жару
КАК АНТАГОНИСТ МОЖЕТ ИЗМЕНИТЬ МИР ИЛИ ИСТОРИЯ ОДНОГО МОСКОВСКОГО РЭПЕРА.
Более 5 тысяч человек посетили культурно-просветительское мероприятие «Один день с Росгвардией» в Москве
Переподготовка "ПГС: проектирование зданий (расчётно-конструктивный раздел)”
Заместитель генерального директора ГПМ Радио по дистрибуции и технологиям отмечен наградой «Медиа-Менеджер России – 2024»
Пожар в центре Москвы локализован на площади 600 квадратных метров
Актера Римиса Сидабраса нашли мертвым в Москве
Переподготовка "ПГС: проектирование зданий (расчётно-конструктивный раздел)”
"Роснефть" — в Самару, РЖД — в Читу: Хитрый план Путина по переселению госкорпораций
Черчесов: сегодня английский тренер выиграл, но Якин не проиграл
Илон Маск сообщил об опасности использования мессенджера WhatsApp
Переподготовка "ПГС: проектирование зданий (расчётно-конструктивный раздел)”
Уимблдон. 5 июля. Алькарас сыграет первым запуском на Центральном корте, Синнер – последним
Медведев едва не проиграл на неудобном корте Уимблдона. Россиянин с трудом вышел в третий круг
Помощник Медведева заявил, что «дух Навального жив» и продолжает публиковать фейки о связи с «Мираторгом»
Хачанов не смог выйти в третий круг Уимблдона, проиграв 220-й ракетке мира
"Роснефть" — в Самару, РЖД — в Читу: Хитрый план Путина по переселению госкорпораций
Жить в небоскребах чаще всего хотят молодые люди в возрасте от 18 до 35 лет
Два человека пострадали при взрыве баллона на крыше автобуса в Москве
Музыкальные новости
Новый формат: каким будет VK Fest в Москве в этом году
ГУАП посетила делегация Университета Мпумаланга
Рой Джонс проведет бой с Джиганом
Ростовскую футбольную команду Басты покинули 17 игроков
Более 5 тысяч человек посетили культурно-просветительское мероприятие «Один день с Росгвардией» в Москве
Врач посоветовала, как пережить аномальную жару
МЧС Подмосковья: ураган повалил 123 дерева и повредил 11 машин
КАК АНТАГОНИСТ МОЖЕТ ИЗМЕНИТЬ МИР ИЛИ ИСТОРИЯ ОДНОГО МОСКОВСКОГО РЭПЕРА.
Жители Москвы и Петербурга в среднем добираются до работы около часа
В Москве состоялось торжественное открытие нового творческого проекта «Галерея художников»
Иванникова Наталья прошла в полуфинал конкурса «Лидеры строительной отрасли»
Моди собирается обсудить торговый дисбаланс с Путиным в Москве
Два человека пострадали при взрыве баллона на крыше автобуса в Москве
Автобус насмерть прижал своего водителя к эвакуатору в Москве
Москвичи смогут бесплатно отправить письма и открытки на 15 станциях метро
Водитель автобуса погиб в ДТП с четырьмя машинами в Бибиревском районе Москвы
«Ни Америке, ни России не нужна гонка ядерных вооружений» // Как 15 лет назад Барак Обама впервые посетил Москву
Моди собирается обсудить торговый дисбаланс с Путиным в Москве
Уроженка Москвы выбила с Уимблдона первую ракетку мира
Орбан анонсировал несколько таких же неожиданных встреч, как с Путиным
Вильфанд сообщил о прекращении опасных для здоровья "египетских ночей" в столице
Врач Мескина: если у человека сильный иммунитет, то он не заболеет от сквозняка
В столице наградили лучших ветеринарных врачей
Депутат МГД Семенников проверил ход работ по капремонту взрослой поликлиники в Северном Бутове
Орбан ответил на вопрос Life.ru о реакции Зеленского на предложение о мире
Кир Стармер заверил Зеленского в продолжении поддержки Великобритании
Ушаков: Орбан не передавал Путину посланий от Зеленского
"Спартак" объявил о расторжении контракта с Кейта Бальде
Шахматы и йога: что ждет посетителей «Лета в Москве. Все на улицу!» в выходные
Обновленный стадион "БАМ" открыли к юбилею магистрали
Футболист Кейта Бальде покинул "Спартак"
Собянин объявил о запуске программы льготного кредитования для инвесторов
Собянин: Киностудия Горького провела киноэкспедиции для московских школьников
Собянин пригласил посетить форум-фестиваль «Территория будущего. Москва-2030»
Сергей Собянин. Главное за день
Врач посоветовала, как пережить аномальную жару
Жителей и гостей Москвы предупредили о новой волне аномальной жары
Москвичам объяснили, как связаны смерчи и массовая застройка
В Якутии завершились VIII МСИ «Дети Азии»
Переподготовка "ПГС: проектирование зданий (расчётно-конструктивный раздел)”
Два человека пострадали при взрыве баллона на крыше автобуса в Москве
В Архангельской области появились станции зарядки электротранспорта
Терминал сбора данных (ТСД) промышленного класса SAOTRON RT42G
Собянин: Утвержден проект участка метро от «Липовой рощи» до «Ильинской»
Сергей Собянин утвердил проект нового участка Рублево-Архангельской линии метро
Выставка-настроение «Семья, согретая любовью, всегда надежна и крепка»
Глава Симферополя ходит на работу в рубашке polo итальянского дизайнера
В Крыму девушка на электросамокате рассекла лоб полуторагодовалой девочке
Героико-патриотическая выставка «И грянул бой, Полтавский бой!»
Два человека пострадали при взрыве баллона на крыше автобуса в Москве
Под дружное мычание: в Казани выбрали самую красивую корову Татарстана
В Ярославле на окружной дороге пострадали две велосипедистки
"Роснефть" — в Самару, РЖД — в Читу: Хитрый план Путина по переселению госкорпораций