Найти тему

Работаем с АЦП на stm32. Часть 1.

Оглавление

Всем привет! Сегодня будет первая часть цикла статей про работу с аналогово-цифровым преобразователем на микроконтроллере stm32. Если подробнее - разберём настойки и напишем код. Тестировать программу и выводить данные будем с следующих статьях, так как для этого нужно ещё изучить отправку данных по UART. Скажете, это же можно сделать через отладку, и будете правы. Но во-первых, у меня отладчик решительно отказывается работать, а во вторых мы не ищем лёгких путей.

Давайте начинать.

1. Настройка АЦП.

Чтобы произвести настройку, создаём проект и выбираем вкладку analog. В ней нажимаем на ADC1( analog-digital converter, или по русски - аналогово-цифровой преобразователь). В выпавшем списке выбираем IN1, то есть первый канал.

Больше ничего выбирать не нужно, настройка завершена.

2. Пишем код.

-2

Описывать буду по строчками кода.

92 строка. Калибровка АЦП. В скобках пишем наш АЦП. (В нашем случае первый).

93 строка. Создаём переменную, в которой будем хранить значения.

100 строка. Для того, чтобы АЦП начал преобразование, его необходимо запустить. В скобках пишем наш АЦП.

101 строка. Чтобы выполнить преобразование, необходима некоторая задержка. В скобках пишем сначала номер нашего АЦП, а после - время задержки в миллисекундах. Если он выполнит преобразование быстрее, он не будет ждать того момента, когда время истечёт. Поэтому, не нужно ставить очень маленькое число. ( иначе возможна ошибка).

102 строка. Присваиваем нашей переменной полученное значение. В скобках, опять же, пишем наш АЦП.

103 строка. Остановка преобразования. И опять в скобках номер АЦП.

Ну а на сегодня всё. В следующей статье разберём UART, ну а затем с помощью него выведем полученные данные на монитор компьютера.

Всем до скорого!