Тајмер је врста сата који се користи за мерење временских интервала. Постоје две врсте тајмера, један који рачуна навише од нуле, за мерење протеклог времена, који се назива штоперица. А, други одбројава од одређеног временског трајања које је обезбедио корисник, обично назван Тајмер одбројавања.
Овде, у овом упутству ћемо вам показати како да направите одбројавање помоћу Ардуина. Овде не користимо ниједан модул сата реалног времена (РТЦ) за добијање времена. Време трајања обезбеђује корисник помоћу тастатуре и ЛЦД екрана 16к2. А када тајмер досегне нулу, уз звучни сигнал ће се огласити звук упозорења.
Потребан материјал
- Ардуино УНО
- ЛЦД 16 * 2
- 4 * 4 матрична тастатура
- Зујалица
- Тастер
- Потенциометар (10к)
- Отпорник (10 к, 100 ома)
- Повезивање жица
Дијаграм круга одбројавања Ардуино
Ардуино Уно се овде користи као главни контролер. Тастатура се користи за храњење временског трајања, а 16 * 2 ЛЦД се користи за приказ одбројавања. Тастер се користи за покретање времена. Овде погледајте како да повежете 4к4 тастатуру са Ардуином и 16к2 ЛЦД са Ардуином.
Код одбројавања Ардуино и објашњење
Комплетни Ардуино тимер код дат је на крају овог пројекта.
У овом доњем коду иницијализујемо библиотеке за тастатуру и ЛЦД и променљиве коришћене у коду.
#инцлуде
Сада, у доњем коду иницијализујемо бр. редова и колона за дефинисање матрице за тастатуру.
цонст бите РОВС = 4; // Четири реда цонст бите ЦОЛС = 4; // Тастери цхар са три колоне = {{'1', '2', '3', 'А'}, {'4', '5', '6', 'Б'}, {'7', ' 8 ',' 9 ',' Ц '}, {' * ',' 0 ',' # ',' Д '}};
За повезивање 4 * 4 матричне тастатуре са Ардуином морамо да дефинишемо игле за редове и колоне. Дакле, у доњем коду смо дефинисали пинове за тастатуру као и ЛЦД 16к2.
бите ровПинс = {6, 7, 8, 9}; // Повежите тастатуру РОВ0, РОВ1, РОВ2 и РОВ3 на ове бајтове цолПинс Ардуино пинова = {10, 11, 12, 13}; // Повежите тастатуру ЦОЛ0, ЦОЛ1 и ЦОЛ2 до т ЛикуидЦристал лцд (А0, А1, 5, 4, 3, 2); // Ствара ЛЦ објекат. Параметри: (рс, енабле, д4, д5, д6, д7)
Доњи код се користи за израду тастатуре, Тастатура кпд = тастатура (макеКеимап (тастери), ровПинс, цолПинс, РОВС, ЦОЛС);
У воид сетФеедингТиме () функцијском коду, након притиска на тастер можемо да унесемо време за тајмер, затим након уноса трајања времена тајмера, морамо да притиснемо Д да започнемо одбројавање.
воид сетФеедингТиме () {феед = тачно; инт и = 0; лцд.цлеар (); лцд.сетЦурсор (0,0); лцд.принт ("Подеси време храњења"); лцд.цлеар (); лцд.принт ("ХХ: ММ: СС"); лцд.сетЦурсор (0,1); вхиле (1) {кеи = кпд.гетКеи (); цхар ј; иф (кеи! = НО_КЕИ) {лцд.сетЦурсор (ј, 1); лцд.принт (кључ); р = тастер-48; и ++; ј ++; иф (ј == 2 - ј == 5) {лцд.принт (":"); ј ++; } кашњење (500); } иф (кључ == 'Д') {кључ = 0; пауза; }} лцд.цлеар (); }
У функцији воид сетуп () , иницијализирали смо ЛЦД и серијску комуникацију и дефинисали пинове као ИНПУТ и ОУТПУТ у доњем коду.
воид сетуп () {лцд.бегин (16,2); Сериал.бегин (9600); пинМоде (А0, ИЗЛАЗ); пинМоде (А1, ИЗЛАЗ); пинМоде (А3, ИНПУТ); пинМоде (А4, ИЗЛАЗ); }
Рад овог Ардуино тајмера за одбројавање је једноставан, али код је мало сложен. Шифра је објашњена коментарима у коду.
У почетку ће исписивати „Ардуино Тимер“ на ЛЦД екрану док не притиснете тастер. Чим притиснете тастер, тражит ће се да унесете трајање времена одбројавања позивом функције „ сетФеедингТиме “. Тада можете да унесете трајање времена помоћу тастатуре. Затим треба да притиснете „Д“ да бисте уштедели време и започели одбројавање. Овде смо у функцији воид лооп () извршили прорачун да бисмо смањивали време секунду по секунду и показали одговарајуће вредности сата, минута и секунди (ХХ: ММ: СС) према преосталом времену. Сав код је добро објашњен коментарима. Комплетни код и демонстрацијски видео можете проверити у наставку.
Како тајмер досегне нулу, зујало почиње да оглашава звучни сигнал и оглашава се само 100 пута (према коду). Да бисте зауставили зујалицу, притисните и држите тастер. Тастер можете користити било када да зауставите тајмер између бројања.