Тёмный
No video :(

Все о микроконтроллерах для начинающих "USART часть 1" 

Microcontrollers
Подписаться 46 тыс.
Просмотров 28 тыс.
50% 1

Программирование микроконтроллеров avr для начинающих. Tема видео урока: работа в микроконтроллерах avr интерфейса USART

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

 

28 авг 2024

Поделиться:

Ссылка:

Скачать:

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

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 54   
@nagirich
@nagirich 10 лет назад
Спасибо Огромное за Урок!!! Очень хорошо расказали про Юарт, и про его каждые биты!!! СПАСИБКИ!!!
@user-gy1ed4fi3b
@user-gy1ed4fi3b 10 лет назад
Спасибо Огромное за Урок!!! Очень хороший урок, на высшем уровне.
@Nocsik1
@Nocsik1 10 лет назад
Я этого урока столько ждал! Спасибо большое. :)
@goodwill7643
@goodwill7643 5 лет назад
Очень ясно и понятно. Спасибо.
@DmMukhin
@DmMukhin 10 лет назад
Спасибо Большое! Все было понятно рассказано !
@ericsson3507
@ericsson3507 10 лет назад
Будим ждать с нетерпением
@vitaly182
@vitaly182 10 лет назад
Здравствуйте Александр Николаевич! выкладывайте пожалуста исходники которые вы показываете в примерах. Спасибо!
@user-hq1zc7sm7w
@user-hq1zc7sm7w 10 лет назад
Александр, я заметил, что при отладке 6 студия делает 4 хода при нажатии на F11, когда стрелка стоит на операторе "nop" в бесконечном цикле. Не подскажете, как сделать так, чтобы она делала 1 ход за одно нажатие.
@jonyj7620
@jonyj7620 9 лет назад
Здравствуйте, очень хорошие уроки для начинающих! Не планируется ли пара уроков по CAN?
@user-mj8ux1bn2c
@user-mj8ux1bn2c 9 лет назад
Jony J Нет, я их сам не знаю. Всего невозможно охватить, та и незачем.
@nagirich
@nagirich 10 лет назад
Здравствуйте, Александр! Не могли бы вы помочь в одном непростом деле? Дело такое: Мне нужно сканировать состояние кнопок(пусть их будет 8шт подключённые через мультиплексор) и передавать их по юарту. Но тут есть одно "НО": перед отправкой байта кнопки(нажата - 0x7F; отпущена - 0х00;) должен отправляться статус-байт(0b10110000) а заним id кнопки. И если нажато например сразу 5 кнопок- то юарт передают значение каждой кнопки с ранее переданой перед ним статус-байтом и id. тут такое примечание: каждая кнопка имеет свой id. В конечном результате поссылка должна состоять их 3 байт(статус-байт---байт-id---байт-состояния) например: 0xB0 0x01 0x7F; 0xB0 0x05 0x7F; 0xB0 0x09 0x7F; Двумя словами: хочу реализовать MIDI протокол но по Юарту
@NIKOLAY_PSHONIA
@NIKOLAY_PSHONIA 8 лет назад
Александр а 3 МК можно соединить по USART один мастер а 2 подчиненых можно ли в двух подчиненных использовать только RX один провод ? Зарание спасибо.
@user-mj8ux1bn2c
@user-mj8ux1bn2c 8 лет назад
+Никола Пшоня да
@user-cg2ew7zd1q
@user-cg2ew7zd1q 8 лет назад
Александр чи можна з 2 МК передавати дані на 1 приймач, тобто коли 2 передатчика і 1 приймач?
@user-mj8ux1bn2c
@user-mj8ux1bn2c 8 лет назад
+Міша Поляруш Только если передавать данные поочередно.
@padalkoalexey216
@padalkoalexey216 7 лет назад
Добрый день! Подскажите пожалуйста. Долго бьюсь- не могу понять почему после записи в регистр UDR программа начинается с начала. В процессе отладки видно что маркер становится сразу после int main(void). Не обращайте внимания на быдлокод- это черновик - урезал большую программу - искал причину неадекватного поведения. Отлаживаю на JTAG ICE 1. AVR Studio 4. //Atmega16A - èñïîëüçóåìûé ìèêðîêîíòðîëëåð #define F_CPU 7372800 //îáúÿâèì áèáëèîòåêè //#include #include "util/delay.h" #include #include //ïîäãðóæàåì ïðåðûâàíèå unsigned char Rx_Char, Rx_Char_old ; unsigned char char1; int Time_max=30; // ÷òåíèå ïîðòà ISR(USART_RXC_vect) { Rx_Char = UDR; char1=Rx_Char; //UCSRB |=(1
@JackSparrow-dn1cu
@JackSparrow-dn1cu 8 лет назад
Отличный Урок! Скорость передачи задается от тактовой частоты контролера. А как изменять частоту контроллера?
@user-mj8ux1bn2c
@user-mj8ux1bn2c 8 лет назад
+Jack Sparrow Сменить кварцевый резонатор.
@JackSparrow-dn1cu
@JackSparrow-dn1cu 8 лет назад
+Александр Писанец Я так понимаю ATmega16 может тактироваться внутренним резонатором до 16 МГц. Как меняется программно частота тактирования без подключения внешних резонаторов? Просто умолчанию при создании проекта контролер тактируется с частотой в 1 МГц.
@user-mj8ux1bn2c
@user-mj8ux1bn2c 8 лет назад
Устанавливается фюзами, внутреннее тактирование максимально можно установить 8Mгц.
@JackSparrow-dn1cu
@JackSparrow-dn1cu 8 лет назад
+Александр Писанец Okk. Думаю не только мне будет интересен по этой теме урок. В одних из тем вы спрашивали что было бы интересно для подписчиков. Так вот эта тема интересна, а именно урок на тему установок бит фьюзов. И еще команда #define F_CPU 4000000, про которую кричат на всех форумах в студии работает или нет? Путем експериментов так и не выяснил для себя. По крайней мере значение частоты контролера в окошке Processor View не меняется...
@user-mj8ux1bn2c
@user-mj8ux1bn2c 8 лет назад
Jack Sparrow могу точно сказать что работает для библиотеки delei. И для ряда других библиотек. Так мы даем понять на какой частоте работает микроконтроллер для подпрограмм библиотек. Частота микроконтроллера так не устанавливается
@s.portnik3715
@s.portnik3715 8 лет назад
Я может пропустил что то, но захотелось посмотреть на текст программы и не нашел. Тексты не выкладываются или я не знаю где их смотреть? Спасибо.
@user-mj8ux1bn2c
@user-mj8ux1bn2c 8 лет назад
+S. Portnik Код маленький не стал размещать.
@mideni7111
@mideni7111 10 лет назад
Добрый день. Вот тоже разбираюсь по usart, правда под рукой есть книга программирование avr на С. Автор несколько вариантов показывает, но я не могу ни как разобраться с программой. т.е "Использование потока stdout" "Использование потоков stdout, stdin для передачи и приема символов" "Использование потоков stdout, stdin для передачи и приема СТРОКИ" помогите пожалуйста разобратся, куда я могу скинуть листинги программы.
@user-mj8ux1bn2c
@user-mj8ux1bn2c 10 лет назад
Я потоки не использую и врятли чем помогу. Подготовлю другое видео там все понятно на примере объясню. С USART работать очень просто и программы получаются гибкие.
@user-wu5hx1lo7j
@user-wu5hx1lo7j 10 лет назад
Здравствуйте Александр, продолжение планируете или проект изжил себя?
@user-mj8ux1bn2c
@user-mj8ux1bn2c 10 лет назад
На данный момент свободного времени нет. Бросать не собераюся, продолжение обязательно будет. Все упирается в свободное время.
@user-wu5hx1lo7j
@user-wu5hx1lo7j 10 лет назад
Ясненько))) Будем ждать с нетерпением))) У вас просто шикарно получается объяснять)
@WhatCookies
@WhatCookies 9 лет назад
Подскажите, как включить IO View - там всё неактивно. JTAG у меня нет, но, как я понял, у вас в качестве отладчика стоит симулятор. Поставил у себя так же, но в IO View ничего не изменилось - всё так же неактивно
@user-mj8ux1bn2c
@user-mj8ux1bn2c 9 лет назад
Богдан Белик Врятли чем помогу, не должно такого быть.
@user-fm2fn6je3n
@user-fm2fn6je3n 9 лет назад
Здравствуйте. А вы не используете протеус? у меня в нем возникли проблемы, когда я через terminal v1.9 отправляю число (в протеусе использую COMPIM подключеный к VIRTUAL TERMINAL), то в окне VIRTUAL TERMINAL, во время симуляции, показывает всякую несурядицу. Com port емулирую с помощью VSPE....
@user-mj8ux1bn2c
@user-mj8ux1bn2c 9 лет назад
Владимир Зинченко Не использую протеус
@Alexcymantrene
@Alexcymantrene 2 года назад
проблема видимо с настройками скорости
@MrKr1k
@MrKr1k 9 лет назад
А разве при расчете скорости получается ровно 9,600 ? у меня получилось 9,615384... Не скажется ли такое округление при синхронизации с другими устройствами, которые рассчитывают скорость по своему?
@LoveJoy-el4wv
@LoveJoy-el4wv 7 лет назад
хватит и приблизительной точности отклонение не большое. Даже если у вас выдет при каких то условиях на калькуляторе 9600 то в реале она всёравно подгуливать может.
@user-uz3sn4tk3r
@user-uz3sn4tk3r 4 года назад
Спасибо большое. Все понятно, но возник такой вопрос. Я скопировал ваш проект и залил в мега 16 Микроконтроллеру отправляю через терминал цифру 2 а микруха принимает цифру 50 и так с любыми цифрами разница 48. Частота и боды обоих совподают. И еще когда микроконтроллер отправляет по юарту отправляет шеснадцатиричной системе исчисления как перевести в десятиричной. В чем причина не могу понять.
@user-mj8ux1bn2c
@user-mj8ux1bn2c 4 года назад
В терминале скорей всего настроено сразу не на десятичную систему
@user-uz3sn4tk3r
@user-uz3sn4tk3r 4 года назад
@@user-mj8ux1bn2c если терминал настроить на десятиричную систему то вообще не принимает цифры. Принимает только буквы
@user-uz3sn4tk3r
@user-uz3sn4tk3r 4 года назад
На самом деле микроконтроллер принимает и отправляет все шеснацатиричном системе. Проверил. Если задать на отправку 0х32 то терминал принимает нормально как цифру 2 Как можно решить эту проблему. Помоги разобраться. Может фюзы. Может студию надо настроить под десятиричную систему.6о цифрами проблема. А буквы нормально принимает и отправляет
@user-mj8ux1bn2c
@user-mj8ux1bn2c 4 года назад
Микроконтроллер передает в любой системе исчисления, а вот как воспринимает термирнальная программа это уже вопрос.
@user-uz3sn4tk3r
@user-uz3sn4tk3r 4 года назад
Хорошо я понял, дело может быть и в терминале. Сегодня сделал такой эксперемент. Подключил к одному микроконтроллеру дисплей и заставил отследить что принимает уарт и если придет цифра 2 должен отвечать отправив цифру 10. А с другого микраконтроллера отправляю цифру 2. Так вот, отправляю цифру 2 другой микроконтроллер пригимаед на дисплее отображается 50 и все. И так с любыми цифрами разница получается на 48. А вот буквы нормально отправляет. Частота и боды у обоих одинаковы. 4000000 25 9600 бод
@ericsson3507
@ericsson3507 10 лет назад
Александр ето все, или продолжение уроков еще будет?
@user-mj8ux1bn2c
@user-mj8ux1bn2c 10 лет назад
Обязательно будут. Сейчас неплохой проект попался, востанавливаю электронный манипулятор. Попутно язык Java изучаю. Вы уж извините, все упирается во времени.
@user-lf5jy5ei4j
@user-lf5jy5ei4j 7 лет назад
Добрый час Александр. Подскажите из практики если есть такова, в гараже у меня скважина от скважены к дому проходит " футляр" - труба диаметром на 110мм. в нем заведений кабель 380в и труба от скважены, хочу управлять насосом и другими нагрузками с помощью МК АТмега16 который будет находится в гараже и по плану общаться с ЦПУ находящийся в доме, соединение планируется проводить витой парой , расстояние 26 метров. Можете дать какие-то практические советы, по данному интерфейсу, кабель, может микросхему МАХ 232 применить, смущает ещё кабель 380 у него нет экрана просто 2я изоляция. Я из Ваших роликов понял ,что Вам этот интерфейс очень хорошо знаком. Спасибо Евгений. evgenvl25 @gmail.com
@NicolaeSoitu
@NicolaeSoitu 10 лет назад
здраствуйте, имею вот такую штучку www.ebay.com/itm/171229503155 (USB to TTL RS232 Arduino Pro Mini Download PL2303 Replace FT232RL CP2302 Serial) можеш показать для чего она и как с ней работать? я недавно начал работать с микроконтроллерах. Спасибо.
@user-mj8ux1bn2c
@user-mj8ux1bn2c 10 лет назад
Сам им не пользовался, и рассказать про нее не чего не могу.
Далее
ЛОВИМ НОВЫХ МОНСТРОВ В LETHAL COMPANY
2:42:22