Тёмный

SPI интерфейс на микроконтроллере. "урок 18" 

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

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

 

30 окт 2024

Поделиться:

Ссылка:

Скачать:

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

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 97   
@dismal23R
@dismal23R 9 лет назад
интересуют изделия, которые можно применить в быту. Уроки великолепные, продолжайте своё дело!! лайк как и всегда не глядя
@GlisteRminsk
@GlisteRminsk 9 лет назад
Микантолер =)
@IlyaProduction94
@IlyaProduction94 9 лет назад
Александр, спасибо большое за уроки. Это самые понятные и полезные уроки по Atmel МК, что я видел. Вы научили не просто программировать МК или использованием конкретных периферийных устройств, а самой методологии! С помощью ваших уроков я сделал: автоматическую теплицу, картофельную пушку, слайдер для time-lapse и много чего еще! сейчас я преимущественно программирую на STM32, но ваши уроки смотрю с удовольствием!
@АлександрПисанец
+IlyaProduction94 Спасибо, еще бы просмотров с подписчиками по больше и в обще супер было :)
@MrKr1k
@MrKr1k 9 лет назад
Уроки супер. Очень нравится формат. Было бы интересно узнать что-то про USB. А также может не совсем в тему, но разработка устройства с нуля. Например есть задача, как ее реализовать, с чего начинать, какие компоненты (электронные) использовать, как платы делать, какие расчеты проводить... Можно даже отдельную тему сделать что-то типа разработка устройства. На других каналах видел что-то подобное, но они к сожалению плохо объясняют и какие то вещи упускают, которые для начинающих очень важны. Так и просмотры бы увеличились. А так спасибо большое за уроки. Очень полезный канал.
@artkovss7272
@artkovss7272 9 лет назад
Спасибо Вам за ваши уроки. Они очень помогают. Очень жду урок 4 по символьному LCD дисплею. Материал по данным уроком одаптирую для работы с OLED дисплеем.
@ВладимирСтороженко-п7н
Уважаемый Александр, Ваши уроки конечно же нужны, большое спасибо, присоединяюсь к пожеланиям познать DS18B20
@JackSparrow-dn1cu
@JackSparrow-dn1cu 9 лет назад
Все как всегда - на высоте!!! Низкий поклон! Интересует также работа с датчиком давления (измерение глубины под водой). Датчик силы нажатия (например пальцем) или сила прикладываемая к захвату манипулятора.
@АлександрФедянин-х2т
Здравствуйте, Александр. Для экспериментов очень хорошо подходит 4-х проводный вентилятор, то есть снять частоту с тахометра и сгенерировать управление для его вращения. Ну а если сделать его беспроводным, то вообще супер!
@ivansokolov164
@ivansokolov164 6 лет назад
Александр. Ваши уроки просто СУПЕР!!! Да, с первого раза не всегда удается полностью разобраться в таких "простых" вещах, как SPI, а потому очень хотелось бы увидеть уроки по общению МК с устройствами... в частности, с цветным TFT дисплеем на чипе ILI 9341. В интернете куча ссылок со словами "весь интернет пестрит примерами...", но по факту все они ссылаются на 3 конкретных ссылки, причем в них обмен данными с дисплеем производится не просто по SPI, а по 8-ми или 16-ти битной шине данных в придачу или вообще на платформе arduino. Очень бы хотелось понять как подсоединить TFT дисплей на ILI 9341 чисто по SPI 4-wire 8-bit data serial interface (SCL,SDA,D/CX,CSX). В любом случае, СПАСИБО ВАМ ОГРОМНОЕ даже уже за те уроки что сделаны. У Вас просто талант доходчиво и наглядно объяснять. Сразу видно, что человек делает свои уроки с душой и старанием, а не лишь бы лайков побольше насобирать.
@АлександрФедянин-х2т
Для экспериментов очень хорошо подходит 4-х проводный вентилятор, то есть снять частоту с тахометра и сгенерировать управление для его вращения.
@DmMukhin
@DmMukhin 9 лет назад
Спасибо за Ваши уроки. Логичным продолжением этого урока было бы видео о работе с конкретным устройство по SPI протоколу.
@pilotm31
@pilotm31 9 лет назад
Материал понятен - вопросов нет. Насчет устройств - хочется побольше изделий "модульного" исполнения, т.е. таких, которые потом можно использовать как конструктор (например "Сенсорная клавиатура"). А вообще всегда рад любому материалу, спасибо за работу.
@stvJnK
@stvJnK 9 лет назад
Огромное спасибо, всегда с нетерпение жду новых уроков. Любой материал интересен и видео обзоры Ваших подделок :) . Из тем, долго интересует: 1. Как можно реализовать прошивку МК по радио каналу; 2. Соглашусь с Евгений Ефремов: Модульную систему из нескольких МК. Но более сложное: один МК - управляет другими МК и может по отдельности их прошивать.
@marsm6619
@marsm6619 9 лет назад
Спасибо Александр, растут Ваши уроки и вместе с ним и мы. Вот есть вопросы в моем решении опроса матричной клавиатуры 4х4 + возвращает сочетание нажатых клавиш + обходимся своими подтягивающими резисторами int keypress(){ uint sum; // долго набирать unsigned int, typedef unsigned int uint; byte a, bit; // долго набирать unsigned char, typedef unsigned char byte; bit |=(11); } } // железо AtMega8 на прошита на 8000 кГц Возможно оптимизация кода в ATMEL STUDIO 6.0 как-то ломает логику, тогда подскажите как конкретную строчку сделать игнорируемой для для оптимизации например: a = 10; // кода с присвоением 10 не будет если не отключить оптимизацию a +=5; можно что-то дописать чтобы а = 10 не отключая оптимизацию?
@АлександрПисанец
+Mars M Попробуйте так - volatile unsigned char a
@aleksandrnaumenko3826
@aleksandrnaumenko3826 3 года назад
ну какое мнение.Молодчина!
@NIKOLAY_PSHONIA
@NIKOLAY_PSHONIA 9 лет назад
Александр спасибо - уроки как всегда на высоте, вот так бы в ВУЗАХ преподавали. Следующий урок напрашивается ATMEGA+SD карта ? Просим Просим Александр !!! Возможно меня кто то подержит.
@marsm6619
@marsm6619 9 лет назад
Урок по обмену с SD картой просто необходим, нашел библиотеку кода (ATmel Studio) для флешек лишь под fat32. Там куча кода разобраться мне как начинающему очень сложно. Ну а если не нужна файловая система, то ищи даташит по SD и вуаля...
@TheWladberlin
@TheWladberlin 4 года назад
@Михаил Тюлькин SD, а не CD
@obuhovmi
@obuhovmi 9 лет назад
Очень интересные уроки! Хотелось бы поработать с трансиверами желательно на 433МГц, так как они дальнобольнее)) В частности интересны SI4432, с ними начал работать но до конца не могу разобраться, они как раз на SPI интерфейсе!
@dronjohnson4835
@dronjohnson4835 7 лет назад
Александр СПАСИБО!!!
@hulapup1
@hulapup1 6 лет назад
Александр,большое спасибо за ваш труд. мне как человеку начинающему изучать микроконтроллеры он полезен
@rw1zk
@rw1zk 9 лет назад
Александр, спасибо. С удовольствием посмотрел бы уроки и с датчиками температуры типа DS18B20, RTC - DS3231, ну и конечно ATMEGA+SD карта (проиграть wav-ки).
@ruslanmarkiv7608
@ruslanmarkiv7608 8 лет назад
Александр Писанец Доброго дня пане Олександре! Після декількох переглядів зрозумів що тут, як кажуть у народі : " Без пів літри не розберешся!" А в моєму випадку без практичного відеоуроку, бо щось поки важко собі уявляти це в теорії! Буду з нетерпінням чекати на практичний відеоурок із якимось розповсюдженим блочком чи датчиком (впринципі нема різниці із яким головне щоб пошвидше)! Ще маю декілька запитань по відеоуроці (можливо забіжу на перед, бо розгляд цих питань планується в наступних відеоуроках по SPI але всетаки задам): 1 мікроконтроллери avr прошиваються по SPI виводах і налаштовані по замовчуванню як "слейв" і після включення їх "мастером " їх по ідеї не мож буде прошити заново без повного витирання, я правильно зрозумів? 2 вивід SS в atmega16 всього один а датчиків і приладів потрібно підключити декілька, як тоді поступити? Якщо вивід SS тільки подає лог. "0" на пристрій яким керують то можна для цього налаштувати любі вільні порти контроллера! Це моє припущення але я незнаю чи воно вірне! 3 SPDR = 10 10 - це довільне число яке може бути змінене ? Їх може бути декілька (чисел) і за кожним з них у программі можна закріпити певну команду?
@p.polunin
@p.polunin Месяц назад
Спасибо большое!
@a_annaev
@a_annaev 8 лет назад
Прочитал комментария, и понял что попал не туда)) уроки просматривают далеко не начинающие)
@a_annaev
@a_annaev 8 лет назад
Уроки отличные !!!!!
@Techn0man1ac
@Techn0man1ac 9 лет назад
Робототехника наше всё.
@АлександрФедянин-х2т
Здравствуйте, Александр. Для экспериментов очень хорошо подходит 4-х проводный вентилятор, то есть снять частоту с тахометра и сгенерировать управление для его вращения.
@ElectroHobby1
@ElectroHobby1 9 лет назад
Молодец!!!Палец вверх!!!
@MrKr1k
@MrKr1k 9 лет назад
Александр, а почему бы не сделать обобщающий урок по подключениям к микроконтроллеру. Т.е. например подключение питания VCC, AVCC, кнопок RESET, подключение кварца, каких нибудь датчиков, какие элементы нужно использовать (например конденсаторы, резисторы и т.п.), объяснить зачем нужно это, как сберечь контроллер от внешних воздействий (как было например в вашем устройстве с LCD). Думаю многим будет полезно. Конечно данная информация была уже в роликах, но тут было бы все в одном ролике. Поможет многим не наступать на грабли при выяснении почему контроллер гонит. Также было бы интересно узнать о том, как сделать развязку портов, т.е. слышал что на некоторых устройствах делают гальваническую развязку портов.
@ZhenyaMorf
@ZhenyaMorf 9 лет назад
в продолжение темы SPI можно было бы описать работу со сдвиговыми регистрами типа 74HC165, 74HC595.
@BarVados
@BarVados Год назад
Здравствуйте, спасибо за видео. Подскажите если залить на МК прошивку работающую с spi можно ли потом будет прошить такой микрокон роллер? Ведь прошивается он тоже через spi
@МаксатМаксутов-и4о
отличный урок
@rudolphsikorskiy18
@rudolphsikorskiy18 7 лет назад
Подскажите почему может в масив пишется received_data[5] ={}; возвращаются такие данные в hex 02 03 04 05 FF ?
@avr_stm_pro2955
@avr_stm_pro2955 3 года назад
Классный канал 👍, но что-то автор забросил его
@vovakorobkov4045
@vovakorobkov4045 9 лет назад
Александр день добрый. Есть нужда разодраться с модулями NRF24L01 (хочу создать сеть из большого кол-ва, причем от первого до последнего сигнал должен пройти по цепи)поделитесь мыслями как это сделать.(nRF24L01+ может работать на одном канале с 6-ю nRF24L01- можно ли больше(10 или 20)?
@АлександрПисанец
+Vova Korobkov Данный урок уже начат там не мало рассказывать, модуль весьма интересен учитывая чену
@ЮраЧулков-д3ж
@ЮраЧулков-д3ж 6 лет назад
Спасибо за труды ваши. Мне бы очень хотелось узнать как можно организовать таймер с регулировкой задержки включения 2х или 3х нагрузок, а также регулированием их продолжительности работы, после чего можно было бы и выключить так же по заданному времени. Заранее спасибо.
@hamidgafforov
@hamidgafforov 6 лет назад
Здравствуйте! Скажите пожалуйста, как можно сделать оконный приложение для микроконтроллера? Заранее Спасибо!
@ВОСТОКДОНЕЦК
@ВОСТОКДОНЕЦК 8 лет назад
Здравствуйте! Александр,а вы не напутали с соединением микроконтроллеров. Может все таки MISO соединить с MOSI???
@DiFroll
@DiFroll 8 лет назад
Александр, а можете подсказать? подключаю дисплей 5110 он строчку выводит с текстом, а когда делаю настройки spi для радио модуля, дисплей перестает что либо выводить на экран
@АлександрПисанец
+Froll Di Так и не подсказать. Я в таких случаях всю алгоритм всей программы за нового пересматриваю. Труд конечно кропотливый, но это и есть отладка.
@DiFroll
@DiFroll 8 лет назад
жду с нетерпением урок по nrf24l01. а может кто то поглядеть почему не работает код приемника?
@bspa4372
@bspa4372 9 лет назад
Расскажите пожалуйста про работу с датчиком DS18B20.
@MrKr1k
@MrKr1k 9 лет назад
Александр, у меня есть вопрос по SPI. Какой должен быть алгоритм при подключении двух модулей SPI? Нужно передавать с каждого модуля то что пришло, в другой модуль. Информация приходит на каждый модуль по 8 байт, например каждые 100 мс. Не будут ли утеряны данные?
@АлександрПисанец
+Nik RU42 Ведущий передает и сразу принимает от другого данные. Ведомом вы должны успеть записать данные для передачи. до того как от ведущего поступят данные.
@MrKr1k
@MrKr1k 9 лет назад
Спасибо
@goodspeedmen
@goodspeedmen 9 лет назад
мне интересен интерфейс ssi и как можно принятые данные по этому интерфейсу перекодировать в инкремент, декремент.
@tankpanzer4152
@tankpanzer4152 9 лет назад
Привет Александр, не мог бы ты сделать урок для работы с датчиком DS18B20?
@АлександрПисанец
+Tank Panzer Давно уже начат, не как не закончю. Постараюсь по быстрей данный урок закончить.
@FasT20021991
@FasT20021991 9 лет назад
+Александр Писанец а будет еще лучше если сделаете урок с применением 2-ух и более датчиков DS18B20 на ATMega8, так как микроконтроллеры я только начал изучать было бы полезно. С одним датчиком разобрался, а вот с двумя, что то не получается желательно конечно на разные порты посадить DS18B20 что бы знать какой где.
@АлександрПисанец
А зачем на порты? можно все датчика на один порт подключить.
@FasT20021991
@FasT20021991 9 лет назад
А разобрать где какой можно будет,чтобы потом каждому из них назначить по кулеру и ШИМом регулировать обороты в зависимости от температуры, если да то я не вижу препятствий. спасибо за Ваше внимание и видео уроки
@ЕвгенийКонобицкий
Добрый час Александр, сделайте пожалуйста урок или посоветуйте микросхему епрома, для хранения образов экрана для цветного дисплея скажем 8 образов по 600Кб, можно конечно и флешку использовать, но помоему енто расточительно. СПАСИБО
@АлександрПисанец
Я как то использовал на 4 мегабайта, но название уже и не помню, в основном все делаю на SD.
@ЕвгенийКонобицкий
Спасибо, сделайте пожалуйста обзор с xmega, до за зверь такой хочу тоже взять помучится.
@ЕвгенийВолошко-ц9ы
Если можно интересует работа на AVR с дисплеями от нокии. А именно вывод текста. Плюс заказал Stm32f4discovery STM32F407 Cortex-M4. Если есть возможность, хотелось бы узнать о Cortex-M4 от ST
@matrossv1556
@matrossv1556 7 лет назад
Для более наглядного понимания хотел собрать в Протеусе схему и вывести что-нить, например, на семисегментный индикатор. В итоге ничего не получилось. У меня возникли вопросы : 1. В видео и в файлах для скачивания есть небольшие отличия в коде. В файлах для скачивания рабочий вариант ? 2. Судя по дебагу происходит все время сбрасывание программы и до прерывания даже не доходит, в чем может быть проблема ? 3. Как еще можно проверить работоспособность вашего кода ? Потому что вы показываете его работу по какому-то хитрому включению 2-х программ. *** PS : пока сам не пронаблюдаешь результат повторенной самостоятельно программы невозможно понять усвоил ты материал или нет. С одной стороны, вроде понятно, а что понятно - непонятно, т.к. не получается проверить.
@АлександрПисанец
Конечно рабочие варианты, именно их и использовал в уроках. Включение происходит на реальном железе используя два компа. Сбрасывание скорей всего происходит если вектора прерывания нет, но тут нужно разбиратся.
@JackSparrow-dn1cu
@JackSparrow-dn1cu 9 лет назад
Управление шаговыми двигателями. Тема была бы очень интересной!
@АлександрФедянин-х2т
Управление 4-х проводным вентиляторм - был бы интересным уроком.
@nickm2186
@nickm2186 9 лет назад
Хотелось бы уроки по работе с GPS и GSM модулями
@ВОСТОКДОНЕЦК
@ВОСТОКДОНЕЦК 8 лет назад
Порт-можно переключить как на вход так и на выход,а вот альтернативные функции порта неизменны!!! MISO (out) -работает только на выход. MOSI-это ВХОД. Это тоже самое как в USART -RXD(приемник) TXD(передатчик).
@АлександрПисанец
MICO - вход для мастера, для ведомого это выход данных. MOSI - выход для мастера, вход для ведомого.
@Nyamchik-0_0
@Nyamchik-0_0 3 года назад
@@АлександрПисанец Окончательно запутали с моси мисо, мне кажется на картинке ошибка у вас
@marsm6619
@marsm6619 8 лет назад
Вот программный кто-то просил #define SPI_MISO PINB & BIT4 #define SPI_SCLK_ON PORTB|=BIT5 #define SPI_SCLK_OFF PORTB&=~BIT5 #define SPI_MOSI_ON PORTB|=BIT3 #define SPI_MOSI_OFF PORTB&=~BIT3 #define LCD_COMMAND_ON PORTB|=BIT1 // date в моем случае с LCD #define LCD_COMMAND_OFF PORTB&=~BIT1 //command в моем случае с LCD void spi_set_for_lcd(void){ DDRB|=BIT1+BIT2+BIT3+BIT5; DDRB&=~BIT4; } byte spi_transfer(byte data){ byte mask,res; for(mask=BIT7; mask > 0; mask >>= 1){ //цикл перебора битов от старшего if (data & mask){ SPI_MOSI_ON;} //¬ыставить бит данных else { SPI_MOSI_OFF;} SPI_SCLK_ON; //»мпульс res
@vovakorobkov4045
@vovakorobkov4045 9 лет назад
День добрый Александр. Закончите пожалуйста про LCD.
@mishafomin3615
@mishafomin3615 9 лет назад
датчик температуры наверно будет проще чем остальные просьбы )). ждем датчик чтоб на одном порту к конкретному обращаться.
@vovakorobkov4045
@vovakorobkov4045 9 лет назад
Можно про NRF24L01 написать по подробней
@MrSEDERIK
@MrSEDERIK 5 лет назад
Миконтролеры?
@mishafomin3615
@mishafomin3615 9 лет назад
коротенький урок по подключению нс595 на spi
@Реди-д4б
@Реди-д4б 9 лет назад
После SPI очень напрашивается NRF24l01
@АлександрПисанец
+Алексей Мельников Уже делаю данный урок :)
@diydiydiy5479
@diydiydiy5479 6 лет назад
Александр Писанец Ожидать в 2018 году организацию работы с nrf24l01?
@Techn0man1ac
@Techn0man1ac 9 лет назад
Вижу Вас Александр забросали идеями для новых видео :)
@АлександрПисанец
+Mr ПоделкинЦ Та да ) материалы не из простых
@Spottysot
@Spottysot 9 лет назад
+Александр Писанец да вы оба красавчики!
@EdwardYamunaque
@EdwardYamunaque 2 года назад
код ссылки не работает
@mishafomin3615
@mishafomin3615 9 лет назад
игтересно 433 мгц передатчики. nrf24l01 интересно. 2 штуки настраиваю а передать не могу между ними ))
@Колючийнонекактус
что означает volatile?
@АлександрПисанец
+Max D Дает понять компилятору что переменую не нужно оптимизироваить. Это если коротко.
@Колючийнонекактус
+Александр Писанец ясно, спасибо. Хочу написать свой портативный осциллограф не знаю с чего начать. Может посоветуете что нибудь почитать?
@АлександрПисанец
А не крутовато для начала ). Посоветовать в рятли чем смогу я таким не заморачивался.
@Колючийнонекактус
+Александр Писанец думаю нет) цели надо ставить максимальные иначе не вижу смысла начинать
@atlantghost7994
@atlantghost7994 6 лет назад
Good SPI Sample для Stm32f10x nxp430 /be good too/
@АндрейРыжий-й2ш
@АндрейРыжий-й2ш 5 лет назад
пне одному кажется что автор вместо слова микроконтроллер - говорит МИГАНТОЛЕР ?
@georgysb
@georgysb 4 года назад
ахаха.. "минкотролеры" - это по белорусски?? xDD
@mishafomin3615
@mishafomin3615 9 лет назад
rs485 игтересно
@kroterabel
@kroterabel 7 лет назад
какой же я всё-таки тупой
@ВалераБородулин-д2ъ
+1 NRF24l01
@АлександрФедянин-х2т
Здравствуйте, Александр. Для экспериментов очень хорошо подходит 4-х проводный вентилятор, то есть снять частоту с тахометра и сгенерировать управление для его вращения. Ну а если сделать его беспроводным, то вообще супер!
@АлександрФедянин-х2т
Для экспериментов очень хорошо подходит 4-х проводный вентилятор, то есть снять частоту с тахометра и сгенерировать управление для его вращения.
@АлександрФедянин-х2т
Здравствуйте, Александр. Для экспериментов очень хорошо подходит 4-х проводный вентилятор, то есть снять частоту с тахометра и сгенерировать управление для его вращения.
@АлександрФедянин-х2т
Управление 4-х проводным вентиляторм - был бы интересным уроком.
@АлександрФедянин-х2т
Здравствуйте, Александр. Для экспериментов очень хорошо подходит 4-х проводный вентилятор, то есть снять частоту с тахометра и сгенерировать управление для его вращения. Ну а если сделать его беспроводным, то вообще супер!
Далее
Лекция 307. Интерфейс SPI
16:23
Просмотров 79 тыс.
лекция 349 Atmega8 интерфейс SPI
15:18
Протокол обмена данными UART
26:56
Лекция 308.  Шина I2C
19:54
Просмотров 104 тыс.