0 / 0 / 0
Регистрация: 30.01.2023
Сообщений: 5
|
||||||
Мигание светодиодом на микроконтроллере LPC432022.03.2024, 00:18. Показов 925. Ответов 4
Доброго времени суток читающим, возикла проблема при выполнении стандартной задачи - не могу поморгать светодиодом, подсоединенным к ножке P7_7 микроконтроллера LPC4320FBD144, но в силу моего небольшого опыта программирования микроконтроллеров что то у меня не получается))
Взяв мануал на тысячу с лишним страниц я нашел регистры, вроде как отвечающие за управление ножкой, и у меня получился такой код:
Был бы очень признателен, если бы мне все это разжевали как маленькому ребенку Заранее спасибо
0
|
22.03.2024, 00:18 | |
Ответы с готовыми решениями:
4
Мигание светодиодом(ми) Плавное мигание светодиодом
|
952 / 390 / 59
Регистрация: 22.09.2023
Сообщений: 1,138
|
|
22.03.2024, 03:07 | |
В чем именно это выражается? Светодиод не светится вообще или горит "вполнакала"? Предполагаю, что второе.
Любой вменяемый компилятор с включенной оптимизацией этот код выкинет, как "не меняющий состояние абстрактной машины" и ваш светодиод будет мигать очень-очень быстро, сливаясь в постоянное неяркое горение. Чтобы он работал так, как вы хотите, надо j объявлять с квалификатором volatile. У тому же после прохода первого цикла у вас j останется равным 1000000 и все последующие циклы будут пропущены. Лучше объявлять такую переменную прямо в цикле: for(int volatile j = 0; j < 1000000; j++);
0
|
0 / 0 / 0
Регистрация: 30.01.2023
Сообщений: 5
|
||||||||||||||||
22.03.2024, 09:07 [ТС] | ||||||||||||||||
Да, вы правы, я допустил ряд тупых ошибок, я этот код в пути на коленке накидал с телефона))
Фактически, если я изменю j на volatile, и если я нормально напишу циклы задержки, то все равно ничего не поменяется. Светодиод как не горел, так и не будет гореть, и он не горит в полсилы. Скажу прямо: пытаюсь изменить исходный код прошивки на HackRF. Я пытался это сделать по образу и подобию того, как там управляются светодиоды RX, TX и USB. Грубо говоря, вот код:
0
|
952 / 390 / 59
Регистрация: 22.09.2023
Сообщений: 1,138
|
|
22.03.2024, 10:09 | |
Увы, тут не знаю. Может вы заливаете не новую прошивку, а оригинальную, без ваших изменений?
Добавлено через 11 минут Дополнено: и зря вы добавили свой светодиод в середину массива. Ведь теперь все обращения к LED4 из остального кода будут дергать ваш светодиод вместо GPIO(5, 26). И даже если вы измените порядок в led_t нет гарантий, что какой-нибудь "мамкин хакер" в остальном коде не обращается к LED4 просто через gpio_led[3] или led_on(3)/led_off(3) (судя по typedef это не плюсы, тут можно вместо enum подставить int не получив от компилятора по рукам).
0
|
0 / 0 / 0
Регистрация: 09.05.2022
Сообщений: 1
|
|
11.02.2025, 16:23 | |
Здраствуйте подскажите пожалуйста в какой среде вы редактируете и компилируете проект hackrf one
0
|
11.02.2025, 16:23 | ||||||
Помогаю со студенческими работами здесь
5
Мигание светодиодом на ATMega8515 (Proteus)
ATmega128. Мигание светодиодом через таймер0 Мигание светодиодом на PIC. Организация задержки Управляем СВЕТОдиодом Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
Новые блоги и статьи
![]() |
||||
Работа с объемным DOM в javascript
Htext 04.04.2025
Сегодня прочитал статью тут о расходах памяти в JS, ее утечках и т. п. И вот что вспомнил из своей недавней практики. Может, кому пригодится. Хотя, в той статье об этом тоже есть.
Дело в том, что я. . .
|
Оптимизация производительности Node.js с помощью кластеризации
run.dev 04.04.2025
Масштабирование приложений для обработки тысяч и миллионов запросов — обыденная задача для многих команд. Node. js, благодаря своей асинхронной событийно-ориентированной архитектуре, стал популярной. . .
|
Управление зависимостями в Python с Poetry
py-thonny 04.04.2025
Стандартный инструмент для установки пакетов в Python - pip - прекрасно справляется с базовыми сценариями: установил пакет командой pip install и используешь его. Но что произойдёт, когда разные. . .
|
Мониторинг с Prometheus в PHP
Jason-Webb 04.04.2025
Prometheus выделяется среди других систем мониторинга своим подходом к сбору и хранению метрик. В отличие от New Relic, который использует агентный подход и отправляет данные во внешнее хранилище,. . .
|
Пакет Context в Golang: Управление потоками и ресурсами
golander 04.04.2025
Работа с горутинами в Go часто напоминает управление непослушными детьми - они разбегаются кто куда, делают что хотят и не всегда завершаются вовремя. К счастью, в Go 1. 7 появился пакет context,. . .
|
Контейнеризация React приложений с Docker
Reangularity 03.04.2025
Контейнеризация позволяет упаковать приложение со всеми его зависимостями в автономный контейнер, который можно запустить на любой платформе с установленным Docker. Это существенно упрощает процессы. . .
|
Свой попап в SwiftUI
mobDevWorks 03.04.2025
SwiftUI, как декларативный фреймворк от Apple, предоставляет множество инструментов для создания пользовательских интерфейсов. В нашем распоряжении есть такие API как alerts, popovers, action sheets. . .
|
Антипаттерны микросервисной архитектуры
ArchitectMsa 03.04.2025
Хорошо спроектированная микросервисная система может выдержать испытание временем, оставаясь гибкой, масштабируемой и устойчивой к большинству проблем. Такая архитектура обладает высоким уровнем. . .
|
std::mutex в C++: Советы и примеры использования
bytestream 03.04.2025
std::mutex - это механизм взаимного исключения, который гарантирует, что критический участок кода выполняется только одним потоком в каждый момент времени. Это простое, но могущественное средство. . .
|
Не удержался от оценки концепции двигателя Стирлинга.
Hrethgir 03.04.2025
Сколько не пытался - она выдавала правильные схемы, причём случайно рисовала горячие области в середине, холодные по краям, трубки с краёв в низ и магнит в соединяющей, но при этой выдавала описание. . .
|