Forming the time delays of the microcontroller | Microcontrollers from scratch #6

  Рет қаралды 73,936

Dmitriy Zabarilo

Dmitriy Zabarilo

6 жыл бұрын

The library of microcontroller delays is quite convenient and practical. It is called as follows: _delay_ms (777) - the time in milliseconds is specified in brackets. Also, the time can be set in the number of cycles of the microcontroller and microseconds. In this video, the #define preprocessor directive is considered, which greatly facilitates the readability of the code. Time intervals are applied to the example of flashing LEDs, which improves the visualization of this process and increases the visibility of the function _delay. However, to apply a delay, you must first connect the delay library delay.h

Пікірлер: 86
@user-li4xh9fi6w
@user-li4xh9fi6w 2 жыл бұрын
Программирование микроконтроллеров. Полный курс для начинающих: diodov.net/programmirovanie-mikrokontrollerov-avr/ Электроника для начинающих. Мощный курс. diodov.net/elektronika-dlya-nachinayushhih/
@user-kx8tq3zo5s
@user-kx8tq3zo5s 4 жыл бұрын
Вы великий человек !!! Низкий поклон ! Огромное спасибо! Храни ВАС БОГ!
@persontashik_z
@persontashik_z 9 ай бұрын
Никому кроме Аллаха поклонятся нельзя!!!
@user-yz2my6kp5i
@user-yz2my6kp5i 5 жыл бұрын
Възхищавам се от професионализма и изложението! Чудесно! Благодаря!
@alexeyvert-miller3374
@alexeyvert-miller3374 5 жыл бұрын
Автору большое спасибо! Такие как ТЫ,друг, помагают другим,и это достойно уважения! Из критики: записывая уроки с остановками,увеличь промежуточное время,т.е.делай паузы, чтобы всё не преврашялось в словесную кашу)
@RomSimbel
@RomSimbel 3 жыл бұрын
а плейер на паузу ставить не пробовали? в таких случаях помогает ))))
@alexeyvert-miller3374
@alexeyvert-miller3374 3 жыл бұрын
@@RomSimbel я не просто так написал *словесную*. Улыбнуло=)
@alexeyvert-miller3374
@alexeyvert-miller3374 3 жыл бұрын
@@RomSimbel хотя Вы правы, субтитры можно прочитать.Но я имел ввиду именно голосовое пояснение. Иногда слушаешь и на лету эксперементируешь с полученнными знаниями
@user-xi8fi9ql9d
@user-xi8fi9ql9d 4 жыл бұрын
Смотрю оба канала и многие вещи становятся понятными. Очень нравятся ваши уроки. Продолжайте дальше.
@user-su8kl8gv9h
@user-su8kl8gv9h 5 жыл бұрын
Большое спасибо за урок! Всё понятно, доходчиво для начинающих Творческих вам успехов!
@user-lx4ic4xj9f
@user-lx4ic4xj9f 3 жыл бұрын
Спасибо, все просто и доступно. Действительно можно научиться)
@user-rv6rp7ic3r
@user-rv6rp7ic3r 2 жыл бұрын
Спасибо за уроки! Всё понятно объясняете.
@wetal1961
@wetal1961 3 жыл бұрын
Ты молодец. С тобой не так страшно браться за микроконтроллеры.
@user-sd8wl1oy8r
@user-sd8wl1oy8r 4 жыл бұрын
Ну блин четко про задержки объяснил..До этого не понимал..Буду дальше смотреть..Если еще так и про прерывание доходчиво и понятно объяснишь, то вообще не знаю тогда, куда тебя целовать..
@reks-iy4cf
@reks-iy4cf 10 ай бұрын
Спасибо , все работает! Отличные уроки!
@user-uj9rw9ty1e
@user-uj9rw9ty1e 7 ай бұрын
Благодарю , очень все доходчиво объясняете! 🎉
@user-pk8sn5cz1c
@user-pk8sn5cz1c 4 жыл бұрын
Спасибо за труд.
@a-c.o.s.1806
@a-c.o.s.1806 4 жыл бұрын
Спасибо, все ясно-понятно.
@user-hz5kh5ch8n
@user-hz5kh5ch8n 4 жыл бұрын
Спасибо, с удовольствием посмотрел)))
@alexpoplavskiy7027
@alexpoplavskiy7027 3 жыл бұрын
Супер, очень интересно, спасибо
@allallall2321
@allallall2321 5 жыл бұрын
Спасибо большое!
@romanbru9504
@romanbru9504 2 жыл бұрын
Спасибо добрый человек
@Djadya
@Djadya 4 жыл бұрын
Класс!
@user-rd6id1uy3t
@user-rd6id1uy3t 3 жыл бұрын
Молодец просто супер......
@mindaugasj.5792
@mindaugasj.5792 2 жыл бұрын
Спасибо автору, все работает! Любопытный вопрос: почему на выводе PC6/RESET появляется напряжение +5V ?
@emmetray9703
@emmetray9703 4 жыл бұрын
Спасибо _delay_ms(500) большое _delay_ms(500) !
@VasiliyLakomov
@VasiliyLakomov 4 жыл бұрын
Здравствуйте! Спасибо за ваш труд ! Я правильно понял, что с помощью данной команды(_delay_ms(500)), временная продолжительность свечения светодиода равняется его выключенному состоянию ? Т.е светодиод работает столько же, сколько он и не работает ?
@user-cr2kb4pr9x
@user-cr2kb4pr9x 3 жыл бұрын
Задержка перед выполнением следующей строки программы. 1. Включили диод. 2. Ждем полсекунды. 3. Выключили диод. 4. Ждем полсекунды. 5. Повтор (возврат к п. 1, то есть снова включаем диод.)
@user-vs7xi2xg2x
@user-vs7xi2xg2x 7 ай бұрын
Добрый вечер. слушаю и выполняю вашу лекцию. запрограммировал два канала как читается в лекции. прошил омега 8 замигал 1 LED второй не реагирует. Померил напряжение 1,3V- пониженное напряжение я правильно понимаю. Что надо сделать чтоб 2 LED заработало.
@vadimdonkov7853
@vadimdonkov7853 4 жыл бұрын
Добрый день. Очень полезная информация в доступной форме. Спасибо огромное! Есть одна проблемка, не подскажите, где можно скачать Proteus? Из тех вариантов Proteus 7, что находил в инете, crack не работает, а в более поздних версиях Proteus 8.5 не работают библиотеки
@splinterkab9007
@splinterkab9007 4 жыл бұрын
Может установил неправильно. Или попробуй запустить от админа. Если будешь устанавливать снова, этот или другой, то сначала удали всё. Revounistaller прога для удааления, ей пользуюсь. А скачат протеус с рутрекера можно.
@vadimdonkov7853
@vadimdonkov7853 4 жыл бұрын
@@splinterkab9007 Спасибо за инфу. Нашёл Proteus 8.1 Установил, всё работает.
@user-pr8kh8fg5x
@user-pr8kh8fg5x 5 жыл бұрын
Перепутал строчные и прописные буквы, но это мелочи, уроки хорошие
@alexandersperling5728
@alexandersperling5728 Жыл бұрын
программа пишет такой текст и выдает три ошибки. Обучение кончилось не начавшись. В чес проблема? "mixed model AVR2.DLL failed to authorize - Missing or invalid Customer Key.."
@user-ln9rb6el8g
@user-ln9rb6el8g 4 жыл бұрын
Не совсем понял почему зеленый мигает два раза подряд а желтый один раз?
@user-pg9sk3qd2t
@user-pg9sk3qd2t Жыл бұрын
👍
@FlashDNK
@FlashDNK 3 ай бұрын
Дайте пожалуйста ссылку, где скачать AVRDUDE
@user-rb1tp9wz5c
@user-rb1tp9wz5c 3 жыл бұрын
почему тактовая частота МК 1МГЦ, разве не 8МГЦ согласно datasheet atmega8?
@eler0n
@eler0n 3 жыл бұрын
Встроенный генератор позволяет выбрать частоту 1, 2, 4, 8 МГц, а с внешним кварцем можно чуть ли не от 0 до 16 МГц
@user-oh6yz3ug8n
@user-oh6yz3ug8n Жыл бұрын
9,38 Мигание одного светодиода идет с периодичностью 2 сек. Не 0,5 сек. Мигание двух светодиодов ...1 сек.
@eduardtabler3771
@eduardtabler3771 2 жыл бұрын
spasibo sa uroki. gde mogno naiti proteus bes platno?
@clashersupercelov2697
@clashersupercelov2697 2 жыл бұрын
Просто пишешь протеус скачать, и скачиваешь с официального сайта около 900мб
@user-ve9xh6si1r
@user-ve9xh6si1r 3 жыл бұрын
У меня proteus выдает ошибку: mixed model AVR2.DLL failed to authorize - Missing or invalid Customer Key. (версия proteus-а демонстрационная). В демонстрационной версии должно запускаться?
@amusinov23
@amusinov23 2 жыл бұрын
Кликните 2-раза по МК на схеме ,внизу в левом углу окошко Exclude from Simulation. Поставьте галочку и OK,,, Должно сработать.У меня тоже самое было пока англоязычные видео не посмотрел не разобрался .
@alexandersperling5728
@alexandersperling5728 Жыл бұрын
Ваш комментарий помог мне решить такую ж проблему. Ну теперь проблема в том что лампочка не горит, когда загружаю программу.
@user-ve9xh6si1r
@user-ve9xh6si1r Жыл бұрын
@@alexandersperling5728 я тогда нормальную версию в итоге поставил
@alexandersperling5728
@alexandersperling5728 Жыл бұрын
@@user-ve9xh6si1r а где вы её взяли? Я скачал на официальном сайте демо.возможно она ограниченна и по этому не даёт запрограммировать контролер.
@user-ve9xh6si1r
@user-ve9xh6si1r Жыл бұрын
@@alexandersperling5728 тут варианта 2либо купить, либо не покупать, если совесть позволит крякнутую поставить...
@alibdfy
@alibdfy 3 жыл бұрын
Напишите адрес почты есть вопрос по ATmega8A
@user-ef6np3kw3d
@user-ef6np3kw3d Жыл бұрын
Proteus если можно ссылку скачать . везде с вирусом.
@user-lb7yc7ms2c
@user-lb7yc7ms2c Жыл бұрын
Представляю чтоб два диода мигали 500 000 команд писать 😀😀
@arelav285
@arelav285 3 жыл бұрын
Как сделать задержку на 10 секунд?
@user-cr2kb4pr9x
@user-cr2kb4pr9x 3 жыл бұрын
_delay_ms(10000)?
@user-rr7kw6hc8o
@user-rr7kw6hc8o 5 жыл бұрын
Автор мог бы и намекнуть начинающим, что Протеус крякнутый нужен.
@Not_932
@Not_932 5 жыл бұрын
Он может об этом и знает, но не станет во все горло говорить об этом на ютубе. Потом еще ловить страйков от правообладателей и принципиальных покупателей таких программ.
@user-nn7hh4id8w
@user-nn7hh4id8w 4 жыл бұрын
Кому надо те поймут
@endorphinair8166
@endorphinair8166 7 ай бұрын
но ведь LED в данном случае уже не является константой тк ее значение изменяется, а вот MIG действительно константа
@Evgen_Ruban
@Evgen_Ruban 4 жыл бұрын
Ребята, у меня что-то в симуляторе протеус поочерёдно появляется единичный уровень не на нулевом и первом выводах порта D, а на нулевом и третьем !!? 100 раз проверил, не могу найти ошибку, вроде ж всё как у автора : int main(void) { DDRD=0b00000011; while (1) { PORTD=00000001; _delay_ms(500); PORTD=00000000; _delay_ms(500); PORTD=00000010; _delay_ms(500); PORTD=00000000; _delay_ms(500); } } Обидно!!
@Ivan-rc4it
@Ivan-rc4it 4 жыл бұрын
Вы забыли поставить 0b перед значениями, поэтому он эти числа не воспринимает как двоичные.
@Evgen_Ruban
@Evgen_Ruban 4 жыл бұрын
@@Ivan-rc4it Большое спасибо!
@Michael35y.o.
@Michael35y.o. 4 жыл бұрын
@@Ivan-rc4it спасибо
@splinterkab9007
@splinterkab9007 4 жыл бұрын
DDRD = 3 ..... PORTD = 1; _delay_ms(500); PORTD = 0; _delay_ms(500); PORTD = 2; _delay_ms(500); PORTD = 0; _delay_ms(500); Так будет работать. Хотя в двоичной проще для представления происходящего. Ну и нули можно не писать. Наприме PORTD = 0b00000000; можно заменить на PORTD = 0; а например PORTD = 0b00000010; на PORTD = 0b10; А то столько нулей печатать рука устанет.
@dtuhfscbhy6957
@dtuhfscbhy6957 3 жыл бұрын
а вот если самому организовать цикл из 500тыс команд, можно легко получить прерывание)
@GrafKarlsonskiy
@GrafKarlsonskiy 5 жыл бұрын
Зачем по 10 раз писать этот порт( хватило бы двух раз же
@user-is4ke2rw3o
@user-is4ke2rw3o 4 жыл бұрын
не ной! повторение - мать учения.
@gray3799
@gray3799 2 жыл бұрын
про то что человек не видит больше 24 кадров - миф и бред. сравните плавность какой-нибудь игры на 30 фпс и 60, да и моники в 144Гц не просто так существуют.
@user-eb1bi5wp9y
@user-eb1bi5wp9y Жыл бұрын
Здесь немного другое имеется ввиду. Эффект превышения 24 кадров может легко почувствовать, если будете смотреть на колесо автомобиля или лопасть вертолета, которая очень быстро вращается. Если она будет вращаться со скоростью выше 24 оборотов в секунду или больше 1500 оборотов в минуту. То будет казаться, что он вращается медленно и в обратную сторону.
@nickgajilarov7572
@nickgajilarov7572 4 жыл бұрын
#define F_CPU 1000000UL #include #include int main(void) { DDRD=0b000000011; // назначаем порд Д0 и Д1 как выходной while (1) { PORTD = 0b00000001; //подаем 5 В на Д0 _delay_ms(500); //задерка в 1/2 с PORTD = 0b00000000; // отводим 5 В с порта Д0 _delay_ms(500); PORTD = 0b00000010; //подаем 5 В на Д1 _delay_ms(500); PORTD = 0b00000000; _delay_ms(500); } } Здравствуйте. Помогите , пожалуйста , какие бы порты я не брал "C,B", у меня пермонентно горят все порты D, даже те на которых стоит логический "0".Проверял привязку контроллера к файлу hex , чего только не делал , не помогает
@cr00z
@cr00z 4 жыл бұрын
1. Проверь, тот ли контроллер прошиваешь 2. Проверь схему внимательно, есть вариант, что светодиоды на +5 включены, а не на минус 3. Дохлый контроллер, воткни второй такой же, если все повторится - см п.1,2
@user-is4ke2rw3o
@user-is4ke2rw3o 4 жыл бұрын
применение функции дефайн не упрощает, а наоборот архиусложняет понимание кода программы. ладно если этих дефайнов один или два. А если их 15? С налёту хрен запомнишь что на что меняется. сиди тыркайся что куда чего
@Ivan-rc4it
@Ivan-rc4it 4 жыл бұрын
когда я начинал учить программирование микроконтроллеров то так же как и Вы думал, но сейчас понимаю, что это намного проще как рассказывает автор. Со времен, если Вы не забросите то почувствуете как это упрощает.
@splinterkab9007
@splinterkab9007 4 жыл бұрын
Ну можно например написать так. #define LED_ON PORTC = 1 #define LED_OFF PORTC = 0 Или по маске проще, чтоб включить нужный светодиод. Тпа такого. #define LED_ON PORTC |= 0b1 #define LED_OFF PORTC &= ~0b1 ..... LED_ON; _delay_ms(500); LED_OFF; _delay_ms(500); И мигай диодом сколь хочется и в любом месте кода можно вставить. Если тут можно запутаться, то он ещё про функции не рассказывал.
@user-hf8oy6sx5g
@user-hf8oy6sx5g 4 жыл бұрын
Какой 25й кадр.. о боже...
@user-cr2kb4pr9x
@user-cr2kb4pr9x 3 жыл бұрын
это к тому, что начиная с 24 гц и выше создаётся иллюзия плавного движения и мозг не воспринимает кадры, как отдельные картинки! Но, конечно, можно заметить мерцание или врезку лишнего кадра. Это ж очень сложно понять, да?
@egorgolubev6371
@egorgolubev6371 5 жыл бұрын
вы же знаете что автор просто перезалил эти уроки с другого канала?
@fix02onf74
@fix02onf74 5 жыл бұрын
С какого?
@user-ns5rd1uh4u
@user-ns5rd1uh4u 5 жыл бұрын
Владелец каналов "Electronics Club" и "МИКРОКОНТРОЛЛЕРЫ С НУЛЯ" один и тот же.
@OlegNaruto
@OlegNaruto 5 жыл бұрын
Закрыл видео после фразы: "мало кто видит даже 25-й кадр"
@Not_932
@Not_932 5 жыл бұрын
ага, прям как консольщики, которые не видят больше 30 фпс :D
@user-eb1bi5wp9y
@user-eb1bi5wp9y Жыл бұрын
Это правильно. Если человек, выпустивший данное видео, не понимает как работает человеческое зрение, то и в микроконтроллерах он вообще ничего не понимает и ничего дельного сказать не может. Просто возможно вам стоило зайти на канал с медицинской тематикой, если вы хотели узнать про 24 кадра и человеческое зрение.
LED garland on microcontroller | Microcontrollers from scratch #7
19:06
Программирование микроконтроллеров для начинающих!
Рет қаралды 70 М.
External interrupts of a microcontroller | Microcontrollers from scratch # 14
25:25
Программирование микроконтроллеров для начинающих!
Рет қаралды 49 М.
UFC 302 : Махачев VS Порье
02:54
Setanta Sports UFC
Рет қаралды 1,4 МЛН
When Jax'S Love For Pomni Is Prevented By Pomni'S Door 😂️
00:26
Каха инструкция по шашлыку
01:00
К-Media
Рет қаралды 7 МЛН
Super gymnastics 😍🫣
00:15
Lexa_Merin
Рет қаралды 76 МЛН
Timer-counter 0 ATmega8 | Programming AVR microcontrollers on C #12
29:09
Программирование микроконтроллеров для начинающих!
Рет қаралды 70 М.
Cдвиговые регистры 74HC595 и 74HC165
6:08
Максим Обухов
Рет қаралды 33 М.
I / O Ports | The first program | Microcontrollers from scratch #4
19:06
Программирование микроконтроллеров для начинающих!
Рет қаралды 147 М.
Arrays | Microcontrollers from scratch #9
18:01
Программирование микроконтроллеров для начинающих!
Рет қаралды 58 М.
Timer-counter 1, 2 ATmega8 | Microcontrollers from scratch #13
20:29
Программирование микроконтроллеров для начинающих!
Рет қаралды 41 М.
UFC 302 : Махачев VS Порье
02:54
Setanta Sports UFC
Рет қаралды 1,4 МЛН