Один из наших сотрудников читает лекции в университете и разрабатывает свои собственные учебные курсы и материалы. У нас на канале уже выкладываются по вторникам и субботам его лекции, а по средам - практические опыты.
Теперь мы также будем выкладывать лабораторные работы по лекциям, которые выполняют его студенты. Вы также можете попробовать свои силы.
В этой статье мы будем публиковать ссылки на лабораторные работы и видео для их выполнения.
Примечание: мы готовы ответить на ваши вопросы, но проверять лабораторные пока не планируем.
Лабораторная работа 1
Документ: https://disk.yandex.ru/i/mN3orS5nYzNQVQ
Видео: https://dzen.ru/video/watch/67bd9ebec8edbf38adf91e31
Лабораторная работа 2 (GPIO)
Документ: https://disk.yandex.ru/i/mfsxklZjJkMSxQ
Видео: https://dzen.ru/video/watch/67c08c855bc61329ddf938d9
Лабораторная работа 3 (UART)
Документ: https://disk.yandex.ru/i/1_3_uLTiuYKAnQ
Видео (теория): https://dzen.ru/video/watch/67c8064fe743424ed80cfb79
Видео (практика): https://dzen.ru/video/watch/67c806c0921b412e0130e23f
Лабораторная работа 4 (Прерывания)
Документ: https://disk.yandex.ru/i/y4RSvOLa25WWIw
Видео (теория): https://dzen.ru/video/watch/67c80ac9c34c123808246b05
Видео (практика): https://dzen.ru/video/watch/67c80c08c7312a63fcae0abc
Лабораторная работа 5 (Таймеры)
Документ: https://disk.yandex.ru/i/WoAk_MA9j8PRLg
Видео (теория): https://dzen.ru/video/watch/67d712d2668f0578ac655569
Видео (практика): https://dzen.ru/video/watch/67d713d122e2ac4055f863bc
Лабораторная работа 6 (I2C)
Документ: https://disk.yandex.ru/i/eWcqDJRRVdLVmw
Видео (теория): https://dzen.ru/video/watch/67dd527f8f49e041acaa7174
Видео (практика): https://dzen.ru/video/watch/67dd540c3423f5609e3a3c64
Лабораторная работа 7 (SPI)
Комментарий автора: Я понял, почему у меня первый раз ID не считался!
В функции SpiInit() я перевожу ногу CS на выход, но не меняю её значение.А какое значение по умолчанию? Ноль! А что такое ноль на CS? Флэшка выбрана! А перед началом работы, все ноги вообще были в Z ссстоянии, поэтому нам через шумы могла уйти случайная команда. И при подаче первой моей команды, будет возвращаться именно результат той случайной.
В общем, в функцию SpiInit() надо добавить строку, которая выдаёт на чип селект единицу. Например
spi->portNSS->BSHR = (1 << spi->pinNSS);
Или вообще вызывать SpiDeselect()
Документ: https://disk.yandex.ru/i/dTtj_7lbgtLmsA
Видео (теория): https://dzen.ru/video/watch/67f0039cdfd1615f2873fe76
Видео (практика): https://dzen.ru/video/watch/67f003f55b9e8846559b87ec