Тёмный

Quartz crystal | Customizing fusions | Microcontrollers from scratch # 16 

Dmitriy Zabarilo
Подписаться 34 тыс.
Просмотров 63 тыс.
50% 1

It is shown how to connect a quartz crystal to the microcontroller and adjust the fuses of the microcontroller ATmega8. A quartz resonator is a kind of frequency generator. Although many MCs, including ATmega8, have a built-in generator, or rather an RC-chain, and can do without external quartz. For many tasks such a solution is completely justified, but once the MC is used to accurately count the time or to form a given time interval - various measuring devices, a quartz crystal should be applied without fail. Because it has more accuracy than the internal generator of the MC.
In order for the microcontroller to work from a quartz crystal, it is necessary to configure fusions, which are also called protection bits, although the latter is not entirely correct. How to perform the specified actions is shown in this video.

Опубликовано:

 

20 апр 2018

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 93   
@user-li4xh9fi6w
@user-li4xh9fi6w 2 года назад
Программирование микроконтроллеров. Полный курс для начинающих: diodov.net/programmirovanie-mikrokontrollerov-avr/ Электроника для начинающих. Мощный курс. diodov.net/elektronika-dlya-nachinayushhih/
@vorysgelo
@vorysgelo 2 года назад
подскажите пожалуйста, а где найти программу, что у вас в ролике - DATASHEET SEARCH SITE?
@user-yz2my6kp5i
@user-yz2my6kp5i 5 лет назад
Ппрофесионализъм и академично изложение! Удоволствие е да си част от този процес! Благодаря!
@cinemayubileyny6467
@cinemayubileyny6467 Год назад
Спасибо за материалы, смотрю через VPN. Не удаляйте, очень интересный контент!
@user-uj9rw9ty1e
@user-uj9rw9ty1e 7 месяцев назад
Благодарствую за очередной урок, учитель! Все подключил, все работает- мигает🎉
@petrdorohov3170
@petrdorohov3170 Год назад
Спасибо тебе добрый человек, единственный кто разложил что и как!!! Подписка!!!
@serg75222
@serg75222 5 лет назад
Молодец.Обьясняеш доступным языком спасибо!
@rostyslavfedorenko7859
@rostyslavfedorenko7859 6 лет назад
Очень толково обьясняешь! Продолжай так дальше! Жду твоих новых видео!
@user-ge7gm1ln3v
@user-ge7gm1ln3v 6 лет назад
всегда лайк, благодарность, ждем новый урок!!
@never.m1nd
@never.m1nd 5 лет назад
Пожалуй оставлю ссылку на калькулятор фьюзов, надеюсь автор не против. Новичкам пригодится homes-smart.ru/fusecalc/
@sirena-5
@sirena-5 Год назад
Дмитре, бачу, що Ваші руки не лише паяльник тримають! Руки натруджені, голова світла. Ви гордість українського народу!💛💙 Миру Вам!
@user-hb4sx3lh2q
@user-hb4sx3lh2q 6 лет назад
Молодец, продолжай в том же духе. Ждем продолжения! держи лайк
@user-lo2ue9zp7k
@user-lo2ue9zp7k 6 месяцев назад
Спасибо Детальное объяснение
@microsoft8792
@microsoft8792 2 года назад
Видео - просто класс!
@x-comics4581
@x-comics4581 6 лет назад
Порадовал!!!
@zaharshoihit1183
@zaharshoihit1183 6 лет назад
Уважаемый автор, а где продолжение этого цикла? Ваши подписчики требуют продолжения банкета!!! :)
@rk4lwe687
@rk4lwe687 2 года назад
Продолжение проверки и испытания работы кварцевого резонатора я провожу с помощью двух генераторов 470 - 530 кгц Сигналы вч подаю на смеситель и слушаю через усилитель ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-kgzhxaMps-g.html Прошу сообщить понятен ли метод которым я пользуюсь ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-kgzhxaMps-g.html
@Comatech
@Comatech 5 лет назад
Мне понравилось описание фьюзов у одно чела, раньше фьюзы были так сказать аппаратные, то-есть пережигаемые перемычки, когда перемычка целая, фьюз выключен, а когда её сожгли фьюз установлен, это помогает разобраться с прямыми и инверсными фьюзами.
@Comatech
@Comatech 5 лет назад
А вообще самая удобная работа с фюзами в программе Khazama
@MrRONE777
@MrRONE777 4 года назад
Очень круто
@laune73
@laune73 5 лет назад
Отлично!
@Elkhan896
@Elkhan896 4 года назад
очень полезно, спасибо.
@user-bf1gy1in1c
@user-bf1gy1in1c 6 лет назад
Все грамотно.Сделай урок про UART
@user-ow9yl4ut4t
@user-ow9yl4ut4t 4 года назад
Спасибо
@user-sm1xh8fm6u
@user-sm1xh8fm6u 5 лет назад
В качалку ходишь или картошку капал?
@user-bf2cl9yp2u
@user-bf2cl9yp2u 5 лет назад
Хороший урок. Но, в протеусе не обязательно подключать кварц. Достаточно прописать его значение в Мгц по щелчку правой мыши в "Edit Properties" во вкладке "Clock Freguency". И надо было внимание заострить при установке фьюзов на их HEX значения. Еще бы надо было сказать как то так: "...если вы считали фьюзы, и бит SPIEN имеет галку, то все фьюзы, будут читаться как инверсные, а если нет... то как в даташите. Ну и рассказать, чем грозит изменение его значения, хотя в "дудке" его не изменить, не залезая в ини файл. И собственно вопрос. Занимаюсь PIC. Атмега в новинку. Возможно ли "делать дебаг", и пошаговую отладка прямо в протеусе, и править код там же, как на PIC? Если да, то какой Сишный компилятор прикрутить? Пишу на Си. Зацепило протеусом, MPASM (Proteus), AVRASM, ASEM-51, явно не Сишные.
@user-je2dr7cx8h
@user-je2dr7cx8h Месяц назад
Здравствуйте спасибо вам так интересно у вас курсы есть по программированию МК
@vladimirlee5928
@vladimirlee5928 3 года назад
F_CPU необходим для для функции delay. Если не использовать ее библиотеку, то и не нужно указывать частоту.
@aleksandrjezov910
@aleksandrjezov910 3 года назад
Доброго времени суток, подскажите работает ли микруха с кварцами промежуточных значений например 7.145 или 13.750 если да то как на эту частоту настроить контроллер?
@serbeer1240
@serbeer1240 5 лет назад
Автор А программы пишешь ?
@user-fo7ox5yp9o
@user-fo7ox5yp9o 5 лет назад
Здравствуйте продолжение уроков будет ?
@user-li4xh9fi6w
@user-li4xh9fi6w 5 лет назад
Здравствуйте, продолжение будет.
@yuryfull5136
@yuryfull5136 4 года назад
а можно одновременно использовать как внутреннюю рц-цепочку так и внешний резонатор?
@vladimirlee5928
@vladimirlee5928 3 года назад
вы фьюз биты не можете выставить сразу для двух режимов.
@zaharshoihit1183
@zaharshoihit1183 6 лет назад
Добрый день. Скажи пожалуйста, для чего нужны буквы UL в указании частоты и какие ещё буквы бывают ?
@sense3247
@sense3247 6 лет назад
U - unsigned (без знаковый), L - long(длинный). Если их не указать, то константа будет наименьшего возможного типа. В зависимости от значения целой константы компилятор присваивает ей тот или иной тип (char, int, long int). С помощью суффикса U (или u) можно представить целую константу в виде беззнакового целого. Например, Константе 200U выделяется 1 байт, и старший бит используется для представления одного из разрядов кода числа и диапазон значений становится от 0 до 255. Суффикс L (или l) позволяет выделить целой константе 8 байт (long int). Совместное использование в любом порядке суффиксов U (или u) и L (или l) позволяет приписать целой константе тип unsigned long int, и она займет в памяти 64 разряда, причем знаковый разряд будет использоваться для представления разряда кода (а не знака). (prog-cpp.ru/c-constants/)
@zaharshoihit1183
@zaharshoihit1183 6 лет назад
Большое спасибо.
@user-uv7oe9nj9u
@user-uv7oe9nj9u 3 года назад
спасибо за видео . подскажите начинаещему в чем раздница амег 8 с буквой АМЕГА 8А
@vladimirlee5928
@vladimirlee5928 3 года назад
ATMEGA8A с низким потреблением энергии.
@pinknoise7613
@pinknoise7613 3 года назад
Не очень поняла ситуацию с возвратом на внутреннее тактирование после кварца. С программой понятно, а что делать с фьюзами? Не вынимая кварц проставить галочки на внутренний генератор? То есть в какой-то момент во время программирования он перескочит с одного источника на другой, внутренний?
@101picofarad
@101picofarad 3 года назад
Да, МК находясь на внешке и получив фьюзы для внутреннего, включает внутренний и переходит на него. Если выдернуть кварц, то камень не может прописать фьюзы в таком режиме и как следствие включить внутренний генератор и перейти на него.
@MSVSanjok
@MSVSanjok 2 месяца назад
Как изменить фьюзы, чтобы в атмега 328 работал внутренний кварц на 8мгц, спасибо?
@user-ge7gm1ln3v
@user-ge7gm1ln3v 6 лет назад
дружище скажи, по авр уроки еще будут, а то долго нету
@user-li4xh9fi6w
@user-li4xh9fi6w 6 лет назад
Будут, обязательно. Сейчас напряг со свободным временем.
@user-hy5th1it3u
@user-hy5th1it3u 5 лет назад
Подскажите, у AT89S8253 фьюзы настраиваются? Ставлю по очереди два резонатора на 24 МГц от разных производителей , в итоге с одним частота в 3 раза меньше.
@BetacamSP
@BetacamSP 5 лет назад
Кварцы бывают гармониковые, скорее всего тот кварц гармониковый, и 24 МГц выдает на 3-й гармонике, соответственно основная частота 24/3=8 МГц
@user-hy5th1it3u
@user-hy5th1it3u 5 лет назад
Да я уже разобрался. Нужно смотреть характеристики резонатора конкретного производителя. Так и оказалось, что одни работают на основной гармонике а другие на третьей.
@stepansml6713
@stepansml6713 Год назад
@@user-hy5th1it3u Статью когда то читал в МК или ЮТ Тайна третьей гармоники. название помню, а сути нет (( Но вроде там про блоки питания было импульсные.
@Yupitrer
@Yupitrer 4 года назад
+
@user-ge7gm1ln3v
@user-ge7gm1ln3v 6 лет назад
пртветствую автор. слушай а можно писать код на си в атмел студио для ардуино, если да, сделай урок как это осуществить, думаю всем интересно будет. как раз готовая отладочная плата
@vladimirlee5928
@vladimirlee5928 3 года назад
а зачем писать в ATMEL на C для Ардуино? Когда можно написать в ATMEL на С для AtMega328, который сидит в платке Ардуино UNO например и прошивать его через SPI.
@user-fr9sn4cf6h
@user-fr9sn4cf6h 6 лет назад
ломом работал?характерные мазоли
@stepansml6713
@stepansml6713 Год назад
это от паяльника, наверное.
@BitlllJooS
@BitlllJooS 2 года назад
Прошил с кварцем один раз...теперь на любое действие ошибка(( все, убил контроллер?
@scanty6996
@scanty6996 3 года назад
0 это включенно, 1 это выключенный фьюз. Вообще то по документации
@user-ge7gm1ln3v
@user-ge7gm1ln3v 6 лет назад
приветствую автор, ну скинь толковую ссылку или сам расскажи как создать библиотеку в "атмел студио", а то толковой инфы не нахожу. Или способов много!?
@DOMINATOR-ou8nz
@DOMINATOR-ou8nz 5 лет назад
В атмел студио File/New/Project.../GCC C Static Library Project
@user-xt9ht5cy2t
@user-xt9ht5cy2t 2 года назад
что будет если неправильно настроить фьюзы? что делают конденсаторы в комплекте с кварцем?
@user-sw9fs8je2g
@user-sw9fs8je2g Год назад
Будут не правильно пересчитаны импульсы во время в аппаратных таймерах. Конденсаторы нужны что бы создать контур для осцилляции тока. Без них кварц не войдёт в резонанс.
@user-ef2rr7kz4m
@user-ef2rr7kz4m 5 лет назад
Зачем в программе писать частоту работы процессора при подключение внешнего резонатора, если при смене резонатора на другой номинал частота меняется? И от записанной частоты в программе не зависит?
@numizmat2883
@numizmat2883 5 лет назад
Может для того что бы знать на какой частоте работает не рассматривая маркировку.
@user-ef2rr7kz4m
@user-ef2rr7kz4m 5 лет назад
@@numizmat2883 Это предположение, а хотелось бы точно. Может в процессоре есть калибратор который по выставленному значению и физической величине кварца сам выставляет делители для частоты. Если мое предположение верно то тогда как сказал автор можно воткнуть кварц большего номинала чем положено и процессор все равно будет работать. Ну как то так, а есть еще интересные варианты где бы это могло работать. Например при переходе в спящий режим что бы экономить энергию можно понизить частоту.
@Nyamchik-0_0
@Nyamchik-0_0 3 года назад
Мож кто то тоже задаёт такой вопрос. В программе указывается для задержки и функция делай будет делать правильную задержку по времени. Скажем просто вы выставили 1секунду и указываете в программе 1мгц 4мгц 8мгц... Зная частоту программа всегда будет делать задержку в 1сек
@TIM7283
@TIM7283 3 года назад
нельзя ли снять подобное видео но с часовым кварцем (32,768) ? Либо написать статью. после установки фьюзов ничего не могу сделать с МК, ни считать ни прошить программу. Нашел конечно информацию в интернете что это связано со "скоростью прошивки" но перепробовал все советы ничего не помогло, просто не понимаю что делаю неверно...
@microsoft8792
@microsoft8792 2 года назад
Вопрос возник: что такое UL в строке #define F_CPU 8000000UL ? Ставлю, например, LU или убираю эти буквы и все работает так же как и с UL.
@microsoft8792
@microsoft8792 2 года назад
Нашел ответ ниже. Спасибо sense.
@user-bd6ox3mw8n
@user-bd6ox3mw8n 2 года назад
Что значит взести биты? Это подать на транзисторы напряжение? Как напряжение находит свои транзисторы имеено нужные транзисторы, а не какие попало?
@user-bd6ox3mw8n
@user-bd6ox3mw8n 2 года назад
Зачем микроконтроллеру такая высокая частота, даже килогерцы много, не говоря о мега герцах, когда светодиод моргает с частотой 1 Гц?
@sskdll
@sskdll 5 лет назад
Продолжения не будет?? :(
@user-li4xh9fi6w
@user-li4xh9fi6w 5 лет назад
Продолжение будет скорее всего с сентября, а может и раньше.
@sskdll
@sskdll 5 лет назад
Отлично, рад слышать! С нетерпением жду (и не я один) продолжения как по МК так и по электронике! :) Спасибо большое за ваши видео)
@user-hh6nj1tx6d
@user-hh6nj1tx6d 3 года назад
@@user-li4xh9fi6w Доброе утро/вечер/день, столкнулся c конденсаторами на 500 В в обвязке "кварца". Ситуация та же, микроконтроллер + "кварц". Пока не нашел объяснения такому выбору напряжения. Поскольку такие конденсаторы мне не доступны, хотелось бы получить объяснение или совет по данному вопросу. С чем это может быть связано и почему нельзя использовать, к примеру, конденсаторы на 50 В ?
@user-jn4oy9yr3g
@user-jn4oy9yr3g 5 лет назад
Ну и зачем кварц в протеусе подключал если все равно пришлось модель настраивать...
@splinterkab9007
@splinterkab9007 4 года назад
Протеусу вообще не пофиг. Можно и не подключать кварц в нём. Главное частоту в нем выставить.
@evgenyprokopenkov6655
@evgenyprokopenkov6655 Год назад
Блиан. Сраные инверсные и неинверсные биты. Переключил с одного на другой, и там почему то автоматом поставились везде 0. Прошил, жопа контроллеру. Следом попробовал поставить новые оставшиеся 2 штуки Atmega8 еще раз. но уже с исправленными битами. Программатор больше не читает их. Ошибка в AVRdude cannot set sck repiod. pelase check for usbasp firmware update. Что могло с ним произойти. Скачал самую свежую версию avrdude, все так же (((((( Че теперь делать не знаю
@hekto_pyc9998
@hekto_pyc9998 5 лет назад
А как более точно подобрать конденсатор к кварцу?
@proletarian
@proletarian 3 года назад
Нашёл ответ?
@hekto_pyc9998
@hekto_pyc9998 3 года назад
@@proletarian принцип понял, но ответа так и не нашёл.
@101picofarad
@101picofarad 3 года назад
@@proletarian номиналы балластных конденсаторов (каждого) равны двойной ёмкости кварца минус емкость пина камня (около 5 пик) и минус ёмкость дорожки до кварца (5..10пик). При четком подборе номинала синусоида кварца будет бОльшей амплитуды. Но если номинал будет не точный, то работать все равно будет, просто амплитуда синуса немного упадет.
@proletarian
@proletarian 3 года назад
@@101picofarad спасибо
@101picofarad
@101picofarad 3 года назад
@@proletarian эту синусоиду можно увидеть осциллографом , ткнувшись щупом с делением 10х в один из выводов кварца (на другом выводе будет кривая синусоида).
@JapanWolf666
@JapanWolf666 4 года назад
автор канал ты здесь? у меня есть вопрос, я смотрю ты разбираешься, поэтому хочу от тебя подсказку услышать
@goodluck9648
@goodluck9648 4 года назад
Не внутренний кварц, а внутренняя RC цепь
@user-tx6cv9bt4n
@user-tx6cv9bt4n Месяц назад
Как всё сложно🤦‍♂️
@user-yt1td7qo4q
@user-yt1td7qo4q 5 лет назад
Всё одно... Ничего не понял... Зачем козе баян??? Зачем нужно цеплять внешний кварц 8 Мгц, если есть внутренний 8 Мгц... Что меняется??? Что значит Hi. Low.Middle при выборе внешнего кварца? У меня сносит башню...
@stepansml6713
@stepansml6713 Год назад
точность отсчёта периодов и независимость от температуры. ну или существенно меньшая зависимость. на рц за сутки часты уйдут на 20 минут, например, а на кварце на несколько секунд. при передаче данных есть протоколы архичувствительные к часам. если подключен к ацп доплеровский датчик, то нужны очень точные отсчёты коротких промежутков и др
@user-mp2js7gy1e
@user-mp2js7gy1e 5 лет назад
Дорогой автор, я вот думаю, а мозгов допереть не хватает. Вот выставил я в коде интервал 1 сек через функцию _delay_ms(1000); и не секунда получается, а намного быстрее чем 1 секунда, но вот только я подключаю таймер так всё работает ровно 1 секунда как прописал так и есть. Вопрос в том, что за фигня с _delay_ms(1000); ?
@KONARTIK1
@KONARTIK1 4 года назад
По моему 220 это не 22пф а как есть 220пф.
@user-wb9sv3so6p
@user-wb9sv3so6p 4 года назад
Если написано 220 то это значит что 22*10 в степени 0. А любое число в степени 0 есть 1. Получаем 22*1= 22 .
@rk4lwe687
@rk4lwe687 2 года назад
Прошу сообщить понятен ли метод проверки и испытания работы кварцевого резонатора 500 кгц с помощью двух генераторов 470 - 530 кгц ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-kgzhxaMps-g.html
@igorkostin5280
@igorkostin5280 4 года назад
Как же бесит этот "даташыт". Шит (shit) по английски значит - дерьмо, a data sheet читается как 'дейтэщиит'. В русском есть слово "спецификация", а вот такой бессмыслицы как "даташыт" в нём нет.
@stepansml6713
@stepansml6713 Год назад
гурман... а я читаю всё в немецком варианте. знакомые усыкаются. Зато понятно как писать. Реад, врите, Бооль, унсигнед, До вхиле... понапридумывали ритуалов с буквами: читается не читается, подразумевается, но редуцировано. ашпротивно.
Далее
Bitwise operations | Microcontrollers from scratch #11
20:41
LCD1602 - это очень просто!
22:19
Просмотров 139 тыс.