- Павел Иванов
- Статьи
- Просмотров: 1062
Уроки программирования STM8. Урок 5. STVD + CXSTM8. Основы работы с АЦП. Практика
В микроконтроллерах STM8S обычных линеек, установлен аналогово-цифровой преобразователь с разрядностью (точностью) 10 бит. Конкретно в STM8S103F3T6 имеется 5 аналоговых линий AIN2-AIN6, способных преобразовывать напряжение в диапазоне от 0 до Vdd. Отладочная плата Blue pill, используемая в этой практике, питает процессор напряжением 3,3V. Соответственно на аналоговую линию можно подавать напряжение в диапазоне от 0 до 3.3V.
10-Битная точность означает, что диапазон напряжений 0-3,3V будет представлен в цифровом виде как 0-1023. 10-битное максимальное число - это 1023 (210-1). Цифра, полученная в результате аналогово-цифрового преобразования, называется дискретным значением АЦП.
Подробнее: Уроки программирования STM8. Урок 5. STVD + CXSTM8. Основы работы с АЦП. Практика

Прежде всего стоит отметить, что в практической работе совершенно не использовалась библиотека Standard Peripheral driver Library (SPL), чтобы избежать излишней абстракции и исключить процедуру поиска, установки, настройки - сейчас бы это только мешало и запутывало. При компиляции проекта использовались лишь определения периферии из заголовочных файлов компилятора Cosmic (CXSTM8). Посмотрим в заголовочный файл iostm8s103.h в котором описаны регистры периферии. Вот интересный фрагмент, описывающий порт PB. Управление всеми линиями этого порта умещается в пять восьмибитных регистров (однако на МС STM8S103F3T6 выведено лишь две линии порта PB, это PB4 и PB5)
Тривиальная, казалось бы, задача написать Hello world для STM8, но сделать это и понять окончательно все тонкости - вовсе не тривиальная задача. Существует 1001 способ помигать светодиодом на разных инструментах, со стандартной библиотекой периферии (SPL) и без нее, на Си и ассемблере. Я же хочу представить работу с той средой, которая уже имеется: STVD + CXSTM8. В качестве отладочной платы будет использоваться известная как "Blue pill" китайская плата, на борту которой стоит STM8S103F3P6. Такую плату можно приобрести на али (посмотрите предложения по ссылке
На сегодняшний день есть два очень популярных инструмента для разработки под микроконтроллеры STM8:
Микроконтроллеры STM8 от STMicroelectronics не отличаются выдающейся производительностью, объемами памяти (оперативной памяти от 1 до 6 кб). Они не выпускаются в корпусах DIP. По ним не так много учебников, как по PIC или AVR. Русскоязычная документация вовсе отсутствует. Все перечисленные недостатки компенсируются их преимуществами, растущим выпуском отладочных плат и возникновению обучающих статей в рунете (вроде этой). STM8 становятся все более популярными и годятся для современных проектов небольших дешевых устройств. Вот их основные преимущества: