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

Поділитися
Вставка
  • Опубліковано 9 січ 2025

КОМЕНТАРІ • 54

  • @ВикторСикаленко
    @ВикторСикаленко 11 років тому +1


    Спасибо Огромное за Урок!!! Очень хороший урок, на высшем уровне.

  • @nagirich
    @nagirich 11 років тому +1

    Спасибо Огромное за Урок!!! Очень хорошо расказали про Юарт, и про его каждые биты!!! СПАСИБКИ!!!

  • @Nocsik1
    @Nocsik1 11 років тому +1

    Я этого урока столько ждал! Спасибо большое. :)

  • @goodwill7643
    @goodwill7643 5 років тому +1

    Очень ясно и понятно. Спасибо.

  • @DmMukhin
    @DmMukhin 11 років тому +1

    Спасибо Большое! Все было понятно рассказано !

  • @ericsson3507
    @ericsson3507 11 років тому

    Будим ждать с нетерпением

  • @vitaly182
    @vitaly182 10 років тому +4

    Здравствуйте Александр Николаевич! выкладывайте пожалуста исходники которые вы показываете в примерах. Спасибо!

  • @МихаилИванов-д4ъ
    @МихаилИванов-д4ъ 11 років тому +1

    Александр, я заметил, что при отладке 6 студия делает 4 хода при нажатии на F11, когда стрелка стоит на операторе "nop" в бесконечном цикле. Не подскажете, как сделать так, чтобы она делала 1 ход за одно нажатие.

  • @nagirich
    @nagirich 11 років тому +1

    Здравствуйте, Александр! Не могли бы вы помочь в одном непростом деле?
    Дело такое: Мне нужно сканировать состояние кнопок(пусть их будет 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 9 років тому +1

    Александр а 3 МК можно соединить по USART один мастер а 2 подчиненых
    можно ли в двух подчиненных использовать только RX один провод ? Зарание спасибо.

  • @jonyj7620
    @jonyj7620 9 років тому +1

    Здравствуйте, очень хорошие уроки для начинающих! Не планируется ли пара уроков по CAN?

    • @АлександрПисанец
      @АлександрПисанец  9 років тому +1

      Jony J Нет, я их сам не знаю. Всего невозможно охватить, та и незачем.

  • @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 9 років тому

    Отличный Урок! Скорость передачи задается от тактовой частоты контролера. А как изменять частоту контроллера?

    • @АлександрПисанец
      @АлександрПисанец  9 років тому +1

      +Jack Sparrow Сменить кварцевый резонатор.

    • @JackSparrow-dn1cu
      @JackSparrow-dn1cu 9 років тому +1

      +Александр Писанец Я так понимаю ATmega16 может тактироваться внутренним резонатором до 16 МГц. Как меняется программно частота тактирования без подключения внешних резонаторов? Просто умолчанию при создании проекта контролер тактируется с частотой в 1 МГц.

    • @АлександрПисанец
      @АлександрПисанец  9 років тому +1

      Устанавливается фюзами, внутреннее тактирование максимально можно установить 8Mгц.

    • @JackSparrow-dn1cu
      @JackSparrow-dn1cu 9 років тому +1

      +Александр Писанец Okk. Думаю не только мне будет интересен по этой теме урок. В одних из тем вы спрашивали что было бы интересно для подписчиков. Так вот эта тема интересна, а именно урок на тему установок бит фьюзов. И еще команда #define F_CPU 4000000, про которую кричат на всех форумах в студии работает или нет? Путем експериментов так и не выяснил для себя. По крайней мере значение частоты контролера в окошке Processor View не меняется...

    • @АлександрПисанец
      @АлександрПисанец  9 років тому +1

      Jack Sparrow могу точно сказать что работает для библиотеки delei. И для ряда других библиотек. Так мы даем понять на какой частоте работает микроконтроллер для подпрограмм библиотек. Частота микроконтроллера так не устанавливается

  • @mideni7111
    @mideni7111 11 років тому

    Добрый день. Вот тоже разбираюсь по usart, правда под рукой есть книга программирование avr на С. Автор несколько вариантов показывает, но я не могу ни как разобраться с программой.
    т.е "Использование потока stdout"
    "Использование потоков stdout, stdin для передачи и приема символов"
    "Использование потоков stdout, stdin для передачи и приема СТРОКИ"
    помогите пожалуйста разобратся, куда я могу скинуть листинги программы.

    • @АлександрПисанец
      @АлександрПисанец  11 років тому

      Я потоки не использую и врятли чем помогу. Подготовлю другое видео там все понятно на примере объясню. С USART работать очень просто и программы получаются гибкие.

  • @ВладимирЗинченко-и2ъ

    Здравствуйте. А вы не используете протеус? у меня в нем возникли проблемы, когда я через terminal v1.9 отправляю число (в протеусе использую COMPIM подключеный к VIRTUAL TERMINAL), то в окне VIRTUAL TERMINAL, во время симуляции, показывает всякую несурядицу. Com port емулирую с помощью VSPE....

  • @WhatCookies
    @WhatCookies 9 років тому

    Подскажите, как включить IO View - там всё неактивно.
    JTAG у меня нет, но, как я понял, у вас в качестве отладчика стоит симулятор.
    Поставил у себя так же, но в IO View ничего не изменилось - всё так же неактивно

  • @ВасилийАлибабаевич-и4ф

    Здравствуйте Александр, продолжение планируете или проект изжил себя?

    • @АлександрПисанец
      @АлександрПисанец  11 років тому

      На данный момент свободного времени нет. Бросать не собераюся, продолжение обязательно будет. Все упирается в свободное время.

    • @ВасилийАлибабаевич-и4ф
      @ВасилийАлибабаевич-и4ф 11 років тому

      Ясненько))) Будем ждать с нетерпением))) У вас просто шикарно получается объяснять)

  • @s.portnik3715
    @s.portnik3715 8 років тому

    Я может пропустил что то, но захотелось посмотреть на текст программы
    и не нашел. Тексты не выкладываются или я не знаю где их смотреть?
    Спасибо.

  • @МішаПоляруш-х5д
    @МішаПоляруш-х5д 8 років тому

    Александр чи можна з 2 МК передавати дані на 1 приймач, тобто коли 2 передатчика і 1 приймач?

  • @КасКад-н8к
    @КасКад-н8к 5 років тому

    Спасибо большое. Все понятно, но возник такой вопрос. Я скопировал ваш проект и залил в мега 16 Микроконтроллеру отправляю через терминал цифру 2 а микруха принимает цифру 50 и так с любыми цифрами разница 48. Частота и боды обоих совподают. И еще когда микроконтроллер отправляет по юарту отправляет шеснадцатиричной системе исчисления как перевести в десятиричной. В чем причина не могу понять.

    • @АлександрПисанец
      @АлександрПисанец  5 років тому

      В терминале скорей всего настроено сразу не на десятичную систему

    • @КасКад-н8к
      @КасКад-н8к 5 років тому

      @@АлександрПисанец если терминал настроить на десятиричную систему то вообще не принимает цифры. Принимает только буквы

    • @КасКад-н8к
      @КасКад-н8к 5 років тому

      На самом деле микроконтроллер принимает и отправляет все шеснацатиричном системе. Проверил. Если задать на отправку 0х32 то терминал принимает нормально как цифру 2 Как можно решить эту проблему. Помоги разобраться. Может фюзы. Может студию надо настроить под десятиричную систему.6о цифрами проблема. А буквы нормально принимает и отправляет

    • @АлександрПисанец
      @АлександрПисанец  5 років тому

      Микроконтроллер передает в любой системе исчисления, а вот как воспринимает термирнальная программа это уже вопрос.

    • @КасКад-н8к
      @КасКад-н8к 5 років тому

      Хорошо я понял, дело может быть и в терминале. Сегодня сделал такой эксперемент. Подключил к одному микроконтроллеру дисплей и заставил отследить что принимает уарт и если придет цифра 2 должен отвечать отправив цифру 10. А с другого микраконтроллера отправляю цифру 2. Так вот, отправляю цифру 2 другой микроконтроллер пригимаед на дисплее отображается 50 и все. И так с любыми цифрами разница получается на 48. А вот буквы нормально отправляет. Частота и боды у обоих одинаковы. 4000000 25 9600 бод

  • @MrKr1k
    @MrKr1k 9 років тому

    А разве при расчете скорости получается ровно 9,600 ? у меня получилось 9,615384... Не скажется ли такое округление при синхронизации с другими устройствами, которые рассчитывают скорость по своему?

    • @LoveJoy-el4wv
      @LoveJoy-el4wv 8 років тому +1

      хватит и приблизительной точности отклонение не большое. Даже если у вас выдет при каких то условиях на калькуляторе 9600 то в реале она всёравно подгуливать может.

  • @ericsson3507
    @ericsson3507 11 років тому

    Александр ето все, или продолжение уроков еще будет?

    • @АлександрПисанец
      @АлександрПисанец  11 років тому

      Обязательно будут. Сейчас неплохой проект попался, востанавливаю электронный манипулятор. Попутно язык Java изучаю. Вы уж извините, все упирается во времени.

  • @ЕвгенийКонобицкий
    @ЕвгенийКонобицкий 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) можеш показать для чего она и как с ней работать? я недавно начал работать с микроконтроллерах. Спасибо.