|
95 / 15 / 3
Регистрация: 09.07.2009
Сообщений: 886
|
|
Программирование АЦП ADC_10_F103C08.05.2025, 12:14. Показов 5224. Ответов 69
Метки нет (Все метки)
Здравствуйте!
Хотел бы научиться программировать АЦП на C/C++. Мне нужно оцифровать аналоговые сигналы с датчиков, подключенных к АЦП (диапазон напряжений 0-3В). Приобрел АЦП https://aliexpress.ru/item/100... 675ahH6GGB. В описании сказано, что АЦП содержит встроенный основной управляющий чип STM32F103C8T6. Драйвер АЦП установился (скриншот прикрепил). Подскажите, пожалуйста, какие команды нужно использовать для управления АЦП (чтение напряжений на контактах АЦП, установка параметров АЦП и др.)? Мне нужно искать систему команд для чипа STM32F103C8T6?
0
|
|
| 08.05.2025, 12:14 | |
|
Ответы с готовыми решениями:
69
Расширение АЦП микроконтроллера и подключение к АЦП датчиков Mega16 и неиспользуемый АЦП (питание ацп?) Как связать таймер с АЦП и АЦП с DMA? |
|
|
|
| 12.05.2025, 18:00 | |
|
tumanovalex, если есть желание/необходимость конкретно погрузится в разработку на STM, то ST-Link не только "лучше", но будет крайне необходим.
Если проект - помигать светиком, то он не нужен. А когда дело дойдет до более серьезных вещей, то нужно будет иметь инструменты для пошаговой отладки программы. На платах именно для этого предусмотрены SWD/JTAG интерфейсы. Вот, к примеру, на моей 429-Discovery ST-Link внедрен прямо в плату (обведено кружком), а выводы SWD сверху (обведено прямоугольником) - позволяют использовать ее же в качестве программатора для других плат..
0
|
|
|
95 / 15 / 3
Регистрация: 09.07.2009
Сообщений: 886
|
|
| 12.05.2025, 18:12 [ТС] | |
|
Понятно. Закажу.
0
|
|
|
95 / 15 / 3
Регистрация: 09.07.2009
Сообщений: 886
|
|
| 12.05.2025, 18:27 [ТС] | |
|
Спасибо за ссылки.
0
|
|
|
0 / 0 / 0
Регистрация: 10.05.2025
Сообщений: 24
|
|
| 12.05.2025, 18:49 | |
|
wizard41, кстати вопросик а есть ли разница между ними?
https://aliexpress.ru/item/100... 1629yKMN19 https://aliexpress.ru/item/100... 9391365850
0
|
|
|
Заблокирован
|
|||||
| 12.05.2025, 22:04 | |||||
|
А вот для отладки есть лишь SWD/JTAG. Благо, внутрисхемная отладка нужна практически никогда. И да: отладка по SEW/JTAG останавливает камень. Поэтому в большинстве случаев от нее никакого толку нет! И когда я (да и, думаю, все) осваивал USB на STM32, пользовался исключительно отладкой по USART (3Мбод, выплевывал всю нужную мне информацию; понятно, пришлось завести два буфера по полкилобайта-килобайту и пользоваться DMA для отправки очередного). Добавлено через 6 минут Добавлено через 4 минуты Фактически, как я уже выше писал, только один или два раза мне реально помог SWD: проверил, что в регистрах все правильно, но периферия не работала. Оказалось, что вместо нужного МК китайцы мне отбраковку подсунули (скажем, вместо F103C8 засунули F103C6, но с таким же количеством флеша и ОЗУ, как в восьмерке; а периферия нужная отсутствует)…
0
|
|||||
|
Заблокирован
|
|
| 12.05.2025, 22:09 | |
|
А вот так выглядит мой позор. Крайне быстро хотелось сделать "девборду", а фоторезис уже поперек горла стоит (да и паять LQFP, даже такой простой, без паяльной маски - тот еще мазохизм).
[Везде между ногами A12 и A15 впаиваю резистор 1.5кОм, а ненужный 10кОм с нижней стороны выпаиваю - простейший способ управлять подтяжкой USB DP на "синей таблетке". Можно, конечно, поменять 10к на 1.5к, а ногу DP переводить в режим GPIO на время инициализации USB, подтягивая к земле, но это - более "грязный хак".]
0
|
|
|
|
||||
| 12.05.2025, 22:44 | ||||
|
Разумеется, для "начинающих" может и не надо (под вопросом?). А есть случаи, когда нужно рассмотреть, например, правильность заполнения массива по некоторому синхро-сигналу... Ни какие USART'ы тут не помогут, ибо пока он отправит текущее состояние - положение вещей успеет изменится уже 100 раз. Контролировать процесс исполнения программ в МК намного удобнее специально разработанными для этого методиками и (!) специально для этого предназначенными встроенными модулями в сам МК. При входе в режим отладки - остановка работы CPU совершенно правильное действие. Далее, можно продолжить работу пошагово, до точки останова или полностью без остановки. При этом получая точные состояния и значения переменных внутри МК на конкретный момент. Это очевидные вещи при отладке, для этого она и существует.
0
|
||||
|
12 / 9 / 4
Регистрация: 30.09.2020
Сообщений: 31
|
|
| 12.05.2025, 22:54 | |
|
tumanovalex, А Вы не пробывали читать datasheet , ну или если хотите HAL и CUBEMX, то https://istarik.ru/blog/stm32/113.html
0
|
|
|
|
|||
| 12.05.2025, 23:04 | |||
|
А, забыл это прокомментировать:
Как говорится: почувствуйте разницу
0
|
|||
|
Заблокирован
|
|||||
| 13.05.2025, 09:47 | |||||
|
Очень много подобных вещей, где ни в коем случае нельзя тормозить камень. Ну, а пошаговая отладка, как я уже говорил, бывает нужна практически никогда. Скажем, в случае, если явно непонятно, почему камень уходит в хардфолт: можно посмотреть, с какого адреса был вызов прерывания, да увидеть проблемное место. Понятно, что даже внимательное чтение кода не спасет от обращения к невыровненной переменной в Cortex-M0 (если твердо не помнить это как истину, что переменные в структурах должны быть выровнены, а не упакованы, скажем, для хранения во flash). Это что! Когда у нас на БТА отмер pep-контроллер азимутальной оси, я в течение рабочего дня (тоже на макетке) сварганил для него замену, за пару часов всю эту паутину подключили и оно заработало! Благо, функционал был элементарный и прошивку я прямо на месте буквально за час-полтора отладил и телескоп заработал. Потом это тоже переросло в нормальный вид. Кстати, для многих наших задач очень удобным оказался китайский клон контроллера FX3U. Естественно, с моей прошивкой, чтобы можно было его вменяемыми средствами программировать. Будете, наверное, смеяться, но у меня уже под десяток разных изделий работает, в которых больше, чем 95% компонентов (в т.ч. и сами печатные платы) приобретены на "алике"! Да многое и просто невозможно в России купить: пытались в прошлом году купить пяток "настоящих" ИК-датчиков MLX90640 (нужно, чтобы ИК-allsky сделать). На алике они по 2500, а у нас от 10тыр за штучку. ОК, в нескольких местах товарищ списался, но в большинстве ответили, что не могут поставить, т.к. "ссанкции". В одном месте даже счет оплатил, а через 2 недели вернули деньги с извинениями, мол, даже через Казахстан не смогли. Пришлось брать по 5 датчиков у двух разных продавцов на алике. У обоих все работает, но, увы, датчики - отбраковка (не настроены на работу с отрицательными температурами). К счастью, оказалось, что даже в таком виде они "видят" разницу между чистым небом и облаками.
0
|
|||||
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
||||
| 13.05.2025, 11:27 | ||||
|
Теоретически, еще с первоначальным освоением простейшей периферии может помочь. Ну там таймеры, UART - чтобы дергать регистры руками, а не прошивать камень каждый раз. Возможно, люди, освоившие внутрисхемную отладку, могли бы накидать более полезных примеров.
0
|
||||
|
Заблокирован
|
||
| 13.05.2025, 11:40 | ||
|
Понятно, что этот способ работает, но все-таки в спецификациях USB про такое ничего не сказано, там либо в воздухе, либо подтянуто через резистор к земле/питанию, но не напрямую на земле.
0
|
||
|
|
|||
| 13.05.2025, 12:13 | |||
|
По поводу отладки: не хочется холиварить на эту тему, понятно что надобность того или иного инструментария определяется потребностями самого разработчика. Однако, если это кому-то не нужно (не видит в этом пользы) - это не значит, что это не нужно абсолютно всем.
Отладка применяется не только в каких-то фатальных случаях или ошибках: с помощью нее можно просмотреть какие-л. данные процесса, проверить/изменить какие-л. коэффициенты... изменить "руками" направление ветвления какого-л. алгоритма и все такое прочее. Причем все это можно сделать прям из коробки, без танцев с UARTами / USB.. Например, нужно выставить в каком-нить регуляторе поправочный коэффициент и забыть про него. Очень странно городить для этого полноценный обмен через USB/UART... Это довольно трудоемко (для начинающих), плюс не всегда удобно - лепить транспортные примочки/преобразователи, куда-то выводить в терминалы + как-то вводить данные обратно + в программе МК предусматривать изменение данных из внешнего мира... В общем, тут это явно лишнее. Пользоваться этим или нет - каждый определит сам для себя, но знать про такую возможность нужно. Вот ТС явно не знал...
0
|
|||
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
|||
| 13.05.2025, 13:03 | |||
|
0
|
|||
|
95 / 15 / 3
Регистрация: 09.07.2009
Сообщений: 886
|
|
| 13.05.2025, 13:09 [ТС] | |
|
0
|
|
|
Заблокирован
|
||||
| 13.05.2025, 14:44 | ||||
|
0
|
||||
| 13.05.2025, 14:44 | |
|
Алгоритм работы с ацп АЦП STM32F103 АЦП, вопрос по книге Ю.Ревич "Практическое программирование Сопряжение микроконтроллера с АЦП Нарисуйте блок-схему программы для АЦП на ATMega8 ATtiny13. Работа с АЦП (Си) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки
Правым кликом по серверу -> отладочная информация -> edit
Заменить "net": "raw", на "net": "tcp",
Нажать кнопку reload.
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|