Вешайтесь embedded программисты. Мы за вами
Прочитал тут про chatgpt.
Надо же блеснуть знаниями.
Все на скрине ниже.
Прочитал тут про chatgpt.
Надо же блеснуть знаниями.
Все на скрине ниже.
Всеобщее повешение отменяется. Он начинает ленится как и все мы. Но полезное есть, его можно использовать чтобы план написания программы на типовые вещи не расписывать самому.
напиши программу для stm32f411ceu6. программа должна считывать с периодичностью раз в секунду ADC1 Ch1 и преобразовывать полученные значения в температуру. Шкала для температуры 5-100 градусов. Полученные значения выводить в uart1
К сожалению, я могу написать только общий алгоритм программы, поскольку требуется некоторая конкретика, такая как используемый АЦП и настройки UART. В дополнение к этому, необходимо будет настроить тактовый генератор для обеспечения правильной работы периферии.
Алгоритм программы:
1. Настроить порты GPIO для соединения АЦП и UART.
2. Настроить АЦП, установить нужный канал для измерения (Ch1).
3. Подготовить переменную для хранения преобразованного измерения.
4. Запустить бесконечный цикл:
5. Начать преобразование (ADC_StartConversion).
6. Дождаться окончания преобразования (ADC_WaitForConversion).
7. Получить значение измерения (ADC_GetConversionValue).
8. Преобразовать полученное значение с учетом калибровки АЦП и коэффициента преобразования в температуру.
9. Ограничить температуру по шкале 5-100.
10. Отправить температуру в UART (USART_SendData).
11. Задержать выполнение цикла на 1 секунду (например, с помощью функции delay).
5. Завершить программу.
Это общий алгоритм, который может варьироваться в зависимости от используемого АЦП и UART. Для конкретных настроек требуется обратиться к документации и исходному коду библиотек. Надеюсь, это поможет Вам начать разработку Вашей программы.
Блять чего вы минусите то? Мне чтобы ваше любопытство удоволетворить, надо собрать стенд чтоли с лампочкой на этой ноге? Сказано же, что примерно все правильно.
Еще один... Тебе что принципиально надо узнать? Давай 1000 рублей переводишь в фонд какой-нибудь, например детям Донбасса сюда чек выкладываешь, и я соберу стенд и покажу что получилось? Если нет - то идите сами ищите все что вам интересно.
Опять же, зависит от задачи. Например, была такая. На коллбеке обработка 2 мс, в итоге переключение источников шло долго, нагрузка валилась по питанию. Без коллбека только с минимумом проверок и записью в регистры - менее 50 мкс, всё ок.
Я не спорю что колбеки не такие быстрые. Но если у вас обработка колбека аж 2 мсек, в то время как дернуть по прерыванию нужный флаг 50мкс, может колбек через жопу написан?
Программировать в 12 лет начинал для себя и не думал ни о каких заработках. В итоге вышло этим зарабатывать.
Так же и теперь не думаю)
Ну это как заявить, что не следует учиться программировать в Windows, т.к. в промке используют Линукс)
Однако, как в 12 лет я не понимал, в чём моя ошибка, программируя в закрытом Windows, так и в 32 не понимаю, в чём моя ошибка, программируя в закрытом ESP32.
btw Линукс легко освоился, когда понадобился)
Я вам сказал прописную истину. В промке это не используется. Если вы для себя делаете, то никаких возражений. В промышленности ваши зания именно этого чипа не нужны. Я об этом написал. Вы для себя или для заработка?
Видите ли. Чтобы не говорили про промышленность, она работает по правилам - по максимуму не от кого не зависеть. У нас тут меланддр и прочие байкалы пытались объяснить, но сразу поняли что неблагодарное дело.
Подумайте еще раз - вам деенг приносит? Точно? Если нет, то вернитесь к фундаменту.
Может спасибо мне скажете лет через десять.
Мне кажется я вас понимаю. Когда выбирал свой первый mcu, мне показалось (может быть только лишь показалось), что stm32 это сложно. Не в плане самого микроконтроллера, а в плане сообщества. Выбрал esp32)
ПыСы: это не я поставил минусы.
И вы сделали ошибку. Увы. При всем хорошем в есп32, это закрытая архитектура. В промке такое не используют, сколько бы вам не говорили обратное.
Так я и узнал конкретно в своем примере, что задачи в вебе для популярных продуктов он не может решить. Тут ты приходишь со своим постом и "пыщ пыщ, вешайтесь, программисты, чат уже может писать код!" Может, думаю, в других ветках разработки чат умеет, а веб - это экзотика? Нет, нихуя. Когда тебя в комментах спросили: а это хотя бы работает? - ты начал морозиться: да я не проверял вообще-то, но ведь пишет, сами проверяйте! Ну то есть ты пустомеля, который восхваляет секретаршу из анекдота, умеющую писать со скоростью 20 тысяч символов, но у которой почему-то получается ерунда.
Тебе и подобным тебе написано, что скорее всего работает, если не устраивает такой ответ, берете и проверяете сами.
Но если даже не сработает, то канва задана, не сработать может если начальная конфигурация не совсем правильная (тактирование, режим работы ноги микроконтроллера и так далее). Если не сработает, то просто именно эта часть должна быть перегенироврована в CubeMX.
За сим иди нахуй со своими гнилыми предъявами и обоснованиями.
Самое смешное не будь вы такими осатаневшими требователями результата, нарвроде вам кто-то что-то должен, я бы может под настроение и проверил. Но вот хуй вам. Живите теперь с этим.
Блять, а что плохого, чтобы узнать, верный код или нет? Я пробовал с помощью чата добавить блок в конфиг nginx, дохуя как бы популярный сервер, так этот пидарас мне написал с ошибкой, которую я как раз пытался исправить, я ему кусок кода его же сую, спрашиваю: вот это не работает, тут есть ошибка? Он: есть. Я: исправь, напиши рабочий конфиг, он начал рассказывать, как исправить, но конфиг нихуя не написал, а его советы в том месте дохуя общие и абстрактные, один хер гуглить надо было для правок. И чё толку от кода, который не будет работать? Чтобы вместо одного программиста нанимать троих, чтоб один через чат код писал, а двое баги исправляли?
мне сдается что человек загоняется по глубинным знаниям, скорость разработки для него вторична. а уж про линейку контроллеров а не вылизывать один камень он даже не думал.
Кому нахрен это надо?! Понятно что без регистров не обойтись, но писать на регистрах когда можно без них, нафига?! *ответ чат гпт* :)
А знаете, я своего рода тоже эмбед программист.
У меня ушёл примерно месяц чтобы в первый раз помигать лампочкой через микроконтроллер.
Это время состояло из месяца ожидания микроконтроллера с АлиЭкспресс, 1 вечера на изучение как вообще всё это включается и как пользоваться IDE. И 15 минут на написание моего первого мигательного кода.
Да вы прирожденный эмбеддер! Я пока понял что к чему прошло полгода. Правда надо делать скидку на то что я темой заинтересовался по стм32 когда еще вообще ничего толком не было.
Для такой задачи - да, норм, но если дело доходит до использования каких-нибудь таймеров, то уже по-любому, лезть в документацию, а там само собой сводится к тому, что начинаешь писать сразу в регистры, ну или с СПЛ, на крайняк
Да ладно вам, калокуб вполне уже торт, все нормально и через него сделать можно. Колбек на нужное поставить и всего делов.
нет - использование HAL для такой задачи.
Да с чего вдруг нет то? Тут хал не ради хала, а наиболее юзерфрендли представление, которое мышекликаньем сделать может любой желающий и хоть чуть в этом шурупящий.
Лига КИПиА
37 постов452 подписчика
Правила сообщества
Правила - в соответствии с общими правилами Пикабу.