електричество и микроконтролери

Download Report

Transcript електричество и микроконтролери

Вградени системи с Arduino

София Април 2012 Симеон Янчев www.robotev.com

КУРСЪТ 

Основи на работата с Ардуино

Запознанство с основни ел. компоненти

Най-често използвани команди за управление на микроконтролери

ДНЕС 

Философията на Ардуино

Свързване и конфигуриране на платката

Електричество

Микроконтролери

Език и среда за програмиране

“Голямата четворка”

ФИЛОСОФИЯТА ARDUINO

Dave Mellis Tom Igoe Gianluca Martino David Cuartielles Massimo Banzi

БЪРНИЧКАНЕ + ПРОТОТИПИ

ХАКВАНЕ + ВЪЗПОЛЗВАНЕ

ВЗАИМОПОМОЩ

СВЪРЗВАНЕ И КОНФИГУРИРАНЕ

КАКВО ВКЛЮЧВА КОМПЛЕКТА

ЗДРАВЕЙ ЖИВОТ

ЕЛЕКТРИЧЕСТВО И МИКРОКОНТРОЛЕРИ

ЕЛЕКТРИЧЕСТВОТО

ЕЛЕКТРИЧЕСТВОТО

ЕЛЕКТРИЧЕСТВОТО

Закон на Ом

I (сила на тока) = U (напрежение) / R (съпротивление)

МИКРОКОНТРОЛЕРИТЕ – КАКВО

МИКРОКОНТРОЛЕР С Е Н З О Р И МЕХАНИЗМИ

ЕЛЕКТРИЧЕСТВОТО

ПРИМЕРНИ ПРОЕКТИ Домашна авотматизация Реклама Музикални инструменти

ХАРДУЕР И СОФТУЕР

USB към UART Бутон за Ресет

АРДУИНО УНО

Цифрови входове и изходи (14) USB Регулатор на напрежение

Светодиоди

ICSP хедър Микроконтролер ATmega328 Външно захранване

АРДУИНО УНО

Microcontroller ATmega328 Operating Voltage 5V Input Voltage (recommended) 7-12V Digital I/O Pins 14 (of which 6 provide PWM output) Analog Input Pins 6 DC Current per I/O Pin 40 mA DC Current for 3.3V Pin 150 mA Flash Memory 32 KB (ATmega328) SRAM 2 KB (ATmega328) EEPROM 1 KB (ATmega328) Clock Speed 16 MHz

СРЕДАТА ЗА ПРОГРАМИРАНЕ

СРЕДАТА ЗА ПРОГРАМИРАНЕ

Провери / Компилирай Качи (Upload) Отвори серийния монитор

ЕЗИК ЗА ПРОГРАМИРАНЕ

Ниско ниво

(lda 0xfe09 ; lda #0xff ; sta 0xfe09)

Човешка реч

(Когато е много тъмно искам лампите да светнат и да останат запалени) )

Високо ниво

( Когато нивото на светлина е под 50; Включи светодиода; Повтори отначало;

ЕЗИК ЗА ПРОГРАМИРАНЕ

ФАЗИ НА ПРОГРАМИРАНЕ редактиране компилиране ъплоуд стартиране

СТРУКТУРА НА ПРОГРАМАТА

ГОЛЯМАТА ЧЕТВОРКА

АНАЛОГОВО - ДИГИТАЛНО

ПЛАТКАТА БРЕДБОРД

ПЛАТКАТА БРЕДБОРД

digitalWrite(pinNomer, systoyanie);

Systoyanie = HIGH или LOW

DigitalWrite Упражнение

Задача 1 Светодиод свързан към пин 8 мига с интервал една секунда, а светодиод свързан към пин 9 мига с интервал 250 милисекунди.

Задача 2 Светодиодите свързани към пинове 8 и 9 мигат с интервал 500 милисекунди, като докато единият светодиод свети, другият е изгаснал

digitalRead(pinNomer);

НЕПРАВИЛНО, ЛИПСВА PULL UP/DOWN РЕЗИСТОР

digitalRead(pinNomer);

PULL UP RESISTOR PULL DOWN RESISTOR

analogWrite(pinNomer, stojnost);

Приема стойности от 0 до 255 Позволява да се контролират: яркост скорост сила на звук

analogWrite(pinNomer, stojnost);

8 битов ЦАП (0 - 255)

analogRead(pinNomer);

10 битово АЦП (0 - 1023)

analogRead, Write Упражнение

Задача 1 Потенциометър свързан към пин А0 контролира право пропорционално яркостта на светодиод свързан към цифров пин 9 при показание 0 светодиодът е изгаснал, при 1023 свети на 100% Задача 2 Потенциометърът на пин А0 контролира право пропорционално светодиод свързан към пин 9 и обратно пропорционално светодиод свързан към пин 10