51337

Изучение таймеров общего назначения и аналого-цифрового преобразователя микроконтроллера STM32F100RB

Лабораторная работа

Коммуникация, связь, радиоэлектроника и цифровые приборы

Некоторые характеристики модулей АЦП микроконтроллера STM32F100RB: 12ти разрядная разрешающая способность; 18 каналов из которых 16 внешние; возможность задавать время преобразования индивидуально для каждого канала 8 дискретных значений; возможность задания одиночного или непрерывного преобразования; самокалибровка; наличие оконного компаратора; запуск преобразования от внешнего источника; работа с модулем DM Injected chnnels инжектированные...

Русский

2014-02-09

62.87 KB

46 чел.

Министерство образования и науки РФ

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«Ижевский государственный технический университет

имени М. Т. Калашникова»

Кафедра «Мехатронные системы»

Лабораторные работы № 2,3

Дисциплина: «Микропроцессорная техника»

Тема: «Изучение таймеров общего назначения и аналого-цифрового преобразователя микроконтроллера STM32F100RB»

Выполнил: студент гр. 7-05-3

Лазарев Б.П.

Проверил:   преподаватель

Лекомцев П.В.

Ижевск 2012

Введение            3

Техническое задание          5

  1.  Разработка алгоритма программы        6
  2.  Разработка программы         8
  3.  Вычислительный эксперимент                   9

Вывод                      10

Список литературы                    10

Введение

Таймеры – неотъемлемое и весьма востребованное устройство в любом микроконтроллере.

Контроллеры STM32 имеют в своем составе три группы таймеров:

  1.  basic timers  — базовые таймеры;
  2.  general-purpose timers  — общего назначения;
  3.  advanced-control timers  — с расширенными возможностями

Эти три группы перечислены по мере увеличения возможностей таймеров.

Из этой классификации следует, что самые простые – это базовые таймеры.

Таймеры общего назначения способны выполнять функции базовых и обладают дополнительными свойствами.

“general-purpose” (таймеры общего назначения) - это вторая группа таймеров, которые имеются у микроконтроллеров STM32.

Таймеры общего назначения, по сравнении с базовыми, обладают рядом дополнительных возможностей.

Некоторые из них перечислены ниже:

  1.  счетный регистр поддерживает режимы счета:  up — прямой, down — обратный, up/down – двунаправленный (сначала до определенного значения, а затем обратный);
  2.  имеется четыре независимых канала, позволяющих выполнять: захват входного сигнала, сравнение счетного регистра с заданным значением, формирование ШИМ-сигнала или одиночного импульса; по каждому из каналов может формироваться прерывание или запрос DMA; 
  3.  возможность синхронизироваться от нескольких источников: от системной синхронизации, от другого таймера или от внешнего сигнала. 

Аналого-цифровой преобразователь (АЦП, англ. Analog-to-digital converter, ADC) — устройство, преобразующее входной аналоговый сигнал в дискретный код (цифровой сигнал).

Некоторые характеристики модулей АЦП микроконтроллера STM32F100RB:

  1.  12-ти разрядная разрешающая способность;
  2.  время преобразования — 1 μs;
  3.  18 каналов, из которых 16 — внешние;
  4.  возможность задавать время преобразования индивидуально для каждого канала (8 дискретных значений);
  5.  возможность задания одиночного или непрерывного преобразования;
  6.  само-калибровка;
  7.  наличие оконного компаратора;
  8.  запуск преобразования от внешнего источника;
  9.  работа с модулем DMA

Injected channels (инжектированные каналы) и Regular channels (регулярные каналы) - это две разновидности опроса каналов.

Количество измерений в группе регулярных каналов может достигать 16. Возможно непрерывное измерение выбранных каналов (по окончанию измерения автоматически запустится новый цикл).

Максимальное количество измерений в группе инжектированных каналов равно четырем. Если запустить измерение инжектированных каналов, то измерение регулярных каналов будет приостановлено. Затем будет выполнено измерение заданных инжектированных каналов и вновь восстановлено измерение каналов регулярной группы.

Техническое задание

Разработать алгоритм и программу на языке «С»  измерения внешнего напряжения посредством АЦП и генерации ШИМ в зависимости от величины измеренного напряжения.

1. Разработка алгоритма программы

Схема алгоритма программы представлена на рисунке 1.

Начало

Подача тактовых импульсов на таймер TIM2, АЦП1 и порта ввода/вывода А (шины APB1 и APB2 соответственно)

Настройка линии РА2 порта А на выход (альтернативный режим)

Разрешить таймеру TIM2 использовать линию РА2 порта А для генерации широтно-импульсной модуляции

Настройка режима широтно-импульсной модуляции

Запуск таймера TIM2

Запуск калибровки АЦП

Устанавливаем период опроса линии РА1 порта ввода/вывода А.

Калибровка окончена?

Устанавливаем последовательность преобразования инжектированной и регулярной группы каналов АЦП1. Разрешаем внешний запуск преобразования инжектированной группы. Устанавливаем последовательность запуска преобразований (одно за другим). Разрешаем преобразование инжектированной группы каналов АЦП1 после регулярной.

А

Рисунок 1 – Схема алгоритма программы

А

Задаём номер канала АЦП1 (1 канал)

Включаем АЦП1

Запуск преобразований

Первое преобразование окончено?

Подача питания прекращена?

Запись результата преобразования в переменную. Умножение переменной на константу. Запись значения переменной в регистр захвата/сравнения таймера TIM2

Конец

Рисунок 1 - Продолжение

2. Разработка программы

В соответствии со схемой алгоритма программы разработана программа. Текст программы представлен на  рисунке 2.

#include<stm32f10x_rcc.h>

#include<stm32f10x_gpio.h>

#include "stm32f10x.h"

int main(void)

{

 GPIO_InitTypeDef PORT;

 //Включаем порты А и С и таймера TIM2

RCC->APB2ENR |= (RCC_APB2Periph_GPIOC|RCC_APB2Periph_GPIOA);

 RCC->APB1ENR |= (RCC_APB1Periph_TIM2);

 //Настройка ноги PA2 на выход, альтернативный режим

 PORT.GPIO_Pin = (GPIO_Pin_2);

 //Будем использовать альтернативный режим а не обычный GPIO

 PORT.GPIO_Mode = GPIO_Mode_AF_PP;

 PORT.GPIO_Speed = GPIO_Speed_2MHz;

 GPIO_Init(GPIOA, &PORT);

 //Разрешаем таймеру использовать PA2 для ШИМа

 TIM2->CCER |= (TIM_CCER_CC3E);

 //Устанавливаем режим прямого ШИМ-а на ногу PA2(третий канал)

 TIM2->CCMR2|=(TIM_CCMR2_OC3M_1 | TIM_CCMR2_OC3M_2);

 //Запускаем таймер!

 TIM2->CR1 |= TIM_CR1_CEN;

 //Включаем тактирование АЦП

 RCC->APB2ENR |=(RCC_APB2ENR_ADC1EN);

 ADC1->CR2 |= ADC_CR2_CAL; //Запуск калибровки АЦП

 while (!(ADC1->CR2 & ADC_CR2_CAL)); //Ожидаем окончания калибровки

 ADC1->SMPR2 |=0x0;// (ADC_SMPR2_SMP1_2 | ADC_SMPR2_SMP1_1 | ADC_SMPR2_SMP1_0); //Задаем длительность выборки/

 ADC1->CR2 |= ADC_CR2_JEXTSEL; //Преобразование инжектированной группы запустится установкой бита JSWSTART

 ADC1->CR2 |= ADC_CR2_JEXTTRIG; //Разрешаем внешний запуск инжектированной группы

 ADC1->CR2 |= ADC_CR2_CONT; //Преобразования запускаются одно за другим

 ADC1->CR1 |= ADC_CR1_JAUTO; //Разрешить преобразование инжектированной группы после регулярной.

 ADC1->JSQR |=ADC_JSQR_JSQ4_0 ; //Задаем номер канала (выбран ADC1)

 ADC1->CR2 |= ADC_CR2_ADON;//Теперь включаем АЦП

 ADC1->CR2 |= ADC_CR2_JSWSTART; //Запуск преобразований

 while (!(ADC1->SR & ADC_SR_JEOC)) //ждем пока выполнится первое преобразование

 { }

 uint32_t adc_res;

 while(1)

 {

   adc_res = ADC1->JDR1; //Читаем результат из JDR1

   adc_res=adc_res*16;

   TIM2->CCR3 = adc_res;

 }

}

Рисунок 2 – Текст программы

3. Вычислительный эксперимент

Согласно техническому заданию была разработана схема подключения источника постоянного напряжения, через переменный резистор (для возможности регулирования напряжения  в пределах от 0 вольт до максимального значения источника постоянного напряжения) к линии АЦП микроконтроллера STM32F100RB и подключения сигнальных светодиодов, к выводам таймера общего назначения (с помощью которого генерируется ШИМ сигнал для управления яркостью светодиодов).  

При изменении сопротивления R1 происходит изменение значения входного напряжения на линии АЦП. В зависимости от результата преобразования АЦП изменяется скважность ШИМ сигнала (генерируемого таймером общего назначения TIM2), вследствие чего изменяется яркость светодиодов. Схема подключения источника питания и сигнальных светодиодов к микроконтроллеру STM32F100RB представлена на рисунке 3.

   Вывод

В ходе выполнения данного курсового проекта были получены навыки работы с периферией микроконтроллера STM32F100RB фирмы «STMicroelectronics» , в том числе: порты ввода/вывода, таймеры общего назначения, модуль АЦП.

    Список литературы

1. STMicroelectronics.: “RM0041 Reference manual. STM32F100xx advanced ARM-based 32-bit MCUs.”,,2011.-675c.

2. STMicroelectronics.:“Datascheet STM32F100x4 STM32F100x6 STM32F100x8 STM32F100xB” ,,2012.-88c.

3. Тревор Мартин .: "Микроконтроллеры фирмы STMicroelectronics на базе ядра Cortex-M3. Серия STM32." – Санкт-Петербург: «БХВ-Петербург», 2008. – 387с.


 

А также другие работы, которые могут Вас заинтересовать

78148. Основание под фундамент 1.91 MB
  Фундаменты Требования предъявляемые к фундаментам: прочность; устойчивость на опрокидывание и скольжение в плоскости подошвы фундамента; устойчивость к агрессивным грунтовым водам; стойкость к атмосферным факторам морозостойкость; пучение грунтов при замерзании; соответствие по долговечности сроку службы здания; индустриальность; экономичность. По конструктивной схеме фундаменты разделяются на: ленточные столбчатые или отдельно стоящие сплошные и свайные см. Ленточные фундаменты Монолитные ленточные фундаменты...
78149. Стены. Требования, предъявляемые к стенам 1.94 MB
  Кроме того стены должны иметь минимальный вес наименьшую стоимость и сооружаться по возможности из местных материалов. По роду материала различают стены: каменные деревянные и стены из других материалов в том числе синтетических в порядке эксперимента. Каменные подразделяются на: стены из каменной кладки; монолитные; крупнопанельные стены. Кирпичные стены по своей структуре подразделяются.
78150. Направленность личности 306.5 KB
  Понятие потребности. Желание как форма направленности характеризуется осознанием не только своей потребности но и возможных путей её удовлетворения. Интерес Интерес специфическая форма проявления познавательной потребности человека.
78151. Образование как социокультурный феномен и движущая сила социально-экономического развития 88.88 KB
  Социокультурные тенденции оказывающее влияние на развитие образования науки культуры. Основные направления модернизации среднего специального и высшего образования. Две основные функции образования в обществе воспроизводство и развитие и соответствующие им модели образования.
78152. Развитие и воспитание личности 55.36 KB
  Структура учебной деятельности: учебнопознавательные мотивы цели задачи и учебные действия. Обучение направлено на развитие личности посредством организации усвоения обучающимися научных знаний и способов деятельности. Воспитательная функция реализуется в формировании у обучающихся ценностных ориентаций убеждений личностных качеств в процессе усвоения социальнокультурного опыта и формировании мотивов учебной деятельности которые во многом определяют ее успешность. Используется в практике профессиональной подготовки и рассчитан на то...
78153. Роль и психологические функции руководителя в системе управления 55.01 KB
  Процесс принятия решений значительно более сложен и опосредован множеством различных обстоятельств и соображений не обязательно связанных с данной группой решения часто принимаются на основе прошлого опыта. Решения принимают непосредственно по групповой деятельности предпринимают постоянные попытки разработки новых и неоднозначных решений проблемы Сфера действий руководителя шире поскольку он представляет малую группу в более широкой социальной системе Сфера деятельности лидера в основном малая группа Однако несмотря на приведенные...
78154. Самосовершенствование личности 53.53 KB
  Самосовершенствование определяется взаимодействием человека с конкретной социальной средой в ходе которого он вырабатывает у себя такие качества которые дают успех в профессиональной деятельности и в жизни вообще. Рубинштейн трактовал жизненный путь не только как движение человека вперед но и движение вверх к высшим более совершенным формам и лучшим проявлениям человеческой сущности завершение жизни достижение не старости упадка и смерти а достижение личностного совершенства. Причем предъявляемые требования должны быть несколько...
78155. Система образования в Республике Беларусь: состояние и пути развития 45.34 KB
  Кодекс Республики Беларусь об образовании как главный законодательный документ в области образования. Позитивные и негативные тенденции и особенности функционирования системы образования на всех уровнях. Направление совершенствования высшего образования в Республике Беларусь.
78156. Социализация личности. Семейное воспитание 52.23 KB
  Признаки и функции коллектива методика его формирования. Признаки развитого коллектива: наличие общественно и личностно значимых целей; включение членов коллектива в разнообразную социальную деятельность; соответствующая организация совместной деятельности; связь коллектива с обществом; наличие положительных традиций и перспектив; атмосфера взаимопомощи доверия и требовательности; развитые критика и самокритика сознательная дисциплина и др. Это результат упорного целенаправленного и длительного труда всего коллектива результат...