Тег: stm32 - сторінка 5


« 3 4 5

6. STM32. Програмування STM32F103. NVIC

19.08.2016
6. STM32. Програмування STM32F103. NVIC

NVIC (Nested vectored interrupt controller) - модуль контролю переривань. Він виконує наступні функції:

  • дозволяє/забороняє переривання
  • назначає пріоритет переривань (від 0 до 15. 0 - максимальній пріоритет, 15 - мінімальний пріоритет)
  • автоматично зберігає дані при виконанні одиноких чи вкладених переривань.
Цей контролер керує усіма перериваннями: і зовнішніми і перериваннями модулів самого контролера, і, як Ви вже зрозуміли, у STM32 є пріоритети переривань. А це значить, що переривання з більшим пріоритетом може перервати виконання обробки переривання з меншим пріоритетом.

STM32

5. STM32. Програмування STM32F103. USART

17.08.2016
5. STM32. Програмування STM32F103. USART

Ми вже використовували послідовний порт для програмування мікроконтролера. Тепер застосуємо його за прямим призначенням. STM32F103 Має 3 послідовних USART порти. Ми розглянемо приклад з USART1. Решта портів працюють аналогічно. У цьому прикладі ми підключимо мікроконтролер до комп`ютера за допомогою UART-USB перехідника. Та будемо використовувати термінальну програму для передачі команд мікроконтролеру.

STM32

4. STM32. Програмування STM32F103. Тактування

15.08.2016
4. STM32. Програмування STM32F103. Тактування

Тактування - це серце мікроконтролера. Для роботи мікроконтролера серце має битися. Чим вища частота, тим швидше працює мікроконтролер, але і більше споживає енергії. І навпаки, чим менша частота тактування, тим менше споживання енергії та менша швидкість роботи контролера. Те саме стосується периферії. Тактування слід налаштовувати в залежності від поточних задач. У попередніх прикладах ми не займали налаштування тактування і мікроконтролер працював з невідомою нам частотою. Але у подальшому, при роботі з периферією нам прийдеться налаштовувати сам мікроконтролер і певні модулі на роботу на конкретній частоті. Тому ми маємо розібратися з цим питанням.

STM32

3. STM32. Програмування STM32F103. GPIO

11.08.2016
3. STM32. Програмування STM32F103. GPIO

У попередній статті ми використовували простеньку програму, яка блимає світлодіодом. Трохи модифікуємо її і спробуємо розібратися, як налаштувати виводи мікроконтролера для роботи на вхід і вихід. C13 налаштуємо як вихід. До нього підключений світлодіод на тестовій платі. B0 налаштуємо на вхід і підключимо до нього кнопку. У натиснутому положенні кнопка має замикати ногу B0 на землю.

STM32

2. STM32. Програмування. IDE для STM32

09.08.2016
2. STM32. Програмування. IDE для STM32

Для того, щоб розробляти свої програми нам знадобиться середовище розробки, бажано з дебагером, і компілятор C.

Я зупинився на CooCox CoIDE та GCC. По-перше цей софт не коштує грошей, по-друге - з ним не виникло ніяких питань. Встановив і почав робити. Щоправда CooCox зроблений тільки під Windows. Це не зовсім добре. І хоча на Ubuntu CooCox і працює під wine і навіть компіляція проходить вдало, з дебагером проблема. Та й робота через wine - це не true way. Якось я напишу, як налаштувати IDE для STM32 під  Ubuntu.

А тим часом...

STM32

1. STM32. Програмування STM32F103. Тестова плата. Прошивка через послідовний порт та через ST-Link програматор

08.08.2016

Мікроконтролери  STM32 здобувають все більшу популярність завдяки своїй потужності, досить різнорідної периферії, та своєї гнучкості. Ми почнемо вивчати STM32F103C8T6, використовуючи бюджетну тестову плату, вартість якої не перевищує 2$ (у китайців). Ще нам знадобиться ST-Link програматор, вартість якого близько 2.5$ (у китайців). Такі суми витрат доступні і студентам і школярам, тому саме з такого бюджетного варіанту я і пропоную почати.

STM32F103C8_01 STLine_01

Цей мікроконтролер не є найпотужнішим серед STM32, але і не самий слабкий. Такий собі середнячок. Існують різні тестові плати, у томі числі Discovery які за ціною коштують близько 20$. На таких платах є майже те саме, що і на нашій платі, плюс програматор. В нашому випадку ми будемо використовувати програматор окремо.

STM32 Корисно знати

13. STM32. Програмування STM32F103. EXTI

16.09.2016
13. STM32. Програмування STM32F103. EXTI

Зовнішні переривання

Зовнішні переривання викликаються при зміні стану логічного сигналу на вході мікроконтролера. Зовнішні переривання використовують, коли треба слідкувати за зміною вхідного сигналу і оперативно реагувати. Коли нам потрібен такий функціонал, ми налаштовуємо потрібний пін, налаштовуємо зовнішнє переривання (по спаду, по фронту або по обом фронтам) і, як тільки відбудеться зміна стану сигналу, буде викликано обробник переривання.

У STM32 зі зовнішніми перериваннями можуть працювати будь-які лінії вводу-виводу. Тобто, будь-який пін можна налаштувати на роботу з перериванням. У STM32F103 всього 19 ліній зовнішніх переривань:

  • EXTI0...EXTI15 - для роботи з пінами портів
  • EXTI16 - підключений до PVD
  • EXTI17 - RTC Alert event (будильник)
  • EXTI18 - USB Wakeup event
  • EXTI19 - Ethernet Wakeup event

STM32
« 3 4 5

Архіви